An AI-powered research assistant for working with EcoSIM, a biogeochemical modeling library that simulates ecosystem processes including carbon and nitrogen cycling, soil-plant-atmosphere interactions, microbial dynamics, and nutrient transformations.
This project aims to create an intelligent co-pilot that assists with the entire ecosystem modeling workflow: data preparation, parameter calibration, simulation execution, and results analysis.
This project uses uv for dependency management:
# Install dependencies
uv sync
# Run tests
just test
# See all available commands
just --list-
hackathon-case_study-experimental_warming_nitrogen/- Meta-analysis of experimental warming effects on nitrogen cyclingsources/- 50 peer-reviewed papers from warming experiments across ecosystems (Arctic tundra, boreal forests, grasslands, etc.)ecosim-inputs-netcdf/- EcoSIM NetCDF input files (climate, grid, plant functional types, soil)experimental_warming_nitrogen-benchmark_data.xlsx- Meta-analysis database with 626 nitrogen measurements from 51 warming experiments
-
derived/- TSV exports from the Excel meta-analysis database for programmatic access:sources.tsv- Literature sources with DOIs and citationsexperiment-metadata.tsv- Geographic coordinates, ecosystem types, warming methods, temperature increasesN_measurements.tsv- 626 observations of N2O emissions, mineralization, nitrification, denitrificationresponse_variables.tsv- Definitions of nitrogen response variablesecosim_input-netcdf_variables.tsv- 264 NetCDF variable specificationsecosim-plant_names-forPFTs.tsv- 31 plant functional types for EcoSIMclimate-soil_datasources.tsv- Data source documentation
-
bervo/- Biogeochemical EcoSIM Research Variables Ontologybervo-terms.tsv- 2,076 standardized terms spanning ~70 categories covering all EcoSIM variables and parameters- Provides controlled vocabulary, unit standardization, and semantic infrastructure for automated parameter population
- See
PLANT_TRAITS.mdfor details on BERVO-trait alignment
-
gSSURGO_gridded/- Gridded soil survey data (SSURGO) -
scripts/- Utility scripts for NetCDF analysis and data processingextract_netcdf_metadata.py- Extract variable metadata from NetCDF files to CSVtest_xarray_netcdf.py,test_climate_data.py,test_pft_data.py- NetCDF testing utilities
src/ecosim_co_scientist/- Python package for EcoSIM workflows (in development)tests/- Test suite using pytest
The initial implementation focuses on using meta-analysis data to:
- Calibrate EcoSIM parameters for nitrogen cycling under warming scenarios
- Validate model predictions against 626 observations from 51 warming experiments
- Synthesize understanding of nitrogen-warming interactions across ecosystems
- Predict responses to future warming scenarios
-
626 nitrogen measurements from warming experiments spanning:
- Arctic/alpine tundra, boreal/temperate forests, grasslands, heathlands, agricultural systems
- Temperature increases: 0.5-5°C
- Experiment durations: 1-98 months
- Warming methods: greenhouses, nighttime curtains, infrared heaters, heating cables
-
Climate forcing: ERA5 reanalysis (Blodget site, 2012-2022)
-
Soil data: Harmonized World Soil Database (HWSD), SSURGO
-
Plant traits: Physiological parameters for 31 plant functional types
This repository includes specialized AI skills (Claude Code plugins) for domain-specific workflows:
Location: .claude/skills/netcdf-metadata/
Extracts variable metadata from NetCDF files to CSV format for documentation and analysis.
Features:
- Automatic extraction of all variable metadata (names, dimensions, shapes, data types, units, attributes)
- Support for both NetCDF3 (classic) and NetCDF4/HDF5 formats
- CDL to binary NetCDF conversion workflows
- Batch processing of multiple files
- Troubleshooting guidance for common NetCDF issues
Usage:
# Extract metadata from all NetCDF files
uv run python scripts/extract_netcdf_metadata.py
# Process specific files
uv run python scripts/extract_netcdf_metadata.py file1.nc file2.ncOutputs: .metadata.csv files alongside each NetCDF file with columns for variable_name, dimensions, shape, dtype, long_name, units, and all other attributes.
See .claude/skills/netcdf-metadata/SKILL.md for full documentation.
EcoSIM is a biogeochemical modeling library spun off from the ECOSYS model. It simulates:
- Carbon & nitrogen cycling - CO2, CH4, N2O fluxes; mineralization, nitrification, denitrification
- Soil-plant-atmosphere interactions - Water, energy, and gas exchange
- Microbial dynamics - Decomposition, enzyme kinetics, microbial competition
- Plant growth - Photosynthesis, allocation, phenology under varying environmental conditions
EcoSIM is written in Fortran, uses NetCDF input formats, and supports parallel simulations via MPI.
Long-term capabilities under development:
- Extract experimental designs and measurements from papers
- Build structured databases from unstructured literature
- Track data provenance to original sources
- Convert diverse formats to EcoSIM-compatible NetCDF
- Harmonize units, spatial scales, temporal resolutions
- Query climate and soil databases by coordinates
- Optimize parameters against observational benchmarks
- Bayesian uncertainty quantification
- Multi-objective calibration across response variables
- Generate EcoSIM configuration files
- Execute on local or HPC systems
- Manage simulation ensembles
- Statistical model-data comparison
- Spatiotemporal visualization
- Mechanistic interpretation
- Suggest experiments based on model predictions
- Design optimal sampling strategies
- Identify high-leverage measurements
- Generate reproducible technical reports
- Create publication-quality visualizations
- Maintain audit trails of modeling decisions
- Python 3.12+ with Fortran interoperability
- Data handling: xarray (NetCDF), pandas, openpyxl
- Data models: Pydantic or LinkML for type-safe structures
- Testing: pytest with doctests
- Dependencies:
uvpackage manager - Documentation: mkdocs
This is an early-stage project emerging from a hackathon. Immediate priorities:
- � Data loaders for warming/nitrogen meta-analysis
- � NetCDF metadata extraction tooling
- =§ EcoSIM input generators from experimental metadata
- =§ Validation frameworks for model-data comparison
- =§ Agent workflows for common modeling tasks
Future development will expand toward the full co-scientist vision as use cases mature.
AGENTS.md- Detailed project documentation for AI agentsPLANT_TRAITS.md- Plant traits database and BERVO ontology details.claude/skills/netcdf-metadata/SKILL.md- NetCDF metadata extraction skill documentation
# Run unit tests, doctests, and linting
just test
# Run all tests including integration tests
just test-fullTests follow pytest functional style with extensive doctests for documentation and validation.
[License information to be added]
- EcoSIM model: Jinyun Tang
- Warming experiment data: 50 research papers (see
sources/) - Climate data: ERA5 reanalysis
- Soil data: HWSD, SSURGO