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.
...
- New File!
- Defines Init, Restart, and update_iac2lnd subroutines
- Init allocates memory for variables
- Restart reads and writes iac2lnd information to/from the restart file
- update_iac2lnd sets the ELM variables from the information passed from iac
- Loops over the 1D array from iac and extracts the information for each grid, patch , and PFT on this grid
components/clm/src/main/lnd2iacMod.F90:
- New File!
- Defines Init and update_lnd2iac subroutines
- KATE: Why no Restart?
- Init allocates memory for hr, npp, and pftwt for all grid x PFT combinations
- update_lnd2iac loops over patch and extracts variables by pft for this grid
Changes to EAM
components/cam/src/control/camsrfexch.F90:
- Input from IAC to EAM defined (fco2_iac)
components/cam/src/cpl/atm_import_export.F90:
- Code modified to check if iac component passed data first. If not, read from file
components/cam/src/cpl/cam_cpl_indices.F90:
- co2 flux from iac added to list of co2 flux indices
Design Solution: Implement compsets to activate different combinations of components
Date last modified:
Contributors:
.....description.....
.....reference....Katherine Calvin (Unlicensed)
At this point, we have added the following compsets:
<INSERT NAME>: Couples GCAM and ELM only (effectively an I compset + GCAM)
<INSERT NAME>: Couples GCAM, EAM, and ELM (effectively an F compset + GCAM)
Note that we will subsequently add different compsets for different future forcing scenarios (e.g., different RCPs). The compsets listed above are used to demonstrate capabilities and for testing.
Design Solution: Enable couplings through namelist options
Date last modified:
Contributors:
.....description.....
.....reference.....Katherine Calvin (Unlicensed)
The following namelist variables have been added:
KATE TO ADD LIST
Design Solution: Embed algorithms for temporal & spatial resolution changes within the IAC component that are as flexible as possible
Date last modified:
Contributors:
.....description.....
.....reference.....
Planned Verification and Unit Testing
Verification and Unit Testing: Expert Review
Date last modified:
Contributors:
The named experts provided extensive review of each other's work, to verify that the design and implementations met the stated requirements. Model testing at each stage of implementation was used to verify that intended changes were correctly implemented, and that unintended changes were avoided.
Planned Validation Testing
Validation Testing: Evaluation
with iESM developed diagnostic scriptsof data exchanged between components
Date last modified:
Contributors: Katherine Calvin (Unlicensed), Alan Di Vittorio
The results of the ported code will eventually be analyzed in a similar manner to that of the iESM (e.g., Thornton et al., 2017). We will not expect exact matches, since we are using a different ESM, but we can ensure the behavior matches expectations/previous experience. For this code review, we will use a set of short test simulations and examine the inputs, outputs, and logs of all components to ensure that the information is being passed correctly in each configuration. We will document the exact checks and archive the code when possible so this can be replicated later.
Planned Performance Testing
Performance Testing: Short simulations on multiple platforms
Date last modified:
Contributors: Katherine Calvin (Unlicensed)
We do not expect GCAM to alter the performance of the coupled system, but we will perform short coupled simulations on multiple platforms to quantify the change.