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

Allow use of downscaled warmstart files for cpld_control_sfs test #2375

Merged
merged 31 commits into from
Aug 21, 2024
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
835c3de
create feature branch
DeniseWorthen Jul 19, 2024
797655e
update script variables and sfs test
DeniseWorthen Jul 19, 2024
a985e84
fix ice-ic directory; point to test input location
DeniseWorthen Jul 19, 2024
5a625c8
fix c48 test, fix typo
DeniseWorthen Jul 19, 2024
57eb656
update mx050 template, restore tries=2
DeniseWorthen Jul 19, 2024
13dce1f
Merge branch 'ufs-community:develop' into feature/oiwarmstarts
DeniseWorthen Jul 20, 2024
b48b10a
switch sfs test to 64-bit
DeniseWorthen Jul 20, 2024
dca0e62
add test_changes.list
DeniseWorthen Jul 22, 2024
0984f02
revert SFS test to 32bit
DeniseWorthen Jul 23, 2024
823ca0d
Merge remote-tracking branch 'origin/develop' into feature/oiwarmstarts
DeniseWorthen Jul 26, 2024
576d6a7
Merge branch 'develop' into feature/oiwarmstarts
DeniseWorthen Jul 30, 2024
be5db61
Merge remote-tracking branch 'origin/develop' into feature/oiwarmstarts
DeniseWorthen Aug 2, 2024
0e2ea1e
Merge branch 'ufs-community:develop' into feature/oiwarmstarts
DeniseWorthen Aug 8, 2024
04bb86a
Merge branch 'develop' into feature/oiwarmstarts
DeniseWorthen Aug 8, 2024
8f4b292
sync up branch against develop
jkbk2004 Aug 17, 2024
b282144
sync up mom6 hash
jkbk2004 Aug 17, 2024
b9af3a8
revert change INPUTDATA_ROOT
jkbk2004 Aug 18, 2024
cbc68b6
RT pre-test on hera: cpld_control_sfs change only
jkbk2004 Aug 19, 2024
005f5bb
add new BL_DATE: 20240819
jkbk2004 Aug 19, 2024
425f089
update git action yaml
jkbk2004 Aug 19, 2024
4507a4e
sync up FV3 branch
jkbk2004 Aug 19, 2024
ed15c21
[AutoRT] Hercules Job Failed!
epic-cicd-jenkins Aug 19, 2024
56a96d1
add derecho RT logs: passed
zach1221 Aug 19, 2024
14cde2b
add orion RT logs: passed
zach1221 Aug 19, 2024
8dfed26
ORT Jobs Completed.
epic-cicd-jenkins Aug 20, 2024
59ce994
add jet RT log passed
FernandoAndrade-NOAA Aug 20, 2024
dd683c2
add gaea RT log passed
FernandoAndrade-NOAA Aug 20, 2024
130dce3
add hercules RT log: passed
jkbk2004 Aug 20, 2024
b31bee9
WCOSS2 RT Log: Passed
BrianCurtis-NOAA Aug 20, 2024
153d878
add hera RT log: passed
jkbk2004 Aug 20, 2024
973bd0e
Acorn RT Log: Passed
BrianCurtis-NOAA Aug 20, 2024
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
27 changes: 17 additions & 10 deletions tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
THRD=1

export INPES_atmaero=4
export JNPES_atmaero=8
export JNPES_atmaero=8
export WPG_atmaero=6

export THRD_cpl_atmw=1
Expand Down Expand Up @@ -121,12 +121,12 @@ if [[ ${MACHINE_ID} = wcoss2 || ${MACHINE_ID} = acorn ]]; then

export TPN=128

export INPES_dflt=3
export INPES_dflt=3
export JNPES_dflt=8
export INPES_thrd=3
export JNPES_thrd=4
export INPES_c384=8
export JNPES_c384=6
export JNPES_c384=6
export THRD_c384=2
export INPES_c768=8
export JNPES_c768=16
Expand All @@ -144,7 +144,7 @@ elif [[ ${MACHINE_ID} = orion ]]; then

export INPES_dflt=3
export JNPES_dflt=8
export INPES_thrd=3
export INPES_thrd=3
export JNPES_thrd=4
export INPES_c384=8
export JNPES_c384=6
Expand All @@ -168,7 +168,7 @@ elif [[ ${MACHINE_ID} = hercules ]]; then
export INPES_thrd=3
export JNPES_thrd=4
export INPES_c384=8
export JNPES_c384=6
export JNPES_c384=6
export THRD_c384=2
export INPES_c768=8
export JNPES_c768=16
Expand All @@ -187,10 +187,10 @@ elif [[ ${MACHINE_ID} = hera ]]; then

export INPES_dflt=3
export JNPES_dflt=8
export INPES_thrd=3
export INPES_thrd=3
export JNPES_thrd=4
export INPES_c384=6
export JNPES_c384=8
export JNPES_c384=8
export THRD_c384=2
export INPES_c768=8
export JNPES_c768=16
Expand Down Expand Up @@ -274,7 +274,7 @@ elif [[ ${MACHINE_ID} = s4 ]]; then

export TPN=32

export INPES_dflt=3
export INPES_dflt=3
export JNPES_dflt=8
export INPES_thrd=3
export JNPES_thrd=4
Expand Down Expand Up @@ -325,10 +325,10 @@ elif [[ ${MACHINE_ID} = derecho ]]; then
export TPN=128
export INPES_dflt=3
export JNPES_dflt=8
export INPES_thrd=3
export INPES_thrd=3
export JNPES_thrd=4
export INPES_c384=8
export JNPES_c384=6
export JNPES_c384=6
export THRD_c384=2
export INPES_c768=8
export JNPES_c768=16
Expand Down Expand Up @@ -915,6 +915,8 @@ export_cice6() {
export CICE_USE_RESTART_TIME=.false.
export CICE_RESTART_DIR=./RESTART/
export CICE_RESTART_FILE=iced
# CICE6 warmstarts
export OCNICE_WARMSTART=.false.

export CICE_RESTART_FORMAT='pnetcdf2'
export CICE_RESTART_IOTASKS=-99
Expand Down Expand Up @@ -1003,6 +1005,11 @@ export_mom6() {
export PERT_EPBL=False
export OCN_SPPT=-999.
export EPBL=-999.
# MOM6 warmstarts
export OCNICE_WARMSTART=.false.
export MOM6_INIT_FROM_Z=True
export MOM6_INIT_UV="zero"
export MOM6_WARMSTART_FILE="none"
}

# Defaults for the WW3 global model
Expand Down
11 changes: 8 additions & 3 deletions tests/fv3_conf/cpld_control_run.IN
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ else
FV3_IC=@[INPUTDATA_ROOT]/${FV3_DIR}/INPUT_L127_mx${OCNRES}
fi
MOM_IC=@[INPUTDATA_ROOT]/MOM6_IC
ICE_IC=@[INPUTDATA_ROOT]/CICE_IC/${OCNRES}
ICE_IC=@[INPUTDATA_ROOT]/CICE_IC
fi
fi

Expand Down Expand Up @@ -90,8 +90,13 @@ if [ $WARM_START = .false. ]; then
cp ${MOM_IC}/MOM.res.nc ./INPUT
cp ${ICE_IC}/cice_model_@[ICERES].cpc.res_* ./cice_model.res.nc
else
cp ${MOM_IC}/MOM6_IC_TS_${SYEAR}${SMONTH}${SDAY}${SHOUR}.nc ./INPUT/MOM6_IC_TS.nc
cp ${ICE_IC}/cice_model_@[ICERES].cpc.res_${SYEAR}${SMONTH}${SDAY}.nc ./cice_model.res.nc
if [[ $OCNICE_WARMSTART == .true. ]]; then
cp ${MOM_IC}/mom6.mx@[OCNRES].${SYEAR}${SMONTH}${SDAY}${SHOUR}.warmstart.nc ./INPUT/mom6.warmstart.nc
cp ${ICE_IC}/cice.mx@[OCNRES].${SYEAR}${SMONTH}${SDAY}${SHOUR}.warmstart.nc ./cice.warmstart.nc
else
cp ${MOM_IC}/MOM6_IC_TS_${SYEAR}${SMONTH}${SDAY}${SHOUR}.nc ./INPUT/MOM6_IC_TS.nc
cp ${ICE_IC}/${OCNRES}/cice_model_@[ICERES].cpc.res_${SYEAR}${SMONTH}${SDAY}.nc ./cice_model.res.nc
fi
fi
fi
else
Expand Down
91 changes: 90 additions & 1 deletion tests/parm/MOM_input_050.IN
Original file line number Diff line number Diff line change
Expand Up @@ -306,7 +306,7 @@ REMAPPING_SCHEME = "PPM_H4" ! default = "PLM"
! Parameters providing information about the lateral grid.

! === module MOM_state_initialization ===
INIT_LAYERS_FROM_Z_FILE = True ! [Boolean] default = False
INIT_LAYERS_FROM_Z_FILE = @[MOM6_INIT_FROM_Z] ! [Boolean] default = False
! If true, initialize the layer thicknesses, temperatures, and salinities from a
! Z-space file on a latitude-longitude grid.

Expand All @@ -328,7 +328,96 @@ Z_INIT_ALE_REMAPPING = True ! [Boolean] default = False
Z_INIT_REMAP_OLD_ALG = True ! [Boolean] default = True
! If false, uses the preferred remapping algorithm for initialization. If true,
! use an older, less robust algorithm for remapping.
! === WARMSTARTS ===
THICKNESS_CONFIG = "file" ! default = "uniform"
! A string that determines how the initial layer thicknesses are specified for a
! new run:
! file - read interface heights from the file specified
! by (THICKNESS_FILE).
! thickness_file - read thicknesses from the file specified
! by (THICKNESS_FILE).
! mass_file - read thicknesses in units of mass per unit area from the file
! specified by (THICKNESS_FILE).
! coord - determined by ALE coordinate.
! uniform - uniform thickness layers evenly distributed
! between the surface and MAXIMUM_DEPTH.
! list - read a list of positive interface depths.
! DOME - use a slope and channel configuration for the
! DOME sill-overflow test case.
! ISOMIP - use a configuration for the
! ISOMIP test case.
! benchmark - use the benchmark test case thicknesses.
! Neverworld - use the Neverworld test case thicknesses.
! search - search a density profile for the interface
! densities. This is not yet implemented.
! circle_obcs - the circle_obcs test case is used.
! DOME2D - 2D version of DOME initialization.
! adjustment2d - 2D lock exchange thickness ICs.
! sloshing - sloshing gravity thickness ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! soliton - Equatorial Rossby soliton.
! rossby_front - a mixed layer front in thermal wind balance.
! USER - call a user modified routine.

THICKNESS_FILE = @[MOM6_WARMSTART_FILE] !
! The name of the thickness file.
ADJUST_THICKNESS = True ! [Boolean] default = False
! If true, all mass below the bottom removed if the topography is shallower than
! the thickness input file would indicate.
THICKNESS_TOLERANCE = 0.1 ! [m] default = 0.1
! A parameter that controls the tolerance when adjusting the thickness to fit
! the bathymetry. Used when ADJUST_THICKNESS=True.
INTERFACE_IC_VAR = "eta" ! default = "eta"
! The variable name for initial conditions for interface heights relative to
! mean sea level, positive upward unless otherwise rescaled.
INTERFACE_IC_RESCALE = 1.0 ! [various] default = 1.0
! A factor by which to rescale the initial interface heights to convert them to
! units of m or correct sign conventions to positive upward.
TS_CONFIG = "file" !
! A string that determines how the initial temperatures and salinities are
! specified for a new run:
! file - read velocities from the file specified
! by (TS_FILE).
! fit - find the temperatures that are consistent with
! the layer densities and salinity S_REF.
! TS_profile - use temperature and salinity profiles
! (read from TS_FILE) to set layer densities.
! benchmark - use the benchmark test case T & S.
! linear - linear in logical layer space.
! DOME2D - 2D DOME initialization.
! ISOMIP - ISOMIP initialization.
! adjustment2d - 2d lock exchange T/S ICs.
! sloshing - sloshing mode T/S ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! rossby_front - a mixed layer front in thermal wind balance.
! SCM_CVMix_tests - used in the SCM CVMix tests.
! USER - call a user modified routine.
TS_FILE = @[MOM6_WARMSTART_FILE] !
! The initial condition file for temperature.
TEMP_IC_VAR = "Temp" ! default = "PTEMP"
! The initial condition variable for potential temperature.
SALT_IC_VAR = "Salt" ! default = "SALT"
! The initial condition variable for salinity.
SALT_FILE = @[MOM6_WARMSTART_FILE] ! default = "none"
! The initial condition file for salinity.
VELOCITY_CONFIG = @[MOM6_INIT_UV] ! default = "zero"
! A string that determines how the initial velocities are specified for a new
! run:
! file - read velocities from the file specified
! by (VELOCITY_FILE).
! zero - the fluid is initially at rest.
! uniform - the flow is uniform (determined by
! parameters INITIAL_U_CONST and INITIAL_V_CONST).
! rossby_front - a mixed layer front in thermal wind balance.
! soliton - Equatorial Rossby soliton.
! USER - call a user modified routine.
VELOCITY_FILE = @[MOM6_WARMSTART_FILE] !
! The name of the velocity initial condition file.
U_IC_VAR = "u" ! default = "u"
! The initial condition variable for zonal velocity in VELOCITY_FILE.
V_IC_VAR = "v" ! default = "v"
! === module MOM_diag_mediator ===
!Jiande NUM_DIAG_COORDS = 2 ! default = 1
NUM_DIAG_COORDS = 1 ! default = 1
Expand Down
91 changes: 90 additions & 1 deletion tests/parm/MOM_input_100.IN
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ REMAPPING_SCHEME = "PPM_H4" ! default = "PLM"
! Parameters providing information about the lateral grid.

! === module MOM_state_initialization ===
INIT_LAYERS_FROM_Z_FILE = True ! [Boolean] default = False
INIT_LAYERS_FROM_Z_FILE = @[MOM6_INIT_FROM_Z] ! [Boolean] default = False
! If true, initialize the layer thicknesses, temperatures, and salinities from a
! Z-space file on a latitude-longitude grid.

Expand All @@ -310,7 +310,96 @@ Z_INIT_ALE_REMAPPING = True ! [Boolean] default = False
Z_INIT_REMAP_OLD_ALG = True ! [Boolean] default = False
! If false, uses the preferred remapping algorithm for initialization. If true,
! use an older, less robust algorithm for remapping.
! === WARMSTARTS ===
THICKNESS_CONFIG = "file" ! default = "uniform"
! A string that determines how the initial layer thicknesses are specified for a
! new run:
! file - read interface heights from the file specified
! by (THICKNESS_FILE).
! thickness_file - read thicknesses from the file specified
! by (THICKNESS_FILE).
! mass_file - read thicknesses in units of mass per unit area from the file
! specified by (THICKNESS_FILE).
! coord - determined by ALE coordinate.
! uniform - uniform thickness layers evenly distributed
! between the surface and MAXIMUM_DEPTH.
! list - read a list of positive interface depths.
! DOME - use a slope and channel configuration for the
! DOME sill-overflow test case.
! ISOMIP - use a configuration for the
! ISOMIP test case.
! benchmark - use the benchmark test case thicknesses.
! Neverworld - use the Neverworld test case thicknesses.
! search - search a density profile for the interface
! densities. This is not yet implemented.
! circle_obcs - the circle_obcs test case is used.
! DOME2D - 2D version of DOME initialization.
! adjustment2d - 2D lock exchange thickness ICs.
! sloshing - sloshing gravity thickness ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! soliton - Equatorial Rossby soliton.
! rossby_front - a mixed layer front in thermal wind balance.
! USER - call a user modified routine.

THICKNESS_FILE = @[MOM6_WARMSTART_FILE] !
! The name of the thickness file.
ADJUST_THICKNESS = True ! [Boolean] default = False
! If true, all mass below the bottom removed if the topography is shallower than
! the thickness input file would indicate.
THICKNESS_TOLERANCE = 0.1 ! [m] default = 0.1
! A parameter that controls the tolerance when adjusting the thickness to fit
! the bathymetry. Used when ADJUST_THICKNESS=True.
INTERFACE_IC_VAR = "eta" ! default = "eta"
! The variable name for initial conditions for interface heights relative to
! mean sea level, positive upward unless otherwise rescaled.
INTERFACE_IC_RESCALE = 1.0 ! [various] default = 1.0
! A factor by which to rescale the initial interface heights to convert them to
! units of m or correct sign conventions to positive upward.
TS_CONFIG = "file" !
! A string that determines how the initial temperatures and salinities are
! specified for a new run:
! file - read velocities from the file specified
! by (TS_FILE).
! fit - find the temperatures that are consistent with
! the layer densities and salinity S_REF.
! TS_profile - use temperature and salinity profiles
! (read from TS_FILE) to set layer densities.
! benchmark - use the benchmark test case T & S.
! linear - linear in logical layer space.
! DOME2D - 2D DOME initialization.
! ISOMIP - ISOMIP initialization.
! adjustment2d - 2d lock exchange T/S ICs.
! sloshing - sloshing mode T/S ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! rossby_front - a mixed layer front in thermal wind balance.
! SCM_CVMix_tests - used in the SCM CVMix tests.
! USER - call a user modified routine.
TS_FILE = @[MOM6_WARMSTART_FILE] !
! The initial condition file for temperature.
TEMP_IC_VAR = "Temp" ! default = "PTEMP"
! The initial condition variable for potential temperature.
SALT_IC_VAR = "Salt" ! default = "SALT"
! The initial condition variable for salinity.
SALT_FILE = @[MOM6_WARMSTART_FILE] ! default = "none"
! The initial condition file for salinity.
VELOCITY_CONFIG = @[MOM6_INIT_UV] ! default = "zero"
! A string that determines how the initial velocities are specified for a new
! run:
! file - read velocities from the file specified
! by (VELOCITY_FILE).
! zero - the fluid is initially at rest.
! uniform - the flow is uniform (determined by
! parameters INITIAL_U_CONST and INITIAL_V_CONST).
! rossby_front - a mixed layer front in thermal wind balance.
! soliton - Equatorial Rossby soliton.
! USER - call a user modified routine.
VELOCITY_FILE = @[MOM6_WARMSTART_FILE] !
! The name of the velocity initial condition file.
U_IC_VAR = "u" ! default = "u"
! The initial condition variable for zonal velocity in VELOCITY_FILE.
V_IC_VAR = "v" ! default = "v"
! === module MOM_diag_mediator ===
!Jiande NUM_DIAG_COORDS = 2 ! default = 1
NUM_DIAG_COORDS = 1
Expand Down
2 changes: 1 addition & 1 deletion tests/rt.conf
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ RUN | cpld_restart_gfsv17 | - noaacloud
RUN | cpld_mpi_gfsv17 | - noaacloud | |

#SFS
COMPILE | s2swa_32bit_pdlib_sfs | intel | -DAPP=S2SWA -D32BIT=ON -DHYDRO=ON -DCCPP_SUITES=FV3_GFS_v17_coupled_p8_ugwpv1 -DPDLIB=ON | - noaacloud | fv3 |
COMPILE | s2swa_pdlib_sfs | intel | -DAPP=S2SWA -DHYDRO=ON -DCCPP_SUITES=FV3_GFS_v17_coupled_p8_ugwpv1 -DPDLIB=ON | - noaacloud | fv3 |
RUN | cpld_control_sfs | - noaacloud | baseline |

COMPILE | s2swa_32bit_pdlib_debug | intel | -DAPP=S2SWA -D32BIT=ON -DCCPP_SUITES=FV3_GFS_v17_coupled_p8_ugwpv1 -DPDLIB=ON -DDEBUG=ON | - noaacloud jet | fv3 |
Expand Down
Loading
Loading