Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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. 

...

Date:  

Summary


The purpose goal of this section is to summarize what capability is to be added to the ACME Ocean and Ice system through this design process. It should be clear what new code will do that the current code does not. Summarizing the primary challenges with respect to software design and implementation is also appropriate for this section. Finally, this statement should contain general statement with regard to what is “success.”

Requirements

Requirement: name-of-requirement-here

Date last modified: // date  
Contributors: @ name  (add your name to this list if it does not appear)

Each requirement is to be listed under a ”section” heading, as there will be a one-to-one correspondence between requirements, design, proposed imple- mentation and testing. Requirements should not discuss technical software issues, but rather focus on model capability. To the extent possible, require- ments should be relatively independent of each other, thus allowing a clean design solution, implementation and testing plan.

Algorithmic Formulations

Design solution: short-description-of-proposed-solution-here

Date last modified:// date
Contributors: (add your name to this list if it does not appear)

For each requirement, there is a design solution that is intended to meet that requirement. Design solutions can include detailed technical discussions of PDEs, algorithms, solvers and similar, as well as technical discussion of performance issues. In general, this section should steer away from a detailed discussion of low-level software issues such as variable declarations, interfaces and sequencing.

Design and Implementation

Implementation: short-desciption-of-implementation-here

Date last modified: // date
Contributors: (add your name to this list if it does not appeartask is to improve the shortwave radiative transfer simulation of snow-covered sea ice by adopting the updated radiative scheme SNICAR-AD in the sea-ice component MPAS-seaice. A parallel modification has also been made to the land component ELM, together they provide consistent and improved shortwave radiative transfer computation for snow-covered surfaces.

Requirements

Modify the sea-ice shortwave code to include a new subroutine SNICAR_AD that

  1. provides new input files for snow and ice optics adopted by ELM;
  2. expands the shortwave radiative calculation to 5 subdivided solar bands adopted by ELM;
  3. removes empirical adjustment for radiative-effective snow grain size;
  4. adopts a new algorithm to correct for the bias of near-infrared albedo and absorption when solar zenith angles are larger than 75 degrees.

Date last modified: Jun 1st, 2019 


Algorithmic Formulations

Design solution: described in the following article

Dang, C., Zender, C. S., and Flanner, M. G.: Inter-comparison and improvement of 2-stream shortwave radiative transfer models for a unified treatment of cryospheric surfaces in ESMs, The Cryosphere Discuss., https://doi.org/10.5194/tc-2019-22, in review, 2019.

Date last modified: July 1st, 2019
Contributors: Cheng Dang (Unlicensed)


Design and Implementation

Implementation: 

In ice_shortwace.F90, we added a new subroutine SNICAR_AD to compute the shortwave radiative properties of snow-covered sea ice, which can be turned on by setting config_use_snicar_ad to true.

Pseudo code:

if snow-covered sea ice:

    if (SNICAR_AD):





Date last modified: July 1st, 2019

Contributors: Cheng Dang (Unlicensed)


This section should detail the plan for implementing the design solution for requirement XXX. In general, this section is software-centric with a focus on software implementation. Pseudo code is appropriate in this section. Links to actual source code are appropriate. Project management items, such as svn branches, timelines and staffing are also appropriate. How do we typeset pseudo code?


Planned Verification and Unit Testing 

Verification and Unit Testing: short-desciption-of-testing-here

Date last modified:  
Contributors: (add your name to this list if it does not appear)


How will XXX be tested? i.e. how will be we know when we have met requirement XXX. Will these unit tests be included in the ongoing going forward?

Planned Validation Testing 

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

Date last modified:
Contributors: (add your name to this list if it does not appear)


How will XXX be tested? What observational or other dataset will be used?  i.e. how will be we know when we have met requirement XXX. Will these unit tests be included in the ongoing going forward?

Planned Performance Testing 

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

Date last modified:
Contributors: (add your name to this list if it does not appear)


How will XXX be tested? i.e. how will be we know when we have met requirement XXX. Will these unit tests be included in the ongoing going forward?The new implementation is not expected to have a significant impact on the computational cost/performance of E3SM.