modfilegen

Generation of Model Files and Simulation

https://github.com/cropmodelingplatform/modfilegen

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.0%) to scientific vocabulary

Scientific Fields

Earth and Environmental Sciences Physical Sciences - 37% confidence
Last synced: 4 months ago · JSON representation ·

Repository

Generation of Model Files and Simulation

Basic Info
  • Host: GitHub
  • Owner: CropModelingPlatform
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 25.2 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed 4 months ago
Metadata Files
Readme Changelog License Citation

README.rst

ModFileGen
==========

.. image:: https://readthedocs.org/projects/modfilegen/badge/?version=latest
   :target: https://modfilegen.readthedocs.io/en/latest/?badge=latest
   :alt: Documentation Status

ModFileGen is a Python package designed to **generate and run model input files for different models** based on a standardized shared database.  
It serves as a bridge between shared datasets and simulation-ready input files for crop models.

Overview
--------

The package enables:

- Generation of model-specific input files from a **unified MasterInput database**
- Support for multiple model types via configuration
- Automation of batch simulations using defined strategies
- Integration with standardized simulation units and metadata

ModFileGen simplifies model interoperability and fosters reproducibility by separating data, configuration, and execution layers.

Features
--------

- 📄 Input file generation for various crop/environmental models
- 🛠️ Flexible support for model templates (JSON, XML, INI, etc.)
- 🗃️ Based on a shared, versioned SQLite or Access database
- 🚀 Batch simulation launcher (optional, model-dependent)
- 🔄 Version tracking and reproducible configurations

Database Structure
------------------

ModFileGen expects data to conform to the **MasterInput** schema (climate, soil, management, etc.).  
It may also use a **ModelsDictionary** schema for model metadata and input requirements.

See the full database specification in the documentation:
`https://modfilegen.readthedocs.io `_

Installation
------------

You can install the package using pip (once distributed via PyPI):

.. code-block:: bash

    pip install modfilegen

Or clone the repository and install locally:

.. code-block:: bash

    git clone https://github.com/CropModelingPlatform/ModFileGen.git
    cd modfilegen
    pip install -e .

Usage
-----

Basic usage:

.. code-block:: python

    from modfilegen.Converter.SticsConverter.sticsconverter import SticsConverter
	from modfilegen import GlobalVariables

	directory_path = "path/to/your/data"
	modeldictionnary_f = directory_path + "/ModelsDictionary.db"
	masterinput_f =  directory_path + "/MasterInput.db"
	GlobalVariables["dbModelsDictionary" ] = modeldictionnary_f     
	GlobalVariables["dbMasterInput" ] = masterinput_f 
	c = SticsConverter()
	c.nthreads = 6
	c.DirectoryPath = directory_path
	c.pltfolder = os.path.join(data,"cultivars","stics")
	result = c.export()

Documentation
-------------

Full documentation is available at:
`https://modfilegen.readthedocs.io `_

Contributing
------------

Contributions are welcome! Please submit issues or pull requests via GitLab.

License
-------

ModFileGen is developed by the **LIMA Team** and distributed under the **MIT License**.  
See the `LICENSE `_ file for details.

Owner

  • Name: CropModelingPlatform
  • Login: CropModelingPlatform
  • Kind: organization

This platform provides methods and tools to advance the crop modeling.

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: >-
  ModFileGenSim : A tool for generating model input files and running Model Ensembles based on a shared database...
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: cyrille_ahmed.midingoyi@cirad.fr
  - given-names: Michel
    family-names: Giner
    email: michel.giner@cirad.fr
    affiliation: CIRAD

repository-code: >-
  https://gitlab.cirad.fr/lima/modfilegensim/
url: 'https://modfilegen.readthedocs.io/en/latest/?badge=latest'
abstract: >-
   A tool for generating model input files and running Model Ensembles based on a shared database..... 
keywords:
  - crop models
  - simulation
  - data management
license: MIT

GitHub Events

Total
  • Push event: 40
  • Pull request event: 16
  • Create event: 3
Last Year
  • Push event: 40
  • Pull request event: 16
  • Create event: 3

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 0
  • Total pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: less than a minute
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: less than a minute
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • cyrillemidingoyi (8)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

Pipfile pypi
  • calendar *
  • numpy *
  • six *
  • xarray *
requirements.txt pypi
  • cdsapi >=0.6
  • cftime *
  • click >=8.1
  • cython *
  • dask *
  • dotmap >=1.3
  • joblib *
  • netCDF4 >=1.6
  • numpy >=1.20
  • pandas >=1.5
  • path.py *
  • pathlib *
  • pyyaml >=6.0
  • requests *
  • six *
  • xarray >=2022.12.0
setup.py pypi