C3 General basal friction law for MALI 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) - competed, (warning) - in progress, (error) - not done

Overview table for the owner and an approver of this feature

1.Description

General basal friction law for MALI

2.OwnerMatt Hoffman
3.CreatedJuly 30, 2019
4.Equ(error)
5.Ver(error)
6.Perf(error)
7.Val(error)
8.ApproverStephen Price
9.Approved Date
 Click here for Table of Contents ...

Table of Contents



Title: General basal friction law for MALI

Requirements and Design

E3SM Ocean/Ice  Group

Date: July 30, 2019  

Summary

This feature will introduce a new general basal friction law to MALI that replaces the existing linear basal friction law with a flexible friction law that can take the form of several more theoretically sound friction laws.  This friction law can be made a function of subglacial effective pressure, allowing it to eventually be coupled with a subglacial hydrology model.  The new basal friction law will be implemented in the Albany side of MALI and require an update to the Albany and Trilinos libraries used in E3SM.  The new friction law will be disabled by default, as additional work will be required to initialize the model with it.

Requirements

Requirement: Basal friction law that can take the form of Weertman, Schoof, or plastic friction laws

Date last modified: July 30, 2019
Contributors: Matt Hoffman

A general glacier basal friction law will be able to take the following forms:

  • Weertman: 

  • Schoof

  • Plastic





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


Algorithmic Formulations

Design solution: Basal friction law that can take the form of Weertman, Schoof, or plastic friction laws

Date last modified: July 30, 2019
Contributors: Matt Hoffman

This can be accomplished with the Schoof form.  To use the Weertman form, set .  To use the plastic form, set 

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: Basal friction law that can take the form of Weertman, Schoof, or plastic friction laws

Date last modified: July 30, 2019 
Contributors: Matt Hoffman

All the basal friction laws considered can take the form

where \beta is given by

  • power law: 

  • schoof law:

  • Plastic:



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:  July 30, 2019
Contributors: Matt Hoffman


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: Basal friction law that can take the form of Weertman, Schoof, or plastic friction laws

Date last modified: July 30, 2019

Contributors: Matt Hoffman


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: Basal friction law that can take the form of Weertman, Schoof, or plastic friction laws

Date last modified: July 30, 2019
Contributors: Matt Hoffman


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?