VirtualLeaf is a cell-based computer modeling framework for simulating plant tissue morphogenesis.
VirtualLeaf is a cell-based tissue simulation software written in C++. It simulates tissue dynamics through dicreet steps, minimizing the system energy using a Monte-carlo approach. This method generates realistic cell shapes and emergent tissue behaviors, allowing users to model a wide range of developmental proccesses in plants.
At its core, cell shape is defined through a balance between turgor pressure, which drives expansion, and cell wall tension, which restricts it. By modeling cell walls as springs that resist the internal pressure, a mathematical description for the systems energy, known as the Hamiltonian, can be obtained. This expression can also be extended to include additional constraints, that the user defines (e.g. cell shape).
VirtualLeaf also supports compartmentalized ODE-based simulations, enabling interactions between biochemical processes and physical properties of cells.
These features make VirtualLeaf a powerful tool for exploring and understanding how plants grow and develop. Give it a try!
Currently VirtualLeaf requires you to manually compile it yourself (don't worry, we'll guide you through it). We plan on distributing a pre-compiled version in the future.
VirtualLeaf requires the open source QT library, which requires a free QT account.
- Register for a QT account here.
- Download the appropriate QT online installer for your operating system.
Before proceeding with the QT installation you may require additional packages. Run:
sudo apt install libxcb-icccm4 libxkbcommon-x11-0 libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-shape0
Now either follow the installation wizard or install QT via the command line (replace PATH_TO_ONLINE_INSTALLER
with the actual path`:
./PATH_TO_ONLINE_INSTALLER install qt6.8.0-essentials-dev
- Log in with your QT credentials
- accept a bunch of licenses and follow the installation prompts
- Remember the installation directory (default on Windows is
C:\QT
, on Linux~/QT
) - It's normal to get some installation errors; it's usually fine to ignore them.
- Locate the folders that contain the
qmake
andming32-make
executables- Look in
YOUR_QT_DIRECTORY/QT_VERSION/mingw_64/bin/
- Alternatively, check
YOUR_QT_DIRECTORY/Tools/mingwSOMEVERSION/bin
- Look in
- Add the directories your PATH environment (see here)
- Re-launch your command line to apply the changes
- Verify that everything is correctly installed by running:
qmake --version mingw32-make --version
Now you should be all set for the installation!
- Verify
make
andg++
are installed:If missing installg++ --version make --version
make
andg++
via:sudo apt install make g++
- Locate the directory with the
qmake
executable. Should be located inYOUR_QT_DIRECTORY/QT_VERSION/gcc_64/bin/
. - Add the directory to your PATH (see here)
- To apply changes re-launch your command line or run
source ~/.bashrc
- Verify that everything is correctly installed by running:
g++ --version make --version qmake --version
Now you should be all set for the installation!
-
Download the latest VirtualLeaf version:
- Clone the repository, or download the zip file here for the version 2.0.0 release.
- If you downloaded the zip file, extract it into a folder of your choice.
-
Navigate to the VirtualLeaf folder. The folder structure should look like this:
└───VirtualLeaf2021-main ├───.github (contains GitHub workflows) │ └─ ├───data (contains files for example models) │ └─ ├───doc (contains documentation) ├───lib (contains required 3rd party packages) │ ├─ └───src (contains the actual source code) ├─
-
Navigate to the
src
folder and build VirtualLeaf:Run:
qmake mingw32-make -f Makefile
Run:
qmake make -f Makefile
If the installation fails you may be missing the OpenGL library. Install via:
sudo apt install freeglut3-dev
After the build process is complete, you can find the VirtualLeaf executable in the bin
folder:
└───VirtualLeaf2021-main
├───.github (contains GitHub workflows)
│ └─
├───data (contains files for example models)
│ └─
├── bin
│ ├─ VirtualLeaf
├───doc (contains documentation)
├───lib (contains required 3rd party packages)
│ ├─
└───src (contains the actual source code)
├─
You can now run VirtualLeaf!
Executing the VirtualLeaf executeable should bring up the GUI. Accept the license agreement and a base model should already be preloaded.
You can start and stop simulations by pressing spacebar. You can also select one of the different preinstalled models by opening the menu at the top:
In this example we select the Lateral Root Growth
model, which should now automatically be loaded:
Starting the simulation and letting it run for a bit generates something that should look similar to this:
Yay!
Roeland Merks Roeland.Merks@sysbio.nl
Richard van Nieuwenhoven nieuwenhoven@iap.tuwien.ac.at
Ruth Großeholz ruth.grosseholz@maastrichtuniversity.nl
Michael Guravage M.A.Guravage@cwi.nl
This project is licensed under the GPL-2.0 License - see the license file for details
If you use VirtualLeaf in a scientific publication please cite one of the following: