Skip to content

Commit

Permalink
try adding datm-s2sw test
Browse files Browse the repository at this point in the history
  • Loading branch information
DeniseWorthen committed Oct 2, 2024
1 parent fddf00f commit 5d1da3c
Show file tree
Hide file tree
Showing 5 changed files with 246 additions and 2 deletions.
6 changes: 4 additions & 2 deletions tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@
export OCN_tasks_cdeps_025=120
export ICE_tasks_cdeps_025=48

export WAV_tasks_cdeps=120

export INPES_aqm=33
export JNPES_aqm=8

Expand Down Expand Up @@ -1025,13 +1027,13 @@ export_ugwpv1() {
exit 1
;;
esac

if [[ ${DO_GSL_DRAG_SS} = .true. ]]; then export CDMBGWD=${CDMBGWD_GSL}; fi
if [[ ${SEDI_SEMI} = .true. ]]; then export DT_ATMOS=$((DT_ATMOS/2)); fi
export DT_INNER=${DT_ATMOS}

}


# Defaults for the CICE6 model namelist, mx100
export_cice6() {
Expand Down
8 changes: 8 additions & 0 deletions tests/fv3_conf/cpld_datm_cdeps.IN
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,14 @@ cp @[INPUTDATA_ROOT]/CICE_FIX/@[OCNRES]/grid_cice_NEMS_mx@[OCNRES].nc .
cp @[INPUTDATA_ROOT]/CICE_FIX/@[OCNRES]/kmtu_cice_NEMS_mx@[OCNRES].nc .
cp @[INPUTDATA_ROOT]/CICE_FIX/@[OCNRES]/mesh.mx@[OCNRES].nc .

# WW3 fix/input
if [[ $CPLWAV == .true. ]]; then
cp @[INPUTDATA_ROOT_WW3]/@[WW3_MODDEF] mod_def.ww3
if [[ ${WW3_DOMAIN:0:2} != mx ]]; then
cp @[INPUTDATA_ROOT_WW3]/@[MESH_WAV] .
fi
fi

if [ $WARM_START = .false. ]; then
# cold start
if [[ $OCNRES == '025' ]]; then
Expand Down
156 changes: 156 additions & 0 deletions tests/parm/ufs.configure.datm_s2sw_cdeps.IN
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
#############################################
#### UFS Run-Time Configuration File ######
#############################################

# ESMF #
logKindFlag: @[esmf_logkind]
globalResourceControl: false

# EARTH #
EARTH_component_list: MED ATM OCN ICE WAV
EARTH_attributes::
Verbosity = 0
::

# MED #
MED_model: @[med_model]
MED_petlist_bounds: @[med_petlist_bounds]

# ATM #
ATM_model: @[atm_model]
ATM_petlist_bounds: @[atm_petlist_bounds]
ATM_attributes::
Verbosity = 0
DumpFields = false
mesh_atm = @[MESH_ATM]
diro = "."
logfile = atm.log
stop_n = 24
stop_option = nhours
stop_ymd = -999
write_restart_at_endofrun = .true.
::

# OCN #
OCN_model: @[ocn_model]
OCN_petlist_bounds: @[ocn_petlist_bounds]
OCN_attributes::
Verbosity = 0
DumpFields = false
ProfileMemory = false
OverwriteSlice = true
mesh_ocn = @[MESH_OCN]
use_coldstart = @[use_coldstart]
use_mommesh = @[use_mommesh]
::

# ICE #
ICE_model: @[ice_model]
ICE_petlist_bounds: @[ice_petlist_bounds]
ICE_attributes::
Verbosity = 0
DumpFields = false
ProfileMemory = false
OverwriteSlice = true
mesh_ice = @[MESH_ICE]
eps_imesh = @[eps_imesh]
stop_n = @[RESTART_N]
stop_option = nhours
stop_ymd = -999
::

# WAV #
WAV_model: @[wav_model]
WAV_petlist_bounds: @[wav_petlist_bounds]
WAV_attributes::
Verbosity = 0
OverwriteSlice = false
mesh_wav = @[MESH_WAV]
user_histname = @[WW3_user_histname]
use_historync = @[WW3_historync]
use_restartnc = @[WW3_restartnc]
restart_from_binary = @[WW3_restart_from_binary]
pio_typename = @[WW3_PIO_FORMAT]
pio_numiotasks = @[WW3_PIO_IOTASKS]
pio_stride = @[WW3_PIO_STRIDE]
pio_rearranger = @[WW3_PIO_REARR]
pio_root = @[WW3_PIO_ROOT]
::

# CMEPS concurrent warm run sequence
runSeq::
@@[coupling_interval_slow_sec]
MED med_phases_prep_wav_avg
MED med_phases_prep_ocn_avg
MED -> WAV :remapMethod=redist
MED -> OCN :remapMethod=redist
WAV
OCN
@@[coupling_interval_fast_sec]
MED med_phases_prep_atm
MED med_phases_prep_ice
MED -> ATM :remapMethod=redist
MED -> ICE :remapMethod=redist
ATM
ICE
ATM -> MED :remapMethod=redist
MED med_phases_post_atm
ICE -> MED :remapMethod=redist
MED med_phases_post_ice
MED med_phases_ocnalb_run
MED med_phases_prep_ocn_accum
MED med_phases_prep_wav_accum
@
OCN -> MED :remapMethod=redist
WAV -> MED :remapMethod=redist
MED med_phases_post_ocn
MED med_phases_post_wav
MED med_phases_restart_write
@
::

# CMEPS variables

DRIVER_attributes::
::

MED_attributes::
Verbosity = 0
dbug_flag = 0
ATM_model = @[atm_model]
ICE_model = @[ice_model]
OCN_model = @[ocn_model]
WAV_model = @[wav_model]
coupling_mode = ufs.nfrac.aoflux
pio_rearranger = @[pio_rearranger]
::

ALLCOMP_attributes::
ScalarFieldCount = 3
ScalarFieldIdxGridNX = 1
ScalarFieldIdxGridNY = 2
ScalarFieldIdxNextSwCday = 3
ScalarFieldName = cpl_scalars
start_type = @[RUNTYPE]
restart_dir = @[CMEPS_RESTART_DIR]
case_name = datm.gefs
restart_n = @[RESTART_N]
restart_option = nhours
restart_ymd = -999
write_restart_at_endofrun = @[WRITE_ENDOFRUN_RESTART]
dbug_flag = @[cap_dbug_flag]
coldair_outbreak_mod = .false.
flds_wiso = .false.
flux_convergence = @[flux_convergence]
flux_max_iteration = @[flux_iteration]
ocn_surface_flux_scheme = @[flux_scheme]
orb_eccen = 1.e36
orb_iyear = 2000
orb_iyear_align = 2000
orb_mode = fixed_year
orb_mvelp = 1.e36
orb_obliq = 1.e36
stop_n = @[FHMAX]
stop_option = nhours
stop_ymd = -999
::
3 changes: 3 additions & 0 deletions tests/rt.ds2sw
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
### CDEPS Data Atmosphere tests with OCN+ICE+WAV ###
COMPILE | datm_s2sw | intel | -DAPP=DATM-S2SW | - wcoss2 | fv3 |
RUN | datm_s2sw_gfsv17 | - wcoss2 | baseline |
75 changes: 75 additions & 0 deletions tests/tests/datm_s2sw_gfsv17
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
#
# DATM_CDEPS_MOM6_CICE_CMEPS_GEFS test
#

export TEST_DESCR="DATM_CDEPS-MOM6-CICE-WW3-CMEPS_GEFS - 1/4deg ocean+ice + unstructured WW3 "

export CNTL_DIR=datm_s2sw_gfsv17

export LIST_FILES="RESTART/20111001.120000.MOM.res.nc \
RESTART/20111001.120000.MOM.res_1.nc \
RESTART/20111001.120000.MOM.res_2.nc \
RESTART/20111001.120000.MOM.res_3.nc \
RESTART/iced.2011-10-01-43200.nc \
RESTART/DATM_GEFS_NEW.cpl.r.2011-10-01-43200.nc"

export_datm_cdeps
export_ww3
export atm_datamode=GEFS
export DAYS=1.0
export FHMAX=24
export RESTART_N=${FHMAX}
export DT_DYNAM_MOM6=900
export DT_THERM_MOM6=1800

export IATM=1536
export JATM=768
export ATM_NX_GLB=$IATM
export ATM_NY_GLB=$JATM
export ATMRES=${IATM}x${JATM}
export DATM_SRC=GEFS_NEW
export FILEBASE_DATM=gefs
export MESH_ATM=${FILEBASE_DATM}_mesh.nc
export stream_files="INPUT/${FILEBASE_DATM}.201110.nc"
export STREAM_OFFSET=-21600

ATM_compute_tasks=${ATM_compute_tasks_cdeps_025}
OCN_tasks=${OCN_tasks_cdeps_025}
ICE_tasks=${ICE_tasks_cdeps_025}
WAV_tasks=${WAV_tasks_cdeps}

# ocn/ice resolution
export OCNRES=025
export ICERES=0.25
export NX_GLB=1440
export NY_GLB=1080
export CICE_NPROC=48
export np2=`expr $CICE_NPROC / 2`
export CICE_BLCKX=`expr $NX_GLB / $np2`
export CICE_BLCKY=`expr $NY_GLB / 2`
export CICE_DIAGFREQ=`expr $((FHMAX-$FHROT)) \* 3600 / $DT_CICE`

# resolution dependent files
export MOM6_INPUT=MOM_input_${OCNRES}.IN
export MESH_ICE=mesh.mx${OCNRES}.nc
export MESH_OCN=mesh.mx${OCNRES}.nc
export CICE_GRID=grid_cice_NEMS_mx${OCNRES}.nc
export CICE_MASK=kmtu_cice_NEMS_mx${OCNRES}.nc
export MOM6_CHLCLIM='"seawifs-clim-1997-2010.1440x1080.v20180328.nc"'
export MOM6_RIVER_RUNOFF=True
export MOM6_FRUNOFF=runoff.daitren.clim.1440x1080.v20180328.nc
export MOM6_RESTART_SETTING=r

# waves
export MOM6_USE_LI2016=True
export MOM6_USE_WAVES=True
export WW3_DOMAIN=global_270k
export MESH_WAV=mesh.${WW3_DOMAIN}.nc
export WW3_MODDEF=mod_def.exp.${WW3_DOMAIN}
# slow loop
export WW3_RSTFLDS="ice"

# used only in cpld_datm_cdeps.IN
export CPLWAV=.true.
export FV3_RUN=cpld_datm_cdeps.IN
export UFS_CONFIGURE=ufs.configure.datm_s2sw_cdeps.IN

0 comments on commit 5d1da3c

Please sign in to comment.