L7_UQ_efficiency_improvements Design Document

The Design Document page provides a description of the algorithms, implementation and planned testing including unit, verification, validation and performance testing. Please read  Step 1.3 Performance Expectations that explains feature documentation requirements from the performance group point of view. 

Design Document

 Click here for instructions to fill up the table below ......

The first table in Design Document gives overview of this document, from this info the Design Documents Overview page is automatically created.

In the overview table below 4.Equ means Equations and Algorithms, 5.Ver means Verification, 6.Perf - Performance, 7. Val - Validation

  • Equations: Document the equations that are being solved and describe algorithms
  • Verification Plans: Define tests that will be run to show that implementation is correct and robust. Involve unit tests to cover range of inputs as well as benchmarks.
  • Performance expectations: Explain the expected performance impact from this development
  • Validation Plans: Document what process-based, stand-alone component, and coupled model runs will be performed, and with what metrics will be used to assess validity

Use the symbols below (copy and paste) to indicate if the section is in progress or done or not started.

In the table below 4.Equ means Equations and Algorithms, 5.Ver means Verification, 6.Perf - Performance, 7. Val - Validation,   (tick) - completed, (warning) - in progress, (error) - not done

 

Overview table for the owner and an approver of this feature

1.Description

Improve efficiency of land spinup and offline land model simulations

2.OwnerDaniel Ricciuto
3.Created 
4.Equ(tick)
5.Ver(tick)
6.Perf(tick)
7.Val(tick)
8.ApproverPeter Thornton, William Riley (Unlicensed)
9.Approved Date 
V1.0Accepted
 Click here for Table of Contents ...

Table of Contents

 

 

 

Title: Improving the efficiency of land spinup and offline model simulations

Requirements and Design

ACME Land Group

Date:   

Summary

This modification contains 2 major pieces:  1)  Modification of the accelerated decomposition for land model biogeochemistry spinup, and 2) Implementation of "coupler bypass" mode, which loads atmospheric input data directly in the land model.  For 1), acceleration factors now will include a dependence on mean annual temperature, and are directly connected to the rate constant parameters instead of hard-coded constants.  If Q10 or rate constant parameters are varied for UQ efforts, the acceleration factors will also change to maximize efficiency.  All pools with a turnover time of greater than 1 year (depending on the parameter value) will be accelerated, including litter and coarse woody debris (CWD).  Also included is accelerated dead wood mortality, in which dead coarse root and stem mortality is accelerated.  The biomass/height relationship and fire modules are also adjusted in accelerated mode for consistency.  Finally, in accelerated mode, in model years 1-20 (currently hard-coded), carbon-only mode is used (with saturated nitrogen).  This allows much faster spinup of biomass.  For 2), atmospheric data are loaded directly in the lnd_import_export subroutine rather than passed from datm to the coupler.  This option, which improves performance significantly, is implemented as a separate compset using SATM.  Stream files within the land model (ndep, fire data) are also disabled and all data are read on timestep 0 and held in system memory.  This option uses a compressed version of the atmospheric input (QIAN or CRU-NCEP), as well as slightly different interpolation routines, and will not be BFB with the DATM compsets.  Initial testing shows differences in the 1% range for most variables.  These improvements can shorten offline land model simulation times by 5-10x, and are primarily intended for model development and UQ.  Additional modifications include:  3)  Pulling out selected hard-coded model parameters to be read in from netcdf files, and changes to the existing python script framework for site simulations.


Requirements

Requirement 1: Provide more efficient accelerated decomposition (AD) for land biogeochemistry

Date last modified:  
Contributors: Daniel Ricciuto

Provide a framework to reach steady state in accelerated mode in land model (with active biogeochemistry) in a reduced amount of time (< 500 years) for any given climate, plant functional type, or choice of model parameters affecting decomposition rate.


Requirement 2: Provide option to bypass DATM and model coupler for offline land model simulations

Date last modified:  
Contributors: Daniel Ricciuto

Provide a framework to read in all model relevant inputs at the time of initialization, including meteorology, nitrogen deposition, aerosol deposition, fire data, and co2 concentrations.

Requirement 3: Model code changes to enable parameter manipulation in site-level UQ studies

Date last modified:  

Contributors: Daniel RicciutoXiaoying Shi

Provide a python scripting framework to enable full point model simulations including spinup and transient.  Extract selected current hard-coded parameters and read them from netcdf parameter files.  Provide new parameterizations for storage, harvest, and photosynthetic temperature response learned from pervious site-level UQ studies (defaults will not be changed from ACME_v0).

Algorithmic Formulations

Design solution: Provide more efficient accelerated decomposition (AD) for land biogeochemistry

Date last modified:  
Contributors: Daniel Ricciuto

 

Modification 1)  if (model_year) < 20, set carbon_only mode active

Modificaiton 2)  In accelerated mode For dead croot and dead stem carbon only, accelerate mortality by a factor of 10

                         In accelerated mode, multiply dead stem/croot carbon pools by a factor of 10 for biomass calculation in fire model.

                         In accelerated mode,multiply dead stem/croot carbon pools by a factor of 10 for biomass/height relationship

Modification 3)  In accelerated mode, modify acceleration factors (af) of slow pools (> 1 year) from constants to a functional form:  af = f(k, Q10, MAT).

                         MAT = mean annual temperature, k = rate constant for decomposition (at 25C), Q10 = temperature sensitivity

                         In accelerated mode, increase vertical transport to match acceleration factors.

Design solution: Provide option to bypass DATM and model coupler for offline land model simulations

Date last modified:  
Contributors: Daniel Ricciuto

No algorithmic changes necessary.

Design solution: Model code changes to enable parameter manipulation in site-level UQ studies

Date last modified:  
Contributors: Daniel RicciutoXiaoying Shi

Modification of harvest subroutine to specify number of days over which to apply the harvest algorithm (default 1 year)

Modification to set minimum soil temperature for calculation of BTRAN as a parameter (default = -2 C) 

 Modification to include fraction of downregulation C flux sent to cpool (default is zero), introduce cpool turnover (default 1 year)

Design and Implementation

Implementation: Provide more efficient accelerated decomposition (AD) for land biogeochemistry

Date last modified:  
Contributors: Daniel Ricciuto

 

The following subroutines are modified (Based on v0 code; this list will be revised on further review of both CNP and interface codes):
surfrdMod:  Read in mean annual temperature from surface dataset
CNAllocationMod:  Set carbon_only mode if model_year > 20, set carbon_only model false otherwise.
CNDecompCascadeCN(BGC)Mod:  Make spinup_vector an 8(7)-element array.  After parameters are read, set spinup_vector to max(1, 3/(k*Q10((MAT-25)/10.))
                                                where k is pool rate constant (in years) and MAT is mean annual T (deg C).  Apply these spinup vectors to the spinup_factor for decomp calculation. 
CN(C/N/P)StateType:  On enter_spinup, reduce SOM/Litter pool sizes by the spinup factor.  Same for dead stem/croot pools.
                                    On exit_spinup, multiply SOM/litter pool sizes by the spinup factor.  Same for dead stem/croot pools.
CNFireMod:  Multiply deadstemc by 10 for fuelc calculation.  Multiply dead wood biomass and decomp_pool fire fluxes (C/N/P) by acceleration factors.
CNGapMortalityMod:  Accelerate mortality by a factor of 10 in dead stem/croot pools for C/N/P.
CNSoilLittVertTranspMod:  Apply spinup_factors to all decomp pools.
CNVegStructMod:  Multiply dead stem C by spinup factor in accelerated mode (requires column level deadstemc calculation) for biomass/height calculation.

Implementation:  Provide option to bypass DATM and model coupler for offline land model simulations

Date last modified:  
Contributors: Daniel Ricciuto

The following subroutines are modified (Based on v0 code; this list will be revised on further review of both CNP and interface codes)

ccsm_driver:  Disable writing logfile information every timestep.

lnd_comp_mct:  Disable lnd_export subroutine if cpl_bypass option is used.

atm2lndType:  Define and allocate new variables for met data, co2, c13o2, ndep, aerosol, hdm, lnfm inputs (containing complete timeseries).

lnd_comp_mct:  Disable export to coupler

lnd_import_export:  Extensive modifications to read in met data, ndep, fire, aerosol and co2 data on time step 0.

controlMod and clm_varctl:  Provide new name list options to specify directory for cpl_bypass metdata, co2_file and aerosol files (since these will be read in CLM instead of DATM)

config_compsets:  Provide new compsets using SATM for cpl_bypass mode 

clm_driver:  Disable ndep stream file/interpolation operations.  Disable writing "completed timestep"  every timestep.

CNFireMod:  Disable lnfm/hdm stream file/interpolation operations

Implementation:  Model code changes to enable parameter manipulation in site-level UQ studies

Date last modified:  
Contributors: Daniel Ricciuto

Parameters will be added to the clm_params_xxxxx.nc file and read in pft_varcon or relevant model subroutine.


Planned Verification and Unit Testing 

Verification and Unit Testing: UQ efficiency improvements

Date last modified:   

Contributors: Daniel RicciutoXiaoying Shi

The planned changes to ad_spinup will not be bfb with previous tags.  We will verify that the current and previous spinup methodologies produce the same steady state C pools to within 0.1 PgC  globally and within 1gC/m2 for at least 95% of land grid cells in a global offline simulation.  The previous ad_spinup methodology will still be available through a namelist option.

The changes to bypass the model coupler will be implemented as a new compset.  We will verify that these simulations produce the same steady state as the standard IXXXXCLM45CN compset for steady state (year 1850) and transient C,N, and P pools (year 2000) to within 1% globally and for at least 95% of land grid cells in a global offline simulation.

All other changes will be verified as bfb.

Planned Validation Testing 

Validation Testing: UQ efficiency improvements

Date last modified:  

Contributors: Daniel RicciutoXiaoying Shi

 

The ad_spinup changes will be tested to determine the optimal parameters (mortality acceleration, som factors, and length of time in C-only mode). requiring the least amount of spinup to reach steady state C pools.  

Other model parameter and structural changes will be tested against site-level data (e.g. FLUXNET) and assessed globally using the ILAMB framework.

Planned Performance Testing 

Performance Testing: short-desciption-of-testing-here

Date last modified:  

Contributors: Daniel Ricciuto

 

Ad_spinup are not expected to impact performance in terms of CPU time per model year, but will reduce the length of required simulation.  Performance will be tested using standard tools.

Cpl_bypass is expected to significantly enhance the performance of offline land model simulations.  This will be tested using the standard timing tools on all major platforms.

Other parameter and structural changes are not expected to impact performance.