AgroC

Here we describe the codes of AgroC implementation as well as the instruction to install it along with its inputs and outputs from developer’s perspective

Overview of AgroC Model's Core Input and Output Variables

This list provides an overview of the key variables involved in the AgroC model, emphasizing the fundamental data requirements and outputs.

  1. 🌾 Model Input Data:
  2. 🌍 Daily weather data: Maximum, minimum, and mean air temperature, solar radiation, and precipitation.
  3. 🌦️ Soil properties: Clay fraction, bulk density, pH, concentrations of organic carbon, and total nitrogen.
  4. πŸ’§ Farming management: Dates of planting and harvest, timing and rates of fertilizer application, manure inputs, and crop residue management.
  5. 🚜 Atmospheric CO2 concentration.
  6. 🌾 Model Output Data:
  7. 🌍 Crop carbon: Gross primary production, autotrophic respiration, and net primary production.
  8. 🌦️ Soil carbon: Heterotrophic respiration and organic carbon.
  9. πŸ’§ Net ecosystem exchange: Net CO2 exchange between cropland and the atmosphere.

Detailed Breakdown of AgroC Model's Input Files and Data Formats

This section delves deeper into the specific input files and data formats used by the AgroC model

  1. 🌾 Model Input Data:
  2. 🌍 Daily weather data: Maximum, minimum, and mean air temperature, solar radiation, and precipitation.
  3. 🌦️ Soil properties: Clay fraction, bulk density, pH, concentrations of organic carbon, and total nitrogen.
  4. πŸ’§ Farming management: Dates of planting and harvest, timing and rates of fertilizer application, manure inputs, and crop residue management.
  5. 🚜 Atmospheric CO2 concentration.
  6. 🌾 Model Output Data:
  7. 🌍 Crop carbon: Gross primary production, autotrophic respiration, and net primary production.
  8. 🌦️ Soil carbon: Heterotrophic respiration and organic carbon.
  9. πŸ’§ Net ecosystem exchange: Net CO2 exchange between cropland and the atmosphere.
  10. 🚜 Detailed Input File Description:
  11. 🌾 plants.in: Contains crop-specific parameters and settings for crop growth and management.
  12. 🌍 selector.in: Configures various simulation options, including settings for soil, water flow, and atmospheric conditions.
  13. 🌦️ atmosph.in: Provides meteorological data and atmospheric conditions impacting crop growth, such as temperature and humidity.
  14. πŸ’§ Download Input Files

Technical Overview of AgroC Model's Implementation

Dive into the intricate architecture of the AgroC model with our comprehensive guide on its Fortran codes. This section offers an in-depth exploration of the model’s internal mechanics, showcasing the specific functions and roles of various code files. From understanding the dynamics of carbon and nitrogen cycles to the simulation of water flow and crop growth, get a detailed view of how each code contributes to the AgroC model’s robust environmental simulation capabilities. Ideal for developers and technical enthusiasts, this section serves as a valuable resource for anyone keen on dissecting the computational framework behind AgroC’s advanced ecological modeling.

FilePrimary FunctionalityAssociated VariablesInput/Output
carbon.f90Models carbon dynamics in soil, including CO2 transport, organic matter decomposition, and microbial interactions.CO2 concentration layers, soil properties, decomposition rates, organic carbon inputs, microbial biomass variables, atmospheric pressure, gas constant, molecular CO2Input: Soil properties, environmental parameters, CO2 transport and decomposition parameters. Output: Updated CO2 and organic matter concentrations, CO2 production and decomposition rates, CO2 fluxes, microbial activity, soil carbon dynamics.
datatypes.f90Defines custom data types and structures for use in the AgroSea model.Custom data types and structures.Not directly applicable
doxygen.confConfiguration file for generating Doxygen documentation of the AgroSea model.N/AN/A
geometry.f90Handles geometric aspects in simulations, including defining and manipulating properties of geometric shapes or structures.Dimensions, coordinates, properties like area, volume, length, angles, transformation proceduresInput: Geometric definitions, configuration settings. Output: Calculated geometric properties, transformed geometric entities.
input.f90Manages reading and processing initial data, particularly environmental or atmospheric parameters.Logical variables like lSurf, real variables like rSoil, Prec, integer indices iTemp, jTemp, array iUnitInput: Reads from various input files or data streams. Output: Processes and supplies data to other modules.
makefileSpecifies rules for compilation and linking in building the AgroC model.N/AN/A
material.f90Manages properties and behaviors of different materials, with focus on physical, chemical, and mechanical properties.Material properties, composite materials, temperature and pressure dependencies, environmental interactionsInput: Material property parameters, environmental conditions. Output: Calculated material properties under specified conditions.
nitrogen.f90Simulates nitrogen dynamics, covering processes like nitrogen fixation, nitrification, and denitrification.Nitrogen forms (Urea, NH4, NO3), rates and constants for nitrogen processes, logical flags for processes, C/N ratio of biomassInput: Environmental parameters, nitrogen concentrations. Output: Updated nitrogen concentrations, process rates and statuses.
output.f90Generates output data based on environmental and soil parameters.Various soil condition and CO2 level variablesInput: Environmental parameters, soil conditions, model iteration data. Output: Data on soil conditions, CO2 levels, other environmental factors.
phosphorus.f90Handles phosphorus dynamics in soil, including different soil types and conditions.Logical variables for phosphorus pools and uptake, integer variables for soil genesis, real variables like CaCO3 concentration, base saturation, soil pHInput: Soil type and phosphorus-related parameters. Output: Updated phosphorus concentrations, soil chemistry alterations.
plants.f90Models aspects related to various plant types in agricultural or ecological simulations.Plant type integers, additional parameters for growth and biological characteristicsInput: Environmental and biological inputs for plant growth. Output: Plant growth, yield, environmental response predictions.
sink.f90Handles source and sink dynamics within a system, integrating spatial, environmental, and carbon dynamics.Physical quantities like root growth, transpiration, carbon content, internal calculation variablesInput: Root and environmental parameters. Output: Source and sink values, updated spatial and environmental data.
soilco2.f90Models CO2 dynamics in soil, including production, transport, and interactions with soil components.CO2 concentrations, soil properties, biological process variables, environmental factorsInput: Soil characteristics, environmental parameters. Output: CO2 concentrations and fluxes, soil property changes.
solute.f90Manages solute dynamics, including transport and chemical reactions in the environment.General and real variables for solute parameters, allocatable arrays, logical variables for solute dynamicsInput: Environmental parameters, solute concentrations. Output: Updated solute concentrations, reaction rates.
temper.f90Calculates heat transport, involving temperature modeling and dynamics.Temperature, velocity, thermal variables, environmental parameters, material propertiesInput: Environmental, temporal, and material parameters. Output: Temperature profiles, heat transport properties.
time.f90Handles time-related functionalities in simulations, managing simulation time data and parameters.Simulation time data, time information, date and time parameters, profile typeInput: Time-related parameters and date information. Output: Updated simulation time and date values.
watflow.f90Calculates water flow using data types, geometrical configurations, and material properties.Time variables, water flow parameters, material properties, local calculation variablesInput: Time and water flow parameters. Output: Updated water flow values, convergence status, iteration details.
variables.f90Includes functions related to calculating water stress and root exudation, managing various program variables.Variables for water stress, root exudation, nitrogen-related processesInput: Environmental parameters like water stress and temperature. Output: Managed variables related to environmental aspects.