PyCrop2ML
A free, open-source library for defining and sharing CropML models used to represent the various biological processes involved in crop models.
https://github.com/agriculturalmodelexchangeinitiative/pycrop2ml
Category: Consumption
Sub Category: Agriculture and Nutrition
Keywords
crop-model program-transformation source-to-source transpiler
Keywords from Contributors
crop soil
Last synced: about 20 hours ago
JSON representation
Repository metadata
CropML Python library
- Host: GitHub
- URL: https://github.com/agriculturalmodelexchangeinitiative/pycrop2ml
- Owner: AgriculturalModelExchangeInitiative
- License: other
- Created: 2018-01-18T15:18:06.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-03-03T14:47:00.000Z (about 2 months ago)
- Last Synced: 2025-04-19T03:04:04.197Z (9 days ago)
- Topics: crop-model, program-transformation, source-to-source, transpiler
- Language: Python
- Homepage:
- Size: 68.3 MB
- Stars: 19
- Watchers: 4
- Forks: 18
- Open Issues: 23
- Releases: 2
-
Metadata Files:
- Readme: README.rst
- Changelog: HISTORY.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE
- Citation: CITATION.cff
- Authors: AUTHORS.rst
README.rst
========= Pycrop2ml ========= .. image:: https://readthedocs.org/projects/pycrop2ml/badge/?version=latest :target: http://pycrop2ml.readthedocs.io/en/latest/ :alt: Documentation Status .. image:: https://github.com/AgriculturalModelExchangeInitiative/PyCrop2ML/actions/workflows/codeql-analysis.yml/badge.svg :alt: CodeQL Status :target: https://github.com/AgriculturalModelExchangeInitiative/PyCrop2ML/actions/workflows/codeql-analysis.yml .. image:: https://anaconda.org/amei/pycropml/badges/platforms.svg :target: https://anaconda.org/amei/pycropml .. image:: https://anaconda.org/amei/pycropml/badges/version.svg :target: https://anaconda.org/amei/pycropml .. {# pkglts, doc .. #} A Python library to generate components from Crop2ML declarative language. For more information, refer to `the documentation`__. .. __: http://pycrop2ml.readthedocs.io/en/latest/ Installation ============ Using conda ~~~~~~~~~~~ conda install -c amei -c openalea3 -c conda-forge pycropml Usage ===== From Platforms to Crop2ML ~~~~~~~~~~~~~~~~~~~~~~~~~ cyml -c name_of_the_component_repository absolute_path_of_the_output source_language_or_platform From Crop2ML to Platforms ~~~~~~~~~~~~~~~~~~~~~~~~~ cyml -p name_of_the_Crop2ML_package target_language_or_platform
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit. # Visit https://bit.ly/cffinit to generate yours today! cff-version: 1.2.0 title: >- PyCrop2ML : Python library to exchange and reuse crop model compponents between languages and platforms message: >- If you use this software, please cite it using the metadata from this file. type: software authors: - given-names: Cyrille Ahmed family-names: Midingoyi affiliation: CIRAD email: [email protected] - given-names: Christophe family-names: Pradal email: [email protected] affiliation: CIRAD orcid: 'https://orcid.org/0000-0002-2555-761X' - given-names: 'Andreas ' family-names: Enders affiliation: >- Institute of Crop Science and Resource Conservation (INRES), University of Bonn, Bonn, Germany, - given-names: Davide family-names: Fumagalli affiliation: Institute for Environment and Sustainability - given-names: Patrice family-names: Lecharpentier affiliation: INRAE - given-names: 'Hélène ' family-names: Raynal affiliation: INRAE - given-names: 'Marcello ' family-names: Donatelli affiliation: CREAA - given-names: Ioannis N. family-names: Athanasiadis affiliation: 'Wageningen University, Wageningen, The Netherlands' - given-names: 'Cheryl ' family-names: Porter affiliation: >- Agricultural & Biological Engineering, University of Florida, Gainesville, USA - given-names: 'Gerrit ' family-names: Hoogenboom affiliation: >- Agricultural & Biological Engineering, University of Florida, Gainesville, USA - given-names: 'Fabio ' family-names: Oliveira affiliation: >- Agricultural & Biological Engineering, University of Florida, Gainesville, USA - given-names: 'Dean ' family-names: Holzworth affiliation: 'CSIRO Agriculture and Food, Toowoomba, Australia' - given-names: Pierre family-names: Martre affiliation: INRAE email: [email protected] repository-code: >- https://github.com/AgriculturalModelExchangeInitiative/PyCrop2ML url: 'https://crop2ml.org' abstract: >- The increasing impact of climate change and variability on food security and agriculture, and the need for agroecological transition require improving the performance of crop simulation models and to model new biophysical processes to tackle new challenges. Recently, the Agricultural Models Exchange Initiative (AMEI) proposed Crop2ML, an open-source modeling framework for exchanging and reusing crop model components between modeling platforms. This framework provides a unified description of model components at a high level of abstraction based on shared concepts, lifting constraints of modeling platforms through an automatic system that transforms high-level models into platform-compliant components. This paper presents an approach based on reverse engineering to automatically extract and transform meta-information and algorithms of existing crop model processes into a platform-independent model component. A search algorithm using Crop2ML concepts, and a many-to-one transformation system was adopted as the main reverse engineering techniques to produce high-level models. The system consists in parsing the codebase of model components from different high-level languages (Python, R, Java, C++, C#, and Fortran) using the ANother Tool for Language Recognition (ANTLR) parser generator and processing the generated syntax trees to produce the various model implementations. It is implemented and evaluated on three crop model components: an energy balance model provided by BioMA platform and two soil temperature models provided by SIMPLACE and DSSAT platforms. We demonstrated the extensibility of our approach with the STICS, OpenAlea, and SiriusQuality modeling platforms. CyMLTx is a significant contribution towards the interoperability of crop modeling platforms and the reuse of crop model components beyond programming languages. It will thus contribute to foster model intercomparison and improvement activities. keywords: - Crop2ML - AMEI - Crop Model - DSSAT - SimPlace - STICS - APSIM - OpenAlea - BioMA - RECORD license: CECILL-C
Owner metadata
- Name: AgriculturalModelExchangeInitiative
- Login: AgriculturalModelExchangeInitiative
- Email:
- Kind: organization
- Description:
- Website:
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/21251662?v=4
- Repositories: 7
- Last ynced at: 2023-03-05T12:59:40.641Z
- Profile URL: https://github.com/AgriculturalModelExchangeInitiative
GitHub Events
Total
- Issues event: 11
- Watch event: 1
- Delete event: 5
- Issue comment event: 7
- Push event: 26
- Pull request review event: 3
- Pull request event: 35
- Fork event: 1
- Create event: 4
Last Year
- Issues event: 11
- Watch event: 1
- Delete event: 5
- Issue comment event: 7
- Push event: 26
- Pull request review event: 3
- Pull request event: 35
- Fork event: 1
- Create event: 4
Committers metadata
Last synced: 6 days ago
Total Commits: 603
Total Committers: 11
Avg Commits per committer: 54.818
Development Distribution Score (DDS): 0.297
Commits in past year: 59
Committers in past year: 4
Avg Commits per committer in past year: 14.75
Development Distribution Score (DDS) in past year: 0.424
Name | Commits | |
---|---|---|
cyrillemidingoyi | a****i@y****r | 424 |
pradal | c****l@i****r | 145 |
Michael Berg-Mohnicke | m****g@z****e | 14 |
Cyrille Ahmed MIDINGOYI | m****y@S****N | 8 |
lorenefifame | l****e@g****m | 3 |
Nicolas Brichet | n****t@i****r | 3 |
Cyril | c****l@l****n | 2 |
Teiki RAIHAUTI | r****i@s****n | 1 |
Nicolas Brichet | n****t@i****r | 1 |
MIDINGOYI | M****I@l****n | 1 |
Cyrille Ahmed MIDINGOYI | m****y@s****n | 1 |
Committer domains:
- supagro.inra.lan: 3
- lps-cotonou.supagro.inra.lan: 1
- inrae.fr: 1
- lps-moustache.supagro.inra.lan: 1
- inra.fr: 1
- zalf.de: 1
- inria.fr: 1
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 36
Total pull requests: 120
Average time to close issues: almost 2 years
Average time to close pull requests: 19 days
Total issue authors: 6
Total pull request authors: 5
Average comments per issue: 0.89
Average comments per pull request: 0.13
Merged pull request: 115
Bot issues: 0
Bot pull requests: 1
Past year issues: 9
Past year pull requests: 37
Past year average time to close issues: about 8 hours
Past year average time to close pull requests: 1 day
Past year issue authors: 4
Past year pull request authors: 4
Past year average comments per issue: 0.56
Past year average comments per pull request: 0.08
Past year merged pull request: 36
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- pradal (19)
- orianebro (9)
- cyrillemidingoyi (4)
- plecharpent (2)
- hol353 (1)
- PierrickRoyer (1)
Top Pull Request Authors
- cyrillemidingoyi (92)
- pradal (20)
- bergm (6)
- dependabot[bot] (1)
- TeikiRaihauti (1)
Top Issue Labels
- enhancement (3)
Top Pull Request Labels
- dependencies (1)
Dependencies
- Cython *
- IPython *
- antlr4-python3-runtime *
- graphviz *
- nbformat *
- nbsphinx *
- networkx *
- numpy *
- path.py *
- pydot *
- pytest *
- pytest-mock *
- pyyaml *
- six *
- sphinx *
- unyt *
- actions/checkout v3 composite
- github/codeql-action/analyze v2 composite
- github/codeql-action/autobuild v2 composite
- github/codeql-action/init v2 composite
- actions/checkout v3 composite
- haya14busa/action-cond v1 composite
- openalea/action-build-publish-anaconda v0.1.4 composite
- continuumio/conda-ci-linux-64-python3.7 latest build
Score: 6.135564891081739