How hard is it to use plant computational models? Ask our students!

How scary are plant models? Students at Université catholique de Louvain have been finding out.
  • 16
  • 36

A guest post by: Xavier DRAYE, Guillaume LOBET, Brieuc RYELANDT, Antoine RUMMENS, Thomas FERON, Gabriel CARESTIA, Timothée , François DUQUESNE, Nicolas DEFFENSE and Fabio CLAPS

The background

For years, a small proportion of the plant science community has been developing and using plant models. Beware of the confusion here: by saying plant models, we are not referring to any model plant (Arabidopsis, maize or Brachypodium, whichever is your favorite), but to computational models of plants. Virtual plants. Not plants born from ATCG’s, but from 0 and 1.

Such plant models have been used to describe the formation, growth and development of plant organs (for instance, root, shoot, fruits or leaves), but also how these organs influence and are influenced by their environment. Scale wise, plant models were create from organ to field scales, making them extremely broad and their potential application numerous.

However, the plant science community as a whole is not a heavy user of plant models. Why is that?

One reason might be that plant models might be scary (although we do not have any hard data to support this claim). Indeed, as soon as you talk to a plant modeller, you might be facing a frightful list of Python eggs, C++ libraries and other Java dependencies. There is no better way to get a computer novice to run the other way. But is it really that hard to use plant models?

The actors

Our story took place during the first semester (Sept-Dec) of the academic year 2017-2018, at the University of Louvain (Belgium), in the Faculty of bioscience engineering. The actors were eight master students (Brieuc, Antoine, Thomas, Gabriel, Timothée, François, Nicolas and Fabio) following the lecture “Systems Biology Modelling” given by Xavier and Guillaume. The students did not have a strong background in programming or computer sciences. They only followed two introductory course to the programming environment MatLab.

The structure of the course was the following: it started with a short general introduction to systems biology, then the students were asked to form 3 groups for the rest of the semester. During the remaining lectures (approx. 20h), each group had the following assignment:

  1. choose an existing, published, biological model;
  2. learn the biological theory on which the model was built;
  3. Learn how to install and run the models and;
  4. Answer a simple question using the model.

In addition to these tasks, each group also had to:

  1. Use Github to store their codes and collaborate
  2. Use Twitter to communicate about biological models

What we did

Three different model were chosen by the different groups: OpenSimRoot (Postma et al. 2017), LPy (Boudon et al. 2012) and RootBox (Leitner et al. 2010).


OpenSimRoot is a functional-structural root model that is combined with a soil model to simulate water and nutrients uptake. It allows the implementation of mini models. Our experience with this model was at first difficult, because we needed to understand how to run a simulation, how to include the mini models, what we can easily change in the parameters. But with a few hours of testing, we were able to play with it and perform basic simulations, with contrasting nitrogen levels.

More results are available on the wiki page of the group:

The twitter page of the group was: @biomodelisation

Example of outputs obtained using OpenSimRoot
Figure 1: Example of outputs obtained using OpenSimRoot


RootBox is a model coded in Matlab. It is designed to easily create time dependent branched geometries of growing plant root systems. It has been a real pleasure to work on a model like this one. The entire code was freely available, and the creators took time to answer our questions. A graphical user interface allowed us to take our first steps with the model. The comments in the code helped us to enter deeper into the program.

As future agronomists, we are very interested in plant parasites. This project has allowed us to understand how certain resistance to pathogens could work. We were able to use Rootbox to model a nematode tolerant root beet system, and use the model as a proof of concept to explain this resistance.

Results from RootBox
Figure 2: Example of outputs obtained using RootBox. A. Root length density map for all roots. B. Root length density map for root younger than 3 days-old.

More results are available on the wiki page of the group:

The twitter page of the group was: @BioModelling


L-py is a model based on the L-System (a re-writing language, well suited for fractal structures) and coded in Python.

Our goal was to use L-py to simulate light interception of a hop plant and get more insight on the functional importance of shoot traits. Our first task was to learn the L-System-based language. Once we got a feeling of how the software worked, it was pretty easy to create basic plant model. The next step in our project was to simulate a Hop plant. We were thus confronted with the difficulties to represent the complex physiology of a plant with simple programing rules. Finally, the idea was to integrate our plant in a light simulating module, so we could evaluate the effect of light on the hop plant.

Results from LPy
Figure 3: Example of outputs obtained using LPy. Left: Visual output of the simulated hop plant. Right: LPy coding interface.

The challenges we faced

The three groups successfully managed to run the model of their choice, and to make some basic simulation. However, not everything was easy and smooth. Over the course of the project, the different groups had to face different challenges. We can summarize these in three main categories: installing the model, using the model and parameterizing the model.

Installing and running the model

The first step, and the first opportunity for head scratching, is the installation of the model on your own computer. Each model, regardless on its complexity, has its own programming language and running environment. While a fair proportion of plant biologists will find their way around R or Python, things can get quickly messy when it comes to Java (which version again?), C++ (which compiler should I use?) or Matlab (…I do not have a licence!). Then comes the loading of libraries, tuning of running environment, loading of more libraries and incompatible version. And, let’s be honest, the documentation for these types of issues is usually lacking and often confusing.

Understanding the model

Once you passed the first step and the model is running, then comes the point where you need to understand it… Which variable, in which file should we change? How should I format my parameter file? Where are the outputs and how to access them? How can I run the model in batch mode to make thousands of simulation? As for the installation, user guides for plant models are often too light and do not allow users to fully explore their capabilities.

That said, for all three projects we contacted the authors of the models, and all were very helpful.

Parametrizing the model

Finally, once you installed the model and know how to use it, it is time to ask a biological, question. And with that question comes the need for solid experimental data. While the literature is full of qualitative data and figures, raw quantitative data needed for modelling are most of the time missing. Knowing that nematodes are moving down in the soil as the season advances is not enough. To use such information in the model, we need to know when that migration starts, where, and how fast. We need numbers to feed the simulations. And these numbers are often missing.

What we learned

The main thing we learned is probably that modelling is not as hard as it seems. Although we encountered some difficulties along the way, each group managed to do some basic simulations and to answer some basic biological questions – and all of this without having a strong computational background. Maybe a taste for computers, but that is all.

We also learned that most of the difficulties we encountered could be addressed (at least partially) by contacting the model developers themselves. They were all happy to take our questions and quick to answer them.

Finally we conclude: once we passed the initial steep learning curve, we learnt that modelling plants can be fun.

About the Authors

Nicolas DeffenseNicolas Deffense
Nicolas is passionate about nature and medicine. He is currently finishing his bioengineering studies with a specialization in modeling at UCL (Louvain-la-Neuve,Belgium). His desire is to use computer tools to improve biomedical techniques. In the same way as climate change, the use of models seems to be a good way to better understand the human body.

Fabio ClapsFabio Claps
Fabio is a master student of agricultural science at Università di Torino. He is currently on an Erasmus exchange at Université catholique de Louvain.

Antoine RummensAntoine Rummens
Antoine is currently studying agronomic sciences at the UCL in Belgium. His main centers of interest are pictorial arts, especially the modern period but also the Italian Renaissance, economics and field hockey. In his spare time, reading occupies his mind.

Thomas FeronThomas Feron
Thomas is a 22-year-old student passionate about applied mathematics and modeling. He started studying bioengineering at UCL to understand how nature works and to get the tools to protect it

Francois DuquesneFrancois Duquesne
François is a student at Université catholique de Louvain mastering in Bioengineering. He is passionate about the environment and computer sciences. His goal is to contribute to the comprehension of natural processes as well as the protection and conservation of Nature.

Brieuc ReylandtBrieuc Reylandt
Brieuc is a student in bioscience engineering at UCLouvain (Belgium). He’s interested in the sciences in general, but also in society’s problems like energy and climate change. He plays guitar during his free time.

Gabriel CarestiaGabriel Carestia
Gabriel is a first-year master student in bioengineering at the University of Louvain-la-Neuve. He have always been passionate about life sciences and mathematics. He naturally chose studies focused on system modeling in agronomy and the interpretation of these models to solve various problems.

Timothée ClémentTimothée Clément
Timothée is a student in bioengineering in agronomic sciences, option “analysis and management of information” at UCL (Belgium). He is an animator in youth movements and is part of a colocation in Louvain-la-neuve leading local projects for sustainable development (“kot planete terre”).

Guillaume LobetGuillaume Lobet
Guillaume is an Assistant Professor between the Forschungszentrum Jülich and the Université catholique de Louvain. The aim of his research is (i) to understand how various signals that carry information are interacting and being conveyed and integrated at the plant level and (ii) to amplify discrete physiological knowledge into functional plant processes. All of that using Functional Structural Plant Models.

Xavier DrayeXavier Draye
Xavier Draye is Professor of Crop Physiology and Plant Breeding at the Université catholique de Louvain. He uses a combination of experimental and modelling (FSPM) strategies, from the organ to the plant scales, to understand the dynamics of root system architecture and hydraulics. He interacts closely with soil hydrologists and molecular biologists to develop novel views of crop water use that integrate notions of growth, development, root hydraulic properties and soil water dynamics. Xavier is also active in the development of root image analysis tools and standards (RSML) and in the development of phenotyping systems. He contributed to the DROPs project and is involved in the modelling section of the EMPHASIS infrastructure.


Postma, J. A., Kuppe, C., Owen, M. R., Mellor, N., Griffiths, M., Bennett, M. J., … Watt, M. (2017). OpenSimRoot: widening the scope and application of root architectural models. New Phytologist, 215(3), 1274–1286.

Boudon, F., Pradal, C., Cokelaer, T., Prusinkiewicz, P., & Godin, C. (2012). L-Py: An L-System Simulation Framework for Modeling Plant Architecture Development Based on a Dynamic Language. Frontiers in Plant Science, 3.

Leitner, D., Klepsch, S., Bodner, G., & Schnepf, A. (2010). A dynamic root system growth model based on L-Systems. Plant and Soil, 332(1-2), 177–192.

  • 16
  • 36