wiki:DevelopmentActivities/CarbonMassBalance

Version 5 (modified by maignan, 11 years ago) (diff)

--

Check for carbon mass balance closure

Objective

The objective is to check in every subroutine that modifies stocks or fluxes that the mass balance is preserved. If the mass balance is not closed, this points a problem. The DOFOCO team has implemented such a check but it needs to be generalized using common subroutines which may be called in every stomate module.

Specifications

We will use the DOFOCO branch as a start, derive the common subroutines for checking the mass balance, test them against the original DOFOCO subroutines and then implement this system into the trunk.

Conception

Reservoirs

  • biomass
  • bm_to_litter
  • carbon
  • litter
  • turnover

Fluxes

  • resp_hetero_litter
  • resp_hetero_soil
  • soilcarbon_input

First step: Initialize check for mass balance closure at the beginning of the subroutine

Calculate pool_start right after initializations.

Second step: Check mass balance closure

To be done at the end of the subroutine.
Calculate pool_end.
Check Delta_pools=Delta_Flux * dt

List of modified subroutines

  • For DOFOCO
    • littercalc_prognostic
    • phenology_prognostic
    • soilcarbon
    • turnover_prognostic

Developments

Validation