DVMDOSTEM v0.8.3

DVMDOSTEM v0.8.3: a terrestrial ecosystem model designed to represent arctic, boreal and permafrost ecosystem dynamics - Published in JOSS (2025)

https://github.com/uaf-arctic-eco-modeling/dvm-dos-tem

Science Score: 100.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
    Found 1 DOI reference(s) in JOSS metadata
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    10 of 31 committers (32.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

arctic boreal carbon carbon-cycling cryosphere ecosystem-modeling fire-dynamics permafrost permafrost-dynamics soil-thermal-dynamics terrestrial-ecosystem-modeling vegetation-dynamics

Keywords from Contributors

mesh

Scientific Fields

Political Science Social Sciences - 90% confidence
Last synced: 4 months ago · JSON representation ·

Repository

A process based Dynamic Vegetation, Dynamic Organic Soil, Terrestrial Ecosystem Model.

Basic Info
Statistics
  • Stars: 23
  • Watchers: 13
  • Forks: 24
  • Open Issues: 139
  • Releases: 13
Topics
arctic boreal carbon carbon-cycling cryosphere ecosystem-modeling fire-dynamics permafrost permafrost-dynamics soil-thermal-dynamics terrestrial-ecosystem-modeling vegetation-dynamics
Created over 13 years ago · Last pushed 4 months ago
Metadata Files
Readme License Citation

README.md

README for dvm-dos-tem

DOI Slack

The dvm-dos-tem (dvmdostem) model is a process based bio-geo-chemical ecosystem model that focuses on C and N cycles, vegetation dynamics and soil thermal dynamics in high latitude ecosystems.

For more information see the User Guide.

For questions and to get involved please see the Github Issues and Github Discussions.

[!NOTE] Whats with the name? dvm-dos-tem is short for "Dynamic Vegetation [Model] Dynamic Organic Soil Terrestrial Ecosystem Model". Orignally the model was simply "TEM", and as more logic and capabilities have been added, the name has grown. We still frequently use simply "TEM" because it is less cumbersome for writing and typing. In most context TEM, dvmdostem, dvm-dos-tem, DVM-DOS-TEM and DMVDOSTEM are synonomous and can be used interchangably.

Quickstart

For users who have Docker and Git installed and some familiarity with the command line.

More details are available in the User Guide - Basic Model Setup and Run.

[!TIP] These instructions should work for users with Podman rather than Docker, but several additional steps may be necessary to ensure that Podman can run with non-root access. See this issue for more information.

The settings shown here will use the input data that is shipped with the code in the repository's demo-data/ directory. The run will output a single variable (GPP), and will run for 2 pixels.

Clone the repository and change into the directory:

$ git clone https://github.com/uaf-arctic-eco-modeling/dvm-dos-tem.git
$ cd dvm-dos-tem

Make yourself locations for input data and your modeling workflows. We don't actually use the input directory for this quickstart, but creating it and setting the env variable below prevents some warnings.

$ mkdir -p /home/whoever/my-stuff/input
$ mkdir -p /home/whoever/my-stuff/workflows

On some systems you will need to make Docker usable by non-root users. See here.

Build Docker images. For this demo we only build 2 of the images. For your needs you might want to build the other images. See ./docker-build-wrapper.sh --help for more info.

$ ./docker-build-wrapper.sh cpp-dev
$ ./docker-build-wrapper.sh dev

Setup your environment variables V_TAG, DDT_INPUT_CATALOG, and DDT_WORKFLOWS. You can do this in a .env file, your .bashrc, or by exporting them to your shell. For example using the .env file:

$ echo "DDT_INPUT_CATALOG=/home/whoever/my-stuff/input" >> .env
$ echo "DDT_WORKFLOWS=/home/whoever/my-stuff/workflows" >> .env
$ echo "V_TAG=$(git describe)" >> .env

Start the Docker containers:

$ docker compose up -d dvmdostem-dev

Obtain a shell in the container:

$ docker compose exec dvmdostem-dev bash

Compile the code:

develop@56ef79004e31:/work$ make

Setup a working directory for your model run and change into it. The setup_working_directory.py script bootstraps a new directory to hold your model run. This includes a few configuraiton files and a folder for the outputs.

devleop@56ef79004e31:/work$ setup_working_directory.py --input-data-path demo-data /data/workflows/sample_run
devleop@56ef79004e31:/work$ cd /data/workflows/sample_run

Adjust run mask, config, outputs as necessary. The default settings should run 1 or 2 pixels and produce outputs for GPP. There are more tools provided in the scripts/ directory for working with the config file, run mask, output specificaitons and parameters.

Start the model run:

develop@56ef79004e31:/data/workflows/sample_run$ ./dvmdostem --log-level monitor -p 100 -e 1000 -s 250 -t 115 -n 85

Visualize run:

develop@56ef79004e31:/data/workflows/sample_run$ /work/scripts/viewers/plot_output_var.py --yx 0 0 --file output/GPP_yearly_tr.nc

GPP_plot_output_var

Testing and Continuous Integration (CI)

This project has a very basic CI workflow implemented using Github Actions. When a pull request is made to the master branch, an action is run that checks out the code, builds one of the Docker images, compiles the dvmdostem binary and runs the model using the demo data for a short number of years. This test does not confirm any of the scientific aspects of the model and does not exercise any of the supporting pre- and post-processing tools. Extending and improving the CI coverage remains an open project. We would like for future development to improve overall test coverage and setup more actions to run the tests. For more information about the testing and CI, see the Testing and Deployment of the User Guide.

[!WARNING] Sept 2022 - We are in the process of updating the entire documentation system. There is still info scattered across this README, the wiki, a Google Doc and the Sphinx system but we are working on consolidating the info into primarily the Sphinx system (the User Guide).

Owner

  • Name: uaf-arctic-eco-modeling
  • Login: uaf-arctic-eco-modeling
  • Kind: organization

JOSS Publication

DVMDOSTEM v0.8.3: a terrestrial ecosystem model designed to represent arctic, boreal and permafrost ecosystem dynamics
Published
July 08, 2025
Volume 10, Issue 111, Page 7667
Authors
Tobey B. Carman ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Hélène Genet ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Ruth A. Rutter ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Elchin Jafarov ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Eugénie Euskirchen ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Ben Maglio ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Joy Clein ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Valeria Briones ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Andrew L. Mullen ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Heather Greaves ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
A. D. McGuire ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Fengming Yuan ORCID
Environmental Science Division and Climate Change Science Institute, Oak Ridge National Laboratory, Oak Ridge, TN 37831
Chu-Chun Chang ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Joshua M. Rady ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Doğukan Teber ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Brendan M. Rogers ORCID
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Trevor Smith
Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA
Hannah Mevenkamp ORCID
Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA
Mark J. Lara ORCID
Department(s) of Plant Biology and Geography, University of Illinois Urbana-Champaign, Urbana, IL 61801
Qianlai Zhuang ORCID
Department of Earth, Atmospheric, and Planetary Science, Purdue University, West Lafayette IN 47907 USA
Shuhua Yi ORCID
Laboratory of Herbage Improvement And Agro-ecosystem, Lanzhou University, Lanzhou 730000, Gansu Province, P.R. China
Editor
Mengqi Zhao ORCID
Tags
C++ ecology cryosphere biogeochemistry permafrost vegetation dynamics soil thermal dynamics soil hydrological dynamics Arctic Boreal terrestrial carbon cycle

Citation (CITATION.cff)

cff-version: 1.2.0
title: "DVMDOSTEM"

message: "If you use this software, please cite using the metadata in this file."
type: software

identifiers:
  - description: "The Zenodo concept DOI of DVMDOSTEM. Use the Concept DOI representing all versions in citations when it is desirable to cite an evolving research artifact, without being specific about the version."
    type: doi
    value: 10.5281/zenodo.4281497

  - description: "The GitHub release URL."
    type: url
    value: "https://github.com/uaf-arctic-eco-modeling/dvm-dos-tem/releases/tag/v0.8.3"

repository-code: "https://uaf-arctic-eco-modeling/dvm-dos-tem"
url: >-
  https://uaf-arctic-eco-modeling.github.io/dvm-dos-tem/index.html#
abstract: >-
  DVMDOSTEM is an advanced process-based terrestrial
  ecosystem model (TEM) designed to study ecosystem responses to climate changes
  and disturbances. It has a particular focus on permafrost regions (i.e. regions
  characterized by soils that stay partially frozen all year round for at
  least two consecutive years), encompassing boreal, arctic, and alpine landscapes.
keywords:
  - C++
  - Python
  - Ecology
  - Terrestrial Ecology
  - Arctic
  - Boreal
  - Permafrost
  - Cryosphere
  - Tundra
license: MIT
authors:
  - family-names: "Genet" # Wildfire, calibration, scientific direction, 
    given-names: "Hélène"
    orcid: "https://orcid.org/0000-0003-4537-9563"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "Euskirchen" # DVM, scientific direction
    given-names: "Eugénie"
    orcid: "https://orcid.org/0000-0002-0848-4295"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "McGuire" # TEM, scientific direction
    given-names: "A. D."
    orcid: "https://orcid.org/0000-0003-4646-0750"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "Carman" # Software development and maintenance
    given-names: "Tobey B."
    orcid: "https://orcid.org/0000-0003-4617-4674"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "Rutter" # Software development and maintenance
    given-names: "Ruth A."
    orcid: "https://orcid.org/0009-0009-7043-6081"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "Clein" # Calibration
    given-names: "Joy"
    orcid: "https://orcid.org/0000-0002-2816-5312"
    affiliation: "Institute of Arctic Biology, University of Alaska Fairbanks, Fairbanks 99775, Alaska, USA"

  - family-names: "Yuan" # Merging DVM, DOS, and TEM
    given-names: "Fengming"
    orcid: "https://orcid.org/0000-0003-0910-5231"
    affiliation: "Environmental Science Division and Climate Change Science Institute, Oak Ridge National Laboratory, Oak Ridge, TN 37831"

  - family-names: "Jafarov" # Calibration
    given-names: "Elchin"
    affiliation: "Woodwell Climate Research Center, Falmouth 02540, Massachusetts, USA"
    orcid: "https://orcid.org/0000-0002-8310-3261"

  - family-names: "Yi" # DOS
    given-names: "Shuhua"
    orcid: "https://orcid.org/0000-0003-4932-8237"
    affiliation: "Laboratory of Herbage Improvement And Agro-ecosystem, Lanzhou University, Lanzhou 730000, Gansu Province, P.R. China"

  - family-names: "Zhuang" # TEM
    given-names: "Qianlai"
    orcid: "https://orcid.org/0000-0002-4536-9851"
    affiliation: "Department of Earth, Atmospheric, and Planetary Science, Purdue University, West Lafayette IN 47907 USA"


GitHub Events

Total
  • Create event: 35
  • Release event: 3
  • Issues event: 25
  • Watch event: 1
  • Delete event: 21
  • Issue comment event: 50
  • Push event: 150
  • Pull request review event: 2
  • Pull request event: 49
Last Year
  • Create event: 35
  • Release event: 3
  • Issues event: 25
  • Watch event: 1
  • Delete event: 21
  • Issue comment event: 50
  • Push event: 150
  • Pull request review event: 2
  • Pull request event: 49

Committers

Last synced: 4 months ago

All Time
  • Total Commits: 3,333
  • Total Committers: 31
  • Avg Commits per committer: 107.516
  • Development Distribution Score (DDS): 0.279
Past Year
  • Commits: 168
  • Committers: 5
  • Avg Commits per committer: 33.6
  • Development Distribution Score (DDS): 0.44
Top Committers
Name Email Commits
Tobey Carman t****n@g****m 2,403
Ruth Rutter r****r@a****u 603
Elchin e****v@g****m 66
Heather Greaves h****s@a****u 61
Helene Genet h****t@a****u 30
dependabot[bot] 4****] 28
Colin Tucker c****r@a****u 28
benjamin-maglio m****2@g****m 15
Aiza Kabeer a****r@w****g 15
Colin Tucker c****r@l****n 12
Dogukan Teber d****1@h****m 11
Jana Canary j****y@a****u 9
vbriones v****s@w****g 7
Fengming Yuan f****n@g****m 7
Hannah Mevenkamp h****p@a****u 6
amullen01 a****9@g****m 5
bmaglio b****o@a****u 5
Elchin Jafarov E****v@s****d 4
Shawn P. Serbin s****n@b****v 2
Alec Bennett a****c@a****m 2
vbriones v****s@i****l 2
colin tucker c****r@l****n 2
Elchin Jafarov E****v@E****l 2
Mark Lara m****k@l****n 1
Elchin Jafarov E****v@m****d 1
Helene Genet H****e@H****l 1
Yuan Y****n@Y****u 1
amullen01 a****n@t****l 1
benjamin-maglio m****2@W****k 1
Joshua Rady j****y@g****m 1
and 1 more...

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 112
  • Total pull requests: 199
  • Average time to close issues: 7 months
  • Average time to close pull requests: 24 days
  • Total issue authors: 15
  • Total pull request authors: 13
  • Average comments per issue: 0.73
  • Average comments per pull request: 0.44
  • Merged pull requests: 157
  • Bot issues: 0
  • Bot pull requests: 27
Past Year
  • Issues: 16
  • Pull requests: 75
  • Average time to close issues: 20 days
  • Average time to close pull requests: 8 days
  • Issue authors: 7
  • Pull request authors: 6
  • Average comments per issue: 0.44
  • Average comments per pull request: 0.16
  • Merged pull requests: 51
  • Bot issues: 0
  • Bot pull requests: 12
Top Authors
Issue Authors
  • tobeycarman (49)
  • rarutter (15)
  • Benjamin-Maglio (11)
  • valeriabriones (9)
  • jsclein-uaf (6)
  • amullen01 (6)
  • kdorheim (4)
  • Elchin (3)
  • hgenet (2)
  • JoshuaRady (2)
  • dogukanteber (1)
  • mengqi-z (1)
  • christinaschaedel (1)
  • mevenkamp (1)
  • arbennett (1)
Pull Request Authors
  • tobeycarman (72)
  • rarutter (61)
  • dependabot[bot] (27)
  • dogukanteber (10)
  • amullen01 (6)
  • valeriabriones (6)
  • hgenet (5)
  • Benjamin-Maglio (5)
  • JoshuaRady (3)
  • christinaschaedel (1)
  • mevenkamp (1)
  • aiza-k (1)
  • Elchin (1)
Top Labels
Issue Labels
bug (20) AC-REFAC (16) calibration (12) I/O (12) enhancement (11) parameter utility tooling (7) docker (7) documentation (5) Fix (4) science (2) question (1)
Pull Request Labels
dependencies (27) python (4)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 26
proxy.golang.org: github.com/uaf-arctic-eco-modeling/dvm-dos-tem
  • Versions: 26
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago

Dependencies

.github/workflows/main_sample.yml actions
  • actions/checkout v2 composite
Dockerfile docker
  • cpp-dev $GIT_VERSION build
  • dvmdostem-dev ${GIT_VERSION} build
  • ubuntu focal build
docker-compose.yml docker
  • cpp-dev ${V_TAG}
  • dvmdostem-build ${V_TAG}
  • dvmdostem-dev ${V_TAG}
  • dvmdostem-mapping-support ${V_TAG}
  • dvmdostem-run ${V_TAG}
requirements_general_dev.txt pypi
  • Sphinx ==5.1.1 development
  • bokeh ==2.4.2 development
  • commentjson ==0.9.0 development
  • ipython ==8.3.0 development
  • jupyter ==1.0.0 development
  • lhsmdu ==1.1 development
  • matplotlib ==3.5.2 development
  • netCDF4 ==1.5.8 development
  • numpy ==1.22.3 development
  • pandas ==1.4.2 development
  • sphinx-rtd-theme ==1.0.0 development
requirements_mapping.txt pypi
  • Fiona ==1.8.18
  • GDAL ==3.1.2
  • Jinja2 ==2.11.3
  • MarkupSafe ==1.1.1
  • Pillow ==9.3.0
  • PyYAML ==5.4
  • Pygments ==2.7.4
  • Shapely ==1.7.1
  • appnope ==0.1.0
  • attrs ==20.3.0
  • backcall ==0.2.0
  • bokeh ==2.2.3
  • certifi ==2022.12.7
  • cftime ==1.2.1
  • click ==7.1.2
  • click-plugins ==1.1.1
  • cligj ==0.7.1
  • commentjson ==0.8.3
  • configobj ==5.0.6
  • cycler ==0.10.0
  • decorator ==4.4.2
  • geojson ==2.5.0
  • geopandas ==0.8.1
  • ipython ==7.31.1
  • ipython-genutils ==0.2.0
  • jedi ==0.17.2
  • kiwisolver ==1.2.0
  • lark-parser ==0.7.8
  • matplotlib ==3.3.1
  • munch ==2.5.0
  • netCDF4 ==1.5.4
  • numpy ==1.22.0
  • packaging ==20.8
  • pandas ==1.1.5
  • parso ==0.7.1
  • pexpect ==4.8.0
  • pickleshare ==0.7.5
  • prompt-toolkit ==3.0.6
  • ptyprocess ==0.6.0
  • pyparsing ==2.4.7
  • pyproj ==3.0.0.post1
  • python-dateutil ==2.8.1
  • pytz ==2020.4
  • six ==1.15.0
  • tornado ==6.1
  • traitlets ==4.3.3
  • typing-extensions ==3.7.4.3
  • wcwidth ==0.2.5