diff --git a/tests/rt.conf b/tests/rt.conf index 07fa091e1b..6e7ce6aa91 100644 --- a/tests/rt.conf +++ b/tests/rt.conf @@ -29,6 +29,7 @@ COMPILE | s2swa_32bit_pdlib | intel | -DAPP=S2SWA -D32BIT=ON -DCCPP_SUITES=FV3_ RUN | cpld_control_gfsv17 | - noaacloud | baseline | RUN | cpld_control_gfsv17_iau | - noaacloud | baseline | cpld_control_gfsv17 RUN | cpld_restart_gfsv17 | - noaacloud | | cpld_control_gfsv17 +RUN | cpld_restart_gfsv17_iau | - noaacloud | | cpld_control_gfsv17_iau RUN | cpld_mpi_gfsv17 | - noaacloud | | #SFS diff --git a/tests/tests/cpld_restart_gfsv17_iau b/tests/tests/cpld_restart_gfsv17_iau new file mode 100644 index 0000000000..ee1440194b --- /dev/null +++ b/tests/tests/cpld_restart_gfsv17_iau @@ -0,0 +1,165 @@ +# +# cpld_control GFSv17 test with IAU +# + +export TEST_DESCR="Fully coupled FV3-CCPP-MOM6-CICE-CMEPS-WW3 system - C96MX100 with IAU - restart" + +export CNTL_DIR=cpld_control_gfsv17_iau + +export LIST_FILES="sfcf024.nc \ + atmf024.nc \ + GFSFLX.GrbF24 \ + GFSPRS.GrbF24 \ + RESTART/20210323.120000.coupler.res \ + RESTART/20210323.120000.fv_core.res.nc \ + RESTART/20210323.120000.fv_core.res.tile1.nc \ + RESTART/20210323.120000.fv_core.res.tile2.nc \ + RESTART/20210323.120000.fv_core.res.tile3.nc \ + RESTART/20210323.120000.fv_core.res.tile4.nc \ + RESTART/20210323.120000.fv_core.res.tile5.nc \ + RESTART/20210323.120000.fv_core.res.tile6.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile1.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile2.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile3.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile4.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile5.nc \ + RESTART/20210323.120000.fv_srf_wnd.res.tile6.nc \ + RESTART/20210323.120000.fv_tracer.res.tile1.nc \ + RESTART/20210323.120000.fv_tracer.res.tile2.nc \ + RESTART/20210323.120000.fv_tracer.res.tile3.nc \ + RESTART/20210323.120000.fv_tracer.res.tile4.nc \ + RESTART/20210323.120000.fv_tracer.res.tile5.nc \ + RESTART/20210323.120000.fv_tracer.res.tile6.nc \ + RESTART/20210323.120000.phy_data.tile1.nc \ + RESTART/20210323.120000.phy_data.tile2.nc \ + RESTART/20210323.120000.phy_data.tile3.nc \ + RESTART/20210323.120000.phy_data.tile4.nc \ + RESTART/20210323.120000.phy_data.tile5.nc \ + RESTART/20210323.120000.phy_data.tile6.nc \ + RESTART/20210323.120000.sfc_data.tile1.nc \ + RESTART/20210323.120000.sfc_data.tile2.nc \ + RESTART/20210323.120000.sfc_data.tile3.nc \ + RESTART/20210323.120000.sfc_data.tile4.nc \ + RESTART/20210323.120000.sfc_data.tile5.nc \ + RESTART/20210323.120000.sfc_data.tile6.nc \ + RESTART/20210323.120000.MOM.res.nc \ + RESTART/iced.2021-03-23-43200.nc \ + RESTART/ufs.cpld.cpl.r.2021-03-23-43200.nc \ + MOM6_OUTPUT/ocn_2021_03_23_09.nc \ + history/iceh_06h.2021-03-23-43200.nc \ + 20210323.120000.out_pnt.ww3 \ + 20210323.120000.out_grd.ww3 " + +export_fv3 +export_cpl + +export CPLCHM=.false. +export DNATS=0 +export OUTPUT_GRID="gaussian_grid" +export WRITE_DOPOST=.true. + +export FHROT=18 +export FHMAX=30 +export RESTART_N=3 +export RESTART_INTERVAL="${RESTART_N} -1" +RESTHOUR=$(( ${FHROT} + ${SHOUR} )) +RESTSDAY=$SDAY +echo "RESTHOUR=$RESTHOUR,RESTSDAY=$RESTSDAY" +if [[ $RESTHOUR -ge 24 ]]; then + echo "compute resthour" + RESTHOUR=$(( ${FHROT} + ${SHOUR} - 24 )) + echo "compute restday" + RESTSDAY=$(( ${SDAY} + 1 )) +fi +echo "2RESTHOUR=$RESTHOUR,RESTSDAY=$RESTSDAY" +RESTSEC=$(( ${RESTHOUR} * 3600 )) +echo "RESTHOUR=$RESTHOUR,RESTSDAY=$RESTSDAY,RESTSEC=$RESTSEC" +export RESTART_FILE_PREFIX="${SYEAR}${SMONTH}${RESTSDAY}.$(printf "%02d" ${RESTHOUR})0000" +export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${RESTSDAY}-$(printf "%05d" ${RESTSEC})" +echo "RESTART_FILE_PREFIX=$RESTART_FILE_PREFIX" +echo "RESTART_FILE_SUFFIX_SECS=$RESTART_FILE_SUFFIX_SECS" + +# ATM warm start +export WARM_START=.true. +export MAKE_NH=.false. +export NA_INIT=0 +export EXTERNAL_IC=.false. +export NGGPS_IC=.false. +export MOUNTAIN=.true. + +# ICE warm start +export CICE_RUNTYPE=continue +export RUNTYPE=continue +export CICE_USE_RESTART_TIME=.true. + +# MOM6 warm start +export MOM6_RESTART_SETTING=r + +export MOM6_TOPOEDITS=ufs.topo_edits_011818.nc +export MOM6_ALLOW_LANDMASK_CHANGES=True +export eps_imesh=2.5e-1 +export CICE_DIAGFREQ=`expr $((FHMAX-$FHROT)) \* 3600 / $DT_CICE` + +export INPES=$INPES_cpl_unstr +export JNPES=$JNPES_cpl_unstr +export WRTTASK_PER_GROUP=$(( WPG_cpl_unstr * THRD_cpl_unstr )) + +OCN_tasks=$OCN_tasks_cpl_unstr +ICE_tasks=$ICE_tasks_cpl_unstr +WAV_tasks=$WAV_tasks_cpl_unstr + +export atm_omp_num_threads=$THRD_cpl_unstr +export med_omp_num_threads=$atm_omp_num_threads + +# UGWP1 +export GWD_OPT=2 +export CDMBWD=20.0,2.5,1.0,1.0 +export DO_UGWP_V1=.true. +export KNOB_UGWP_VERSION=1 +export KNOB_UGWP_NSLOPE=1 +export DO_UGWP_V0=.false. +export DO_GSL_DRAG_LS_BL=.true. +export DO_GSL_DRAG_SS=.true. +export DO_GSL_DRAG_TOFD=.true. +export DO_UGWP_V1_OROG_ONLY=.false. +export DO_UGWP_V0_NST_ONLY=.false. +export LDIAG_UGWP=.false. +export KNOB_UGWP_DOKDIS=2 +export KNOB_UGWP_NDX4LH=4 + +export WW3_DOMAIN=global_270k +export MESH_WAV=mesh.${WW3_DOMAIN}.nc +export WW3_MODDEF=mod_def.exp.${WW3_DOMAIN} + +export FV3_RUN=cpld_control_run.IN +export CCPP_SUITE=FV3_GFS_v17_coupled_p8_ugwpv1 +export FIELD_TABLE=field_table_thompson_noaero_tke_progsigma +export DIAG_TABLE=diag_table_cpld.IN +export INPUT_NML=global_control.nml.IN +export UFS_CONFIGURE=ufs.configure.s2sw.IN + +#GFSv17 settings +export PROGSIGMA=.true. +export IOPT_DIAG=1 + +#IAU +export CHOUR=12 +export IAU_OFFSET=6 +#export IAU_DELTHRS=6 +#export IAUFHRS='3 6 9' +#export IAU_INC_FILES="'fv_increment3.nc','fv_increment6.nc','fv_increment9.nc'" +#export ODA_INCUPD="True" +#export ODA_INCUPD_UV="True" + +if [[ $MACHINE_ID = hera ]] && [[ $RT_COMPILER = gnu ]]; then + WLCLK=40 +fi + +# HR4 GFSv17 GWD update +export DO_UGWP_V0=.false. +export DO_UGWP_V1=.true. +export DO_GSL_DRAG_LS_BL=.true. +export DO_GWD_OPT_PSL=.true. +export DO_GSL_DRAG_SS=.false. +export DO_GSL_DRAG_TOFD=.true. +