CRootBox
The focus of CRootBox is the simulation of different types of root architecture, and to provide a generic interface for coupling with arbitrary soil/environmental models, e.g., in order to determine the impact of specific root architectures on function.
https://github.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox
Category: Biosphere
Sub Category: Plants and Vegetation
Last synced: about 20 hours ago
JSON representation
Repository metadata
- Host: GitHub
- URL: https://github.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox
- Owner: Plant-Root-Soil-Interactions-Modelling
- License: gpl-3.0
- Created: 2017-06-22T11:19:57.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2025-04-24T08:16:43.000Z (4 days ago)
- Last Synced: 2025-04-25T12:09:47.986Z (3 days ago)
- Language: Python
- Size: 1.31 GB
- Stars: 57
- Watchers: 8
- Forks: 19
- Open Issues: 3
- Releases: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
Hi, I am CPlantBox
I can :
- Create multiple plant structures
- Simulate the carbon transport (coupling with PiafMunch) and water flow inside of the plant
- Simulate the solute transport and water flow in the soil (coupling with DuMux)
Try me 1 click
You can discover CPlantBox with
this web-based application designed for conduct and visualize plant growth simulations. It is part of Xiaoran Zhou's PhD thesis. the source code is avialable at github-xiaoranzhou
Cloud-based notebooks are also available:
build local
semi-automated CPlantBox (with dumux-rosi) installation via python script (recommended)
Linux
This installation method requires ubuntu >= 20.04 and python >= 3.7.
For CPlantBox without the dumux-rosi extension, download the python file "installCPlantBox.py".
Run
sudo apt-get update
sudo apt-get upgrade
[ ! -d 'cpbenv' ] && python3 -m venv cpbenv && source cpbenv/bin/activate || source cpbenv/bin/activate
wget https://raw.githubusercontent.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox/master/installCPlantBox.py
python3 installCPlantBox.py
It will create a "CPB" folder and install inside the dependencies necessary to run CPlantBox.
For CPlantBox with the dumux-rosi extension, download the python file "installDumuxRosi_Ubuntu.py" (based on the dumux installation file).
run
sudo apt-get update
sudo apt-get upgrade
[ ! -d 'cpbenv' ] && python3 -m venv cpbenv && source cpbenv/bin/activate || source cpbenv/bin/activate
wget https://raw.githubusercontent.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox/master/installDumuxRosi_Ubuntu.py
python3 installDumuxRosi_Ubuntu.py
This will create a "DUMUX" folder and install inside the dependencies necessary to run dumux-rosi.
CPlantBox is setup within the virtual environment 'cpbenv'.
Do not forget to reactivate the 'cpbenv' environment when using CPlantBox:
source cpbenv/bin/activate
This script might work on other linux OS but has not been tested.
windows
CPlantBox is currently not available on windows.
Some pointers to setup a linux environment on windows are given on the wiki.
manual linux installation
Clone the repository by running:
git clone --depth 1 -b master https://github.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox.git
Run CMake which configures the CPlantBox libraries by
cmake . && make
in the root folder, and run some Python tutorial examples (see tutorial/latex/PlantBox_RootSytem), e.g
cd tutorial/examples/python
python3 example1a.py
The dependecies are listed in the requirements.txt file.
Installation on the JSC agrocluster
Refer to the wiki:
https://github.com/Plant-Root-Soil-Interactions-Modelling/CPlantBox/wiki/CPlantBox-on-the-J%C3%BClich-Supercomputer-cluster
Folder sructure
/modelparameter
Plant parameter files
/src
CPlantBox C++ codes
/test
Python tests for all CPlantBox classes
/tutorial
learn to use CPlantBox
/experimental
Specific applications (in sub-folders). contrary to scripts in /tutorial
, might not be kept up to date
Code documentation
Create the documentation by running doxygen in the folder
$ doxygen doxy_config
The documentation will be located in the folder /doc. Compile doc/latex/refman.tex to generate the full doxygen documentation in doc/latex/refman.pdf.
Collaboration diagrams give an overview of the code in folder /docs.
Examples
Simulation videos availabe in Youtube Channel https://www.youtube.com/channel/UCPK-pFfpK94jiamgwHxX32Q
Owner metadata
- Name: Plant-Root-Soil-Interactions-Modelling
- Login: Plant-Root-Soil-Interactions-Modelling
- Email:
- Kind: organization
- Description:
- Website:
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/25530913?v=4
- Repositories: 4
- Last ynced at: 2023-02-26T22:15:15.875Z
- Profile URL: https://github.com/Plant-Root-Soil-Interactions-Modelling
GitHub Events
Total
- Create event: 34
- Release event: 2
- Issues event: 4
- Watch event: 8
- Delete event: 22
- Issue comment event: 8
- Push event: 169
- Pull request review event: 1
- Pull request event: 43
- Fork event: 1
Last Year
- Create event: 34
- Release event: 2
- Issues event: 4
- Watch event: 8
- Delete event: 22
- Issue comment event: 8
- Push event: 169
- Pull request review event: 1
- Pull request event: 43
- Fork event: 1
Committers metadata
Last synced: 5 days ago
Total Commits: 1,505
Total Committers: 23
Avg Commits per committer: 65.435
Development Distribution Score (DDS): 0.736
Commits in past year: 187
Committers in past year: 7
Avg Commits per committer in past year: 26.714
Development Distribution Score (DDS) in past year: 0.615
Name | Commits | |
---|---|---|
Daniel Leitner | d****r@s****t | 397 |
m-giraud | 7****d | 387 |
xiaoranzhou | z****r@g****m | 338 |
Daniel Leitner | d****r@f****e | 133 |
Daniel Leitner | d****r@u****t | 114 |
Andrea Schnepf | a****f@f****e | 45 |
magdalena | m****l@f****e | 24 |
annasheck | a****k@o****m | 15 |
Andrea Schnepf | a****f@i****e | 12 |
deepanshukhare | d****e@l****m | 7 |
Guillaume Lobet | g****t@g****m | 7 |
TobiasSelzner | s****z@u****e | 5 |
Arnaud Bouvry | a****y@u****e | 4 |
Dirk Helmrich | d****h@f****e | 4 |
Sibghat Ullah | s****t@g****m | 3 |
Adrien Heymans | a****s@u****e | 2 |
VincentVerbeke | 8****e | 2 |
Mona Giraud | g****1@j****s | 1 |
Dirk Helmrich | d****h@a****e | 1 |
Deepanshu Khare | d****e@f****e | 1 |
Anna Sophia Heck | a****k@i****e | 1 |
ThomasFeron | 3****n | 1 |
shtepan | s****z@g****m | 1 |
Committer domains:
- fz-juelich.de: 5
- ibg3048.ibg.kfa-juelich.de: 1
- alumni.fh-aachen.de: 1
- jwlogin07.juwels: 1
- uclouvain.be: 1
- uliege.be: 1
- uni-bonn.de: 1
- icg-iv-w2k.kfa-juelich.de: 1
- univie.ac.at: 1
- simwerk.at: 1
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 14
Total pull requests: 141
Average time to close issues: about 1 month
Average time to close pull requests: 4 days
Total issue authors: 10
Total pull request authors: 7
Average comments per issue: 2.43
Average comments per pull request: 0.11
Merged pull request: 107
Bot issues: 0
Bot pull requests: 0
Past year issues: 3
Past year pull requests: 32
Past year average time to close issues: about 2 months
Past year average time to close pull requests: 1 day
Past year issue authors: 2
Past year pull request authors: 4
Past year average comments per issue: 2.67
Past year average comments per pull request: 0.13
Past year merged pull request: 30
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- ArnaudBvr (3)
- rarygit (2)
- noemiversluijs (2)
- andrewfullard (1)
- capsulecorplab (1)
- Chiaki59 (1)
- m-ingenbleek (1)
- dhelmrich (1)
- nana784365 (1)
- Murilodsv (1)
Top Pull Request Authors
- m-giraud (127)
- DanielLeitner (7)
- MagdaLa (3)
- ArnaudBvr (1)
- dhelmrich (1)
- annasheck (1)
- m-weigand (1)
Top Issue Labels
- bug (1)
- help wanted (1)
Top Pull Request Labels
Dependencies
- ipython ==8.18.1
- matplotlib ==3.8.2
- matplotlib-inline ==0.1.6
- mpi4py ==3.1.5
- numpy ==1.26.2
- pandas ==2.1.4
- pybind11 ==2.11.1
- pybind11-global ==2.11.1
- scipy ==1.11.4
- vtk ==9.3.0
Score: 7.22983877815125