GCBM implementation in Colombia, initially with a focus on DOM modelling. This project is based on the Standalone Template for the GCBM, downloaded from https://carbon.nfis.org/cbm
Disclaimer : The calculations performed in this repository are not official and do not represent the Government of Colombia in any way.
Table of Contents
- Technology Stack
- Installation and usage instructions on Windows
- Custom configuration for Colombia
- Docker-based setup
- Contributing
- FAQ and Other Questions
- Maintainers Reviewers Ambassadors Coaches
- License
-
Clone the repository
-
Download the installation tools from "releases" (https://github.com/moja-global/GCBM.Colombia/releases/tag/install_tools) and unzip them into
Standalone_GCBM\tools
folder -
Follow the installation instructions, located in
Standalone_GCBM\README.md
-
Modify the
Standalone_GCBM\run_all.bat
file to activate or deactivate the custom parameter modifications (explained below), as default, all custom configurations are enabled -
Execute
run_all.bat
This codebase was tested using a Windows 10 system, the Standalone_GCBM\README.md
file contains further explanation on the GCBM usage, and tutorials on the model can be found in the moja.global Youtube Channel
This implementation of the GCBM includes several parameter changes, that were included to adapt the model to Colombia´s local conditions
The Standalone_GCBM\run_all.bat
file includes all the steps that were taken to adapt the model, as default, all parameter changes are enabled.
-
A custom Generic Tropical species in created (
input_database\add_species_vol_to_bio.py
) using a linear volume to biomass conversion factor and proportions of stem, bark, foliage and branges extracted from local literature. -
A custom set of root parameters (to convert from AGB to BGB) is applied (
input_database\modify_root_parameters.py
) -
A set of decay parameters that was compiled from the scientific literature (
input_database\custom_parameters\decay parameters.py
) and is used to mofidy the default ones (input_database\modify_decay_parameters.py
) -
A sensitive turnover parameter (tree mortality) was modified (
input_database\modify_turnover_parameters.py
) -
The disturbance regime of the spinup procedure was changed to "Clear-cut with slash-burn" every 15 years (
input_database\modify_spinup_parameters.py
) to refect the historic deforestation of tropical areas in Colombia, for agricultural purposes.
Steps 3, 4 and 5 can be enabled/disabled in the run_all.bat
file to perform a sensitivity analysis
-
Clone the
docker-setup
branch of GCBM.Colombia using the commandgit clone -b docker-setup https://github.com/moja-global/GCBM.Colombia
-
Navigate into
GCBM.Colombia
cd GCBM.Colombia
-
Use docker-compose to build the image
docker-compose up -d
-
Run the container using the command
docker exec -it gcbm-colombia /bin/bash
-
Inside the running docker container, run
cd /server/gcbm_project
-
Start the simulation using
/opt/gcbm/moja.cli --config_file gcbm_config.cfg --config_provider provider_config.json
If there are existing images cached on your machine you may need to docker pull ghcr.io/moja-global/rest_api_gcbm:master
and build the container using docker-compose -d --force-recreate
moja global welcomes a wide range of contributions as explained in Contributing document and in the About moja-global Wiki.
This project follows the all-contributors specification. Contributions of any kind welcome!
Before you create a Pull Request, please check whether your commits comply with the commit conventions used in this repository.
When you create a commit we kindly ask you to follow the convention
category(scope or module): message
in your commit message while using one of
the following categories:
feat / feature
: all changes that introduce completely new code or new featuresfix
: changes that fix a bug (ideally you will additionally reference an issue if present)refactor
: any code related change that is not a fix nor a featuredocs
: changing existing or creating new documentation (i.e. README, docs for usage of a lib or cli usage)build
: all changes regarding the build of the software, changes to dependencies or the addition of new dependenciestest
: all changes regarding tests (adding new tests or changing existing ones)ci
: all changes regarding the configuration of continuous integration (i.e. github actions, ci system)chore
: all changes to the repository that do not fit into any of the above categories
If you are interested in the detailed specification you can visit https://www.conventionalcommits.org/
We follow the convention [type/scope]
. For example fix/lint-error
or docs/component-api
. type
can be either docs
, fix
, feat
, build
, or any other conventional commit type. scope
is just a short id that describes the scope of work.
For the developer environment setup, project structure, best practices etc. you can go through the Development Notes here..
Find more comprehensive details about Moja Global Contributing Guidelines here.
- You can find FAQs on the Wiki.
- If you have a question about the code, submit user feedback in the relevant repository
- If you have a general question about a project or repository or moja global, join moja global and
- submit a discussion to the project, repository or moja global team
- submit a message to the relevant channel on moja global's Slack workspace.
- If you have other questions, please write to info@moja.global
The following people are Maintainers Reviewers Ambassadors or Coaches
moja global |
Maintainers review and accept proposed changes
Reviewers check proposed changes before they go to the Maintainers
Ambassadors are available to provide training related to this repository
Coaches are available to provide information to new contributors to this repository
This project is released under the Mozilla Public License Version 2.0.