Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New TC variants #1004

Merged
merged 8 commits into from
Nov 5, 2019
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions .testing/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ Model state is currently defined by the `ocean.stats` output file, which
reports the total energy (per unit mass) at machine precision alongside similar
global metrics, such as mass or mean sea level, at lower precision.

Clhecksums for every available diagnostic are also compared and the Makefile
Checksums for every available diagnostic are also compared and the Makefile
will report any differences, but such differences are not yet considered a fail
condition.

Expand Down Expand Up @@ -138,7 +138,7 @@ This will run through the following tests:
- `test.restarts`: Resubmission by restarts
- `test.repros`: Optimized (REPRO) and unoptimized (DEBUG) compilation
- `test.nans`: NaN initialization of allocated arrays
- `test.dims`: Dimensional scaling (length, time, thichkness, depth)
- `test.dims`: Dimensional scaling (length, time, thickness, depth)

To enable the regression tests, use `DO_REGRESSION_TEST=true`.
```
Expand All @@ -159,18 +159,21 @@ fail if the answers differ from this build.

The following test configurations (TCs) are supported:

- TC0: Unit testing of various model components, based on `unit_tests`
- TC1: A low-resolution version of the `benchmark` configuration
- TC2: An ALE configuration based on TC1
- TC3: An open-boundary condition (OBC) test based on `circle_obcs`
- tc0: Unit testing of various model components, based on `unit_tests`
- tc1: A low-resolution version of the `benchmark` configuration
- tc1.a: Use the un-split mode with Runge-Kutta 3 time integration
- tc1.b: Use the un-split mode with Runge-Kutta 2 time integration
- tc2: An ALE configuration based on tc1 with tides
- tc2.a: Use sigma, PPM_H4 and no tides
- tc3: An open-boundary condition (OBC) test based on `circle_obcs`


## Code coverage

Code coverage reports the lines of code which have been tested, and can
explicitly demonstrate when a particular operation is untested.

Coverage is measued using `gcov` and is reported for TCs using the `symmetric`
Coverage is measured using `gcov` and is reported for TCs using the `symmetric`
executable.

Coverage reporting is optionally sent to the `codecov.io` site.
Expand Down
1 change: 1 addition & 0 deletions .testing/tc1.b/MOM_input
Empty file added .testing/tc1.b/MOM_override
Empty file.
2 changes: 2 additions & 0 deletions .testing/tc1.b/MOM_tc_variant
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#override SPLIT=False
#override USE_RK2=True
1 change: 1 addition & 0 deletions .testing/tc1.b/diag_table
20 changes: 20 additions & 0 deletions .testing/tc1.b/input.nml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
&mom_input_nml
output_directory = './'
input_filename = 'n'
restart_input_dir = 'INPUT/'
restart_output_dir = 'RESTART/'
parameter_filename =
'MOM_input',
'MOM_tc_variant',
'MOM_override',
/

&diag_manager_nml
/

&fms_nml
clock_grain = 'ROUTINE'
clock_flags = 'SYNC'
domains_stack_size = 955296
stack_size = 0
/
1 change: 1 addition & 0 deletions .testing/tc2.a/MOM_input
Empty file added .testing/tc2.a/MOM_override
Empty file.
3 changes: 3 additions & 0 deletions .testing/tc2.a/MOM_tc_variant
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#override TOPO_CONFIG = "spoon"
#override REMAPPING_SCHEME = "PPM_H4"
#override REGRIDDING_COORDINATE_MODE = "SIGMA"
1 change: 1 addition & 0 deletions .testing/tc2.a/diag_table
20 changes: 20 additions & 0 deletions .testing/tc2.a/input.nml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
&mom_input_nml
output_directory = './'
input_filename = 'n'
restart_input_dir = 'INPUT/'
restart_output_dir = 'RESTART/'
parameter_filename =
'MOM_input',
'MOM_tc_variant',
'MOM_override',
/

&diag_manager_nml
/

&fms_nml
clock_grain = 'ROUTINE'
clock_flags = 'SYNC'
domains_stack_size = 955296
stack_size = 0
/
12 changes: 0 additions & 12 deletions .testing/tc2/MOM_input
Original file line number Diff line number Diff line change
Expand Up @@ -319,18 +319,6 @@ SMAG_BI_CONST = 0.06 ! [nondim] default = 0.0
ENERGETICS_SFC_PBL = True
DO_GEOTHERMAL = True
GEOTHERMAL_SCALE = 0.05
TIDES = True
TIDE_M2 = True
TIDE_S2 = True
TIDE_N2 = True
TIDE_K2 = True
TIDE_K1 = True
TIDE_O1 = True
TIDE_P1 = True
TIDE_Q1 = True
TIDE_MF = True
TIDE_MM = True
TIDE_SAL_SCALAR_VALUE = 1.
USE_NEUTRAL_DIFFUSION = True
DYNAMIC_VISCOUS_ML = True ! [Boolean] default = False
! If true, use a bulk Richardson number criterion to
Expand Down
12 changes: 12 additions & 0 deletions .testing/tc2/MOM_tc_variant
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
TIDES = True
TIDE_M2 = True
TIDE_S2 = True
TIDE_N2 = True
TIDE_K2 = True
TIDE_K1 = True
TIDE_O1 = True
TIDE_P1 = True
TIDE_Q1 = True
TIDE_MF = True
TIDE_MM = True
TIDE_SAL_SCALAR_VALUE = 1.
1 change: 1 addition & 0 deletions .testing/tc2/input.nml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
restart_output_dir = 'RESTART/'
parameter_filename =
'MOM_input',
'MOM_tc_variant',
'MOM_override',
/

Expand Down