From 00b6264496a1b4f0f0868c02a4cfd530891db8a9 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 2 Aug 2024 12:37:05 -0500 Subject: [PATCH 01/32] point development forks for FV3 and NoahMP --- .gitmodules | 6 +++--- FV3 | 2 +- NOAHMP-interface/noahmp | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index a3775fc12d..0338e1d935 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,7 @@ [submodule "FV3"] path = FV3 - url = https://github.com/NOAA-EMC/fv3atm - branch = develop + url = https://github.com/uturuncoglu/fv3atm + branch = feature/s2s_with_lnd [submodule "WW3"] path = WW3 url = https://github.com/NOAA-EMC/WW3 @@ -45,4 +45,4 @@ [submodule "NOAHMP"] path = NOAHMP-interface/noahmp url = https://github.com/NOAA-EMC/noahmp - branch = develop + branch = feature/perf diff --git a/FV3 b/FV3 index 683061b3fd..008b8d5d93 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 683061b3fd58716625eed61d7a7143e985f733d4 +Subproject commit 008b8d5d936941945a221946737cb62338f361f8 diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index 1e259014c1..97e5dc7b48 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit 1e259014c1eba9070cec7027d8b4b479ae54275a +Subproject commit 97e5dc7b48cc4b2f808229de66e2e12bce871c03 From ceaafc4ee7067bdf5994cca6b19a0c041ae55df7 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 2 Aug 2024 16:40:40 -0500 Subject: [PATCH 02/32] add new RT for S2S with land component --- NOAHMP-interface/noahmp | 2 +- tests/fv3_conf/noahmp_run.IN | 27 ++- tests/parm/ufs.configure.s2swal_fast_esmf.IN | 196 +++++++++++++++++++ tests/rt.conf | 3 + tests/tests/cpld_control_p8_lnd | 96 +++++++++ 5 files changed, 314 insertions(+), 10 deletions(-) create mode 100644 tests/parm/ufs.configure.s2swal_fast_esmf.IN create mode 100644 tests/tests/cpld_control_p8_lnd diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index 97e5dc7b48..d765daf147 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit 97e5dc7b48cc4b2f808229de66e2e12bce871c03 +Subproject commit d765daf14706f3dbd8b27f0275c9b0b92c8e7271 diff --git a/tests/fv3_conf/noahmp_run.IN b/tests/fv3_conf/noahmp_run.IN index 6f4f8bd0da..6b0dd08a72 100644 --- a/tests/fv3_conf/noahmp_run.IN +++ b/tests/fv3_conf/noahmp_run.IN @@ -2,17 +2,14 @@ mkdir -p INPUT RESTART if [ "$LNDRES" = "C96" ]; then inputdir=FV3_input_data -elif [ "$LNDRES" = "C48" ]; then - inputdir=FV3_input_data48 -elif [ "$LNDRES" = "C192" ]; then - inputdir=FV3_input_data192 -elif [ "$LNDRES" = "C384" ]; then - inputdir=FV3_input_data384 -elif [ "$LNDRES" = "C768" ]; then - inputdir=FV3_input_data768 +else + inputdir=FV3_input_data${LNDRES#C} fi echo "inputdir=$inputdir,LNDRES=$LNDRES" +export OCNRES=100 +V2_SFC_FILE=${V2_SFC_FILE:-false} + if [ $DATM_CDEPS == true ]; then targetdir="./INPUT" rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc @@ -33,7 +30,19 @@ else fi if [ $WARM_START = .false. ]; then - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/. + if [ $S2S = true ]; then + if [ "$V2_SFC_FILE" = "true" ]; then + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_v2_sfc/sfc_data.tile*.nc ${targetdir}/. + else + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/. + fi + else + if [ "$V2_SFC_FILE" = "true" ]; then + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data.tile*.nc ${targetdir}/. + else + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data.tile*.nc ${targetdir}/. + fi + fi else # land restart file cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. diff --git a/tests/parm/ufs.configure.s2swal_fast_esmf.IN b/tests/parm/ufs.configure.s2swal_fast_esmf.IN new file mode 100644 index 0000000000..fbec273cac --- /dev/null +++ b/tests/parm/ufs.configure.s2swal_fast_esmf.IN @@ -0,0 +1,196 @@ +############################################# +#### UFS Run-Time Configuration File ###### +############################################# + +# ESMF # +logKindFlag: ESMF_LOGKIND_MULTI +globalResourceControl: true + +# EARTH # +EARTH_component_list: MED ATM CHM OCN ICE WAV LND +EARTH_attributes:: + Verbosity = 0 +:: + +# MED # +MED_model: @[med_model] +MED_petlist_bounds: @[med_petlist_bounds] +MED_omp_num_threads: @[med_omp_num_threads] + +# ATM # +ATM_model: @[atm_model] +ATM_petlist_bounds: @[atm_petlist_bounds] +ATM_omp_num_threads: @[atm_omp_num_threads] +ATM_attributes:: + Verbosity = 0 + DumpFields = false + ProfileMemory = false + OverwriteSlice = true +:: + +# CHM # +CHM_model: @[chm_model] +CHM_petlist_bounds: @[chm_petlist_bounds] +CHM_omp_num_threads: @[chm_omp_num_threads] +CHM_attributes:: + Verbosity = 0 +:: + +# OCN # +OCN_model: @[ocn_model] +OCN_petlist_bounds: @[ocn_petlist_bounds] +OCN_omp_num_threads: @[ocn_omp_num_threads] +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_omp_num_threads: @[ice_omp_num_threads] +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_omp_num_threads: @[wav_omp_num_threads] +WAV_attributes:: + Verbosity = 0 + OverwriteSlice = false + mesh_wav = @[MESH_WAV] + user_sets_restname = @[WW3_user_sets_restname] +:: + +# LND # +LND_model: @[lnd_model] +LND_petlist_bounds: @[lnd_petlist_bounds] +LND_omp_num_threads: @[lnd_omp_num_threads] +LND_attributes:: + Verbosity = 1 + Diagnostic = 0 + mosaic_file = @[mosaic_file] + input_dir = @[lnd_input_dir] + fixed_dir = @[lnd_fixed_dir] + ic_type = @[lnd_ic_type] + layout = @[layout_x]:@[layout_y] # need to be consistent with number of PEs + num_soil_levels = 4 + forcing_height = 10 + soil_level_thickness = 0.10:0.30:0.60:1.00 + soil_level_nodes = 0.05:0.25:0.70:1.50 + dynamic_vegetation_option = 4 + canopy_stomatal_resistance_option = 2 + soil_wetness_option = 1 + runoff_option = 1 + surface_exchange_option = 3 + supercooled_soilwater_option = 1 + frozen_soil_adjust_option = 1 + radiative_transfer_option = 3 + snow_albedo_option = @[snow_albedo_option] + precip_partition_option = @[precip_partition_option] + soil_temp_lower_bdy_option = 2 + soil_temp_time_scheme_option = 3 + surface_evap_resistance_option = 1 # not used, it is fixed to 4 in sfc_noahmp_drv.F90 + glacier_option = 1 + surface_thermal_roughness_option = 2 + output_freq = 3600 + restart_freq = -1 + calc_snet = @[CALC_SNET] + initial_albedo = @[initial_albedo] +:: + +# CMEPS warm run sequence +runSeq:: +@@[coupling_interval_slow_sec] + MED med_phases_prep_ocn_avg + MED -> OCN :remapMethod=redist + OCN + @@[coupling_interval_fast_sec] + MED med_phases_prep_atm + MED med_phases_prep_ice + MED med_phases_prep_lnd + MED med_phases_prep_wav_accum + MED med_phases_prep_wav_avg + MED -> ATM :remapMethod=redist + MED -> ICE :remapMethod=redist + MED -> LND :remapMethod=redist + MED -> WAV :remapMethod=redist + ATM phase1 + ATM -> CHM + CHM + CHM -> ATM + ATM phase2 + ICE + WAV + LND + ATM -> MED :remapMethod=redist + MED med_phases_post_atm + ICE -> MED :remapMethod=redist + MED med_phases_post_ice + LND -> MED :remapMethod=redist + MED med_phases_post_lnd + WAV -> MED :remapMethod=redist + MED med_phases_post_wav + MED med_phases_ocnalb_run + MED med_phases_prep_ocn_accum + @ + OCN -> MED :remapMethod=redist + MED med_phases_post_ocn + MED med_phases_restart_write +@ +:: + +# CMEPS variables + +DRIVER_attributes:: +:: + +MED_attributes:: + ATM_model = @[atm_model] + ICE_model = @[ice_model] + LND_model = @[lnd_model] + OCN_model = @[ocn_model] + WAV_model = @[wav_model] + coupling_mode = @[CPLMODE] + pio_rearranger = @[pio_rearranger] + ocean_albedo_limit = @[ocean_albedo_limit] +:: + +ALLCOMP_attributes:: + ScalarFieldCount = 3 + ScalarFieldIdxGridNX = 1 + ScalarFieldIdxGridNY = 2 + ScalarFieldIdxGridNTile = 3 + ScalarFieldName = cpl_scalars + start_type = @[RUNTYPE] + restart_dir = @[CMEPS_RESTART_DIR] + case_name = ufs.cpld + restart_n = @[RESTART_N] + restart_option = nhours + restart_ymd = -999 + dbug_flag = @[cap_dbug_flag] + stop_n = @[FHMAX] + stop_option = nhours + stop_ymd = -999 + orb_eccen = 1.e36 + orb_iyear = 2000 + orb_iyear_align = 2000 + orb_mode = fixed_year + orb_mvelp = 1.e36 + orb_obliq = 1.e36 +:: diff --git a/tests/rt.conf b/tests/rt.conf index 2fa9bfd999..5df44a910f 100644 --- a/tests/rt.conf +++ b/tests/rt.conf @@ -49,6 +49,9 @@ RUN | cpld_restart_c192_p8 | - wcoss2 jet acorn s4 RUN | cpld_bmark_p8 | - s4 jet acorn noaacloud | baseline | RUN | cpld_restart_bmark_p8 | - s4 jet acorn noaacloud | | cpld_bmark_p8 +COMPILE | s2swal | intel | -DAPP=S2SWAL -DCCPP_SUITES=FV3_GFS_v17_coupled_p8 | | fv3 | +RUN | cpld_control_p8_lnd | - noaacloud | baseline | + # Aerosol, no Wave RUN | cpld_s2sa_p8 | - noaacloud | baseline | diff --git a/tests/tests/cpld_control_p8_lnd b/tests/tests/cpld_control_p8_lnd new file mode 100644 index 0000000000..55be047c23 --- /dev/null +++ b/tests/tests/cpld_control_p8_lnd @@ -0,0 +1,96 @@ +# +# cpld_control P8 test with land component model +# + +source tests/cpld_control_p8 + +export TEST_DESCR="Fully coupled FV3-CCPP-GOCART-MOM6-CICE-CMEPS-WW3-NOAHMP system - C96MX100" + +export CNTL_DIR=cpld_control_p8_lnd + +export LIST_FILES="sfcf021.tile1.nc \ + sfcf021.tile2.nc \ + sfcf021.tile3.nc \ + sfcf021.tile4.nc \ + sfcf021.tile5.nc \ + sfcf021.tile6.nc \ + atmf021.tile1.nc \ + atmf021.tile2.nc \ + atmf021.tile3.nc \ + atmf021.tile4.nc \ + atmf021.tile5.nc \ + atmf021.tile6.nc \ + sfcf024.tile1.nc \ + sfcf024.tile2.nc \ + sfcf024.tile3.nc \ + sfcf024.tile4.nc \ + sfcf024.tile5.nc \ + sfcf024.tile6.nc \ + atmf024.tile1.nc \ + atmf024.tile2.nc \ + atmf024.tile3.nc \ + atmf024.tile4.nc \ + atmf024.tile5.nc \ + atmf024.tile6.nc \ + gocart.inst_aod.20210323_0600z.nc4 \ + RESTART/20210323.060000.coupler.res \ + RESTART/20210323.060000.fv_core.res.nc \ + RESTART/20210323.060000.fv_core.res.tile1.nc \ + RESTART/20210323.060000.fv_core.res.tile2.nc \ + RESTART/20210323.060000.fv_core.res.tile3.nc \ + RESTART/20210323.060000.fv_core.res.tile4.nc \ + RESTART/20210323.060000.fv_core.res.tile5.nc \ + RESTART/20210323.060000.fv_core.res.tile6.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile1.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile2.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile3.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile4.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile5.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile6.nc \ + RESTART/20210323.060000.fv_tracer.res.tile1.nc \ + RESTART/20210323.060000.fv_tracer.res.tile2.nc \ + RESTART/20210323.060000.fv_tracer.res.tile3.nc \ + RESTART/20210323.060000.fv_tracer.res.tile4.nc \ + RESTART/20210323.060000.fv_tracer.res.tile5.nc \ + RESTART/20210323.060000.fv_tracer.res.tile6.nc \ + RESTART/20210323.060000.phy_data.tile1.nc \ + RESTART/20210323.060000.phy_data.tile2.nc \ + RESTART/20210323.060000.phy_data.tile3.nc \ + RESTART/20210323.060000.phy_data.tile4.nc \ + RESTART/20210323.060000.phy_data.tile5.nc \ + RESTART/20210323.060000.phy_data.tile6.nc \ + RESTART/20210323.060000.sfc_data.tile1.nc \ + RESTART/20210323.060000.sfc_data.tile2.nc \ + RESTART/20210323.060000.sfc_data.tile3.nc \ + RESTART/20210323.060000.sfc_data.tile4.nc \ + RESTART/20210323.060000.sfc_data.tile5.nc \ + RESTART/20210323.060000.sfc_data.tile6.nc \ + RESTART/20210323.060000.MOM.res.nc \ + RESTART/iced.2021-03-23-21600.nc \ + RESTART/ufs.cpld.cpl.r.2021-03-23-21600.nc \ + 20210323.060000.out_pnt.ww3 \ + 20210323.060000.out_grd.ww3 \ + ufs.cpld.lnd.out.2021-03-23-21600.tile1.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile2.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile3.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile4.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" + +export CPLLND=.true. +export CPLLND2ATM=.true. +export UFS_CONFIGURE=ufs.configure.s2swal_fast_esmf.IN +export lnd_model=noahmp +export LND_tasks=144 +export lnd_ic_type=sfc +export CALC_SNET=.false. +export layout_x=3 +export layout_y=8 +export LNDRES=C96 +export coupling_interval_sec=720 +export snow_albedo_option=1 +export precip_partition_option=4 +export initial_albedo=0.2 +export lnd_input_dir="INPUT/" +export lnd_fixed_dir="./" +export mosaic_file="INPUT/${LNDRES}_mosaic.nc" From 78948b1250b6e9cc429a5da5f4b325b587eacf16 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Tue, 3 Sep 2024 18:04:05 -0500 Subject: [PATCH 03/32] simplify tests --- tests/parm/ufs.configure.atm_lnd.IN | 1 + tests/tests/control_p8_atmlnd | 120 +------------------------ tests/tests/control_restart_p8_atmlnd | 125 +------------------------- 3 files changed, 7 insertions(+), 239 deletions(-) diff --git a/tests/parm/ufs.configure.atm_lnd.IN b/tests/parm/ufs.configure.atm_lnd.IN index de2991fcac..d36dcd2510 100644 --- a/tests/parm/ufs.configure.atm_lnd.IN +++ b/tests/parm/ufs.configure.atm_lnd.IN @@ -46,6 +46,7 @@ LND_attributes:: Diagnostic = 0 mosaic_file = @[mosaic_file] input_dir = @[lnd_input_dir] + fixed_dir = @[lnd_fixed_dir] ic_type = @[lnd_ic_type] layout = @[layout_x]:@[layout_y] # need to be consistent with number of PEs num_soil_levels = 4 diff --git a/tests/tests/control_p8_atmlnd b/tests/tests/control_p8_atmlnd index 68b65d0e5b..cf49fc25fb 100644 --- a/tests/tests/control_p8_atmlnd +++ b/tests/tests/control_p8_atmlnd @@ -4,6 +4,8 @@ # ############################################################################### +source tests/control_p8 + export TEST_DESCR="Compare global control results with previous trunk version" export CNTL_DIR=control_p8_atmlnd @@ -95,124 +97,7 @@ export LIST_FILES="sfcf000.tile1.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" -export_fv3 -export_tiled -export NPZ=127 -export NPZP=128 -export DT_ATMOS=720 -export DT_INNER=${DT_ATMOS} -export SYEAR=2021 -export SMONTH=03 -export SDAY=22 -export SHOUR=06 -export RESTART_INTERVAL="12 -1" -export OUTPUT_GRID='cubed_sphere_grid' -export WRITE_DOPOST=.false. -export OUTPUT_FH='0 21 24' - -export IALB=2 -export IEMS=2 -export LSM=2 -export IOPT_DVEG=4 -export IOPT_CRS=2 -export IOPT_RAD=3 -export IOPT_ALB=1 -export IOPT_STC=3 -export IOPT_SFC=3 -export IOPT_TRS=2 -export IOPT_DIAG=2 - -export D2_BG_K1=0.20 -export D2_BG_K2=0.04 -export PSM_BC=1 -export DDDMP=0.1 - -# Merra2 Aerosols & NSST -export USE_MERRA2=.true. -export IAER=1011 -export NSTF_NAME=2,1,0,0,0 - -export LHEATSTRG=.false. -export LSEASPRAY=.true. - -# UGWP1 -export GWD_OPT=2 -export DO_UGWP_V1=.false. -export KNOB_UGWP_VERSION=0 -export KNOB_UGWP_NSLOPE=1 -export DO_UGWP_V0=.true. -export DO_GSL_DRAG_LS_BL=.false. -export DO_GSL_DRAG_SS=.true. -export DO_GSL_DRAG_TOFD=.false. -export DO_UGWP_V1_OROG_ONLY=.false. -export DO_UGWP_V0_NST_ONLY=.false. -export LDIAG_UGWP=.false. - -# CA -export DO_CA=.true. -export CA_SGS=.true. -export CA_GLOBAL=.false. -export NCA=1 -export NCELLS=5 -export NLIVES=12 -export NTHRESH=18 -export NSEED=1 -export NFRACSEED=0.5 -export CA_TRIGGER=.true. -export NSPINUP=1 -export ISEED_CA=12345 - -export TILEDFIX=.true. -export FNALBC="'INPUT/C96.snowfree_albedo.tileX.nc'" -export FNALBC2="'INPUT/C96.facsf.tileX.nc'" -export FNTG3C="'INPUT/C96.substrate_temperature.tileX.nc'" -export FNVEGC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVETC="'INPUT/C96.vegetation_type.tileX.nc'" -export FNSOTC="'INPUT/C96.soil_type.tileX.nc'" -export FNSOCC="'INPUT/C96.soil_color.tileX.nc'" -export FNSMCC_control="'global_soilmgldas.statsgo.t1534.3072.1536.grb'" -export FNMSKH_control="'global_slmask.t1534.3072.1536.grb'" -export FNSMCC=${FNSMCC_control} -export FNMSKH=${FNMSKH_control} -export FNVMNC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVMXC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNSLPC="'INPUT/C96.slope_type.tileX.nc'" -export FNABSC="'INPUT/C96.maximum_snow_albedo.tileX.nc'" -export LANDICE=".false." -export FSICL=0 -export FSICS=0 - -export IMP_PHYSICS=8 -export LGFDLMPRAD=.false. -export DO_SAT_ADJ=.false. -export DNATS=0 -export DZ_MIN=6 - -#required for NML.IN sharing -export MIN_SEAICE=0.15 -export FRAC_GRID=.true. -export MOM6_OUTPUT_DIR=./MOM6_OUTPUT -export MOM6_RESTART_DIR=./RESTART/ -export MOM6_RESTART_SETTING=n -# Following not used for standalone -export USE_CICE_ALB=.false. - -export WRITE_NSFLIP=.true. - export FV3_RUN="control_run.IN noahmp_run.IN" -export CCPP_SUITE=FV3_GFS_v17_p8 -export FIELD_TABLE=field_table_thompson_noaero_tke -export DIAG_TABLE=diag_table_cpld.IN -export INPUT_NML=global_control.nml.IN -export V2_SFC_FILE=true - -# RRTMGP -export DO_RRTMGP=.false. -export DOGP_CLDOPTICS_LUT=.true. -export DOGP_LWSCAT=.true. -export DOGP_SGS_CNV=.true. - -export SATMEDMF=.true. export CPLLND=.true. export CPLLND2ATM=.true. @@ -246,4 +131,5 @@ else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" fi +export lnd_fixed_dir="./" export MOM6_TOPOEDITS="" diff --git a/tests/tests/control_restart_p8_atmlnd b/tests/tests/control_restart_p8_atmlnd index a52c955dbe..dc752a951a 100644 --- a/tests/tests/control_restart_p8_atmlnd +++ b/tests/tests/control_restart_p8_atmlnd @@ -4,6 +4,8 @@ # ############################################################################### +source tests/control_restart_p8 + export TEST_DESCR="Compare global control results with previous trunk version" export CNTL_DIR=control_p8_atmlnd @@ -27,130 +29,8 @@ export LIST_FILES="sfcf024.tile1.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" -export_fv3 -export_tiled -export NPZ=127 -export NPZP=128 -export DT_ATMOS=720 -export DT_INNER=${DT_ATMOS} -export SYEAR=2021 -export SMONTH=03 -export SDAY=22 -export SHOUR=06 -export OUTPUT_GRID='cubed_sphere_grid' -export WRITE_DOPOST=.false. -export FHROT=12 -export RESTART_FILE_PREFIX="${SYEAR}${SMONTH}${SDAY}.$(printf "%02d" $(( ${SHOUR} + ${FHROT} )))0000" export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%02d" $(( (${FHROT}+${SHOUR})*3600 )))" - -export WARM_START=.true. -export NGGPS_IC=.false. -export EXTERNAL_IC=.false. -export MAKE_NH=.false. -export MOUNTAIN=.true. -export NA_INIT=0 - -export IALB=2 -export IEMS=2 -export LSM=2 -export IOPT_DVEG=4 -export IOPT_CRS=2 -export IOPT_RAD=3 -export IOPT_ALB=1 -export IOPT_STC=3 -export IOPT_SFC=3 -export IOPT_TRS=2 -export IOPT_DIAG=2 - -export D2_BG_K1=0.20 -export D2_BG_K2=0.04 -export PSM_BC=1 -export DDDMP=0.1 - -# Merra2 Aerosols & NSST -export USE_MERRA2=.true. -export IAER=1011 -export NSTF_NAME=2,0,0,0,0 - -export LHEATSTRG=.false. -export LSEASPRAY=.true. - -# UGWP1 -export GWD_OPT=2 -export DO_UGWP_V1=.false. -export KNOB_UGWP_VERSION=0 -export KNOB_UGWP_NSLOPE=1 -export DO_UGWP_V0=.true. -export DO_GSL_DRAG_LS_BL=.false. -export DO_GSL_DRAG_SS=.true. -export DO_GSL_DRAG_TOFD=.false. -export DO_UGWP_V1_OROG_ONLY=.false. -export DO_UGWP_V0_NST_ONLY=.false. -export LDIAG_UGWP=.false. - -# CA -export DO_CA=.true. -export CA_SGS=.true. -export CA_GLOBAL=.false. -export NCA=1 -export NCELLS=5 -export NLIVES=12 -export NTHRESH=18 -export NSEED=1 -export NFRACSEED=0.5 -export CA_TRIGGER=.true. -export NSPINUP=1 -export ISEED_CA=12345 - -export TILEDFIX=.true. -export FNALBC="'INPUT/C96.snowfree_albedo.tileX.nc'" -export FNALBC2="'INPUT/C96.facsf.tileX.nc'" -export FNTG3C="'INPUT/C96.substrate_temperature.tileX.nc'" -export FNVEGC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVETC="'INPUT/C96.vegetation_type.tileX.nc'" -export FNSOTC="'INPUT/C96.soil_type.tileX.nc'" -export FNSOCC="'INPUT/C96.soil_color.tileX.nc'" -export FNSMCC=${FNSMCC_control} -export FNMSKH=${FNMSKH_control} -export FNVMNC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVMXC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNSLPC="'INPUT/C96.slope_type.tileX.nc'" -export FNABSC="'INPUT/C96.maximum_snow_albedo.tileX.nc'" -export LANDICE=".false." -export FSICL=0 -export FSICS=0 - -export IMP_PHYSICS=8 -export LGFDLMPRAD=.false. -export DO_SAT_ADJ=.false. -export DNATS=0 -export DZ_MIN=6 - -#required for NML.IN sharing -export MIN_SEAICE=0.15 -export FRAC_GRID=.true. -export MOM6_OUTPUT_DIR=./MOM6_OUTPUT -export MOM6_RESTART_DIR=./RESTART/ -export MOM6_RESTART_SETTING=n -# Following not used for standalone -export USE_CICE_ALB=.false. - -export WRITE_NSFLIP=.true. - export FV3_RUN="control_run.IN noahmp_run.IN" -export CCPP_SUITE=FV3_GFS_v17_p8 -export FIELD_TABLE=field_table_thompson_noaero_tke -export DIAG_TABLE=diag_table_cpld.IN -export INPUT_NML=global_control.nml.IN -export V2_SFC_FILE=true - -# RRTMGP -export DO_RRTMGP=.false. -export DOGP_CLDOPTICS_LUT=.true. -export DOGP_LWSCAT=.true. -export DOGP_SGS_CNV=.true. - -export SATMEDMF=.true. export CPLLND=.true. export CPLLND2ATM=.true. @@ -184,4 +64,5 @@ else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" fi +export lnd_fixed_dir="./" export MOM6_TOPOEDITS="" From b8c5f1c649101cec190858999c8c67d2f7231507 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Tue, 3 Sep 2024 22:34:18 -0500 Subject: [PATCH 04/32] fix support for high resolution land --- tests/tests/control_p8_atmlnd | 3 ++- tests/tests/control_restart_p8_atmlnd | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/tests/control_p8_atmlnd b/tests/tests/control_p8_atmlnd index cf49fc25fb..bbb8adf58f 100644 --- a/tests/tests/control_p8_atmlnd +++ b/tests/tests/control_p8_atmlnd @@ -127,9 +127,10 @@ export OUTPUT_FH="1 -1" if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" export mosaic_file="INPUT/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="./" else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="INPUT/${LNDRES}/" fi -export lnd_fixed_dir="./" export MOM6_TOPOEDITS="" diff --git a/tests/tests/control_restart_p8_atmlnd b/tests/tests/control_restart_p8_atmlnd index dc752a951a..f9da9e24f8 100644 --- a/tests/tests/control_restart_p8_atmlnd +++ b/tests/tests/control_restart_p8_atmlnd @@ -60,9 +60,10 @@ export OUTPUT_FH="1 -1" if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" export mosaic_file="INPUT/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="./" else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="INPUT/${LNDRES}/" fi -export lnd_fixed_dir="./" export MOM6_TOPOEDITS="" From b0cfec2246ac1133480d064468eaead4f865b5e6 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Tue, 3 Sep 2024 22:36:41 -0500 Subject: [PATCH 05/32] update nuopc specific run script --- tests/fv3_conf/noahmp_run.IN | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/fv3_conf/noahmp_run.IN b/tests/fv3_conf/noahmp_run.IN index 6b0dd08a72..1174a7ab4f 100644 --- a/tests/fv3_conf/noahmp_run.IN +++ b/tests/fv3_conf/noahmp_run.IN @@ -7,7 +7,7 @@ else fi echo "inputdir=$inputdir,LNDRES=$LNDRES" -export OCNRES=100 +export OCNRES=025 V2_SFC_FILE=${V2_SFC_FILE:-false} if [ $DATM_CDEPS == true ]; then @@ -50,7 +50,6 @@ else RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . ls -1 ${RFILE}>rpointer.cpl - # link grid spec file fi fi From c5fe85688947313689f6dceb0bb7c10d8724d680 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Tue, 3 Sep 2024 22:37:55 -0500 Subject: [PATCH 06/32] remove land specific customization --- tests/fv3_conf/control_run.IN | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/tests/fv3_conf/control_run.IN b/tests/fv3_conf/control_run.IN index 30634250d8..b558360c6b 100644 --- a/tests/fv3_conf/control_run.IN +++ b/tests/fv3_conf/control_run.IN @@ -90,11 +90,7 @@ else fi if [ $TILEDFIX = .true. ]; then - if [ $CPLLND == .true. ]; then - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc INPUT/. - else - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc . - fi + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc . cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb . cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb . cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb . From 8ec1942db1bfe933b790607a3a0333a2c3d41044 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Wed, 4 Sep 2024 11:49:42 -0500 Subject: [PATCH 07/32] add missing test option --- tests/tests/datm_cdeps_lnd_era5 | 1 + tests/tests/datm_cdeps_lnd_era5_rst | 1 + tests/tests/datm_cdeps_lnd_gswp3 | 1 + 3 files changed, 3 insertions(+) diff --git a/tests/tests/datm_cdeps_lnd_era5 b/tests/tests/datm_cdeps_lnd_era5 index 5e889fff1f..7387f2d93b 100644 --- a/tests/tests/datm_cdeps_lnd_era5 +++ b/tests/tests/datm_cdeps_lnd_era5 @@ -46,6 +46,7 @@ export ATM_compute_tasks=144 export LND_tasks=144 export lnd_ic_type='custom' export lnd_input_dir='INPUT/' +export lnd_fixed_dir='INPUT/' export CALC_SNET=.true. export layout_x=3 export layout_y=8 diff --git a/tests/tests/datm_cdeps_lnd_era5_rst b/tests/tests/datm_cdeps_lnd_era5_rst index 70e6c4c5e3..fa80a10f10 100644 --- a/tests/tests/datm_cdeps_lnd_era5_rst +++ b/tests/tests/datm_cdeps_lnd_era5_rst @@ -47,6 +47,7 @@ export ATM_compute_tasks=144 export LND_tasks=144 export lnd_ic_type='custom' export lnd_input_dir='INPUT/' +export lnd_fixed_dir='INPUT/' export CALC_SNET=.true. export layout_x=3 export layout_y=8 diff --git a/tests/tests/datm_cdeps_lnd_gswp3 b/tests/tests/datm_cdeps_lnd_gswp3 index 5905ef145a..e9de3bce8d 100644 --- a/tests/tests/datm_cdeps_lnd_gswp3 +++ b/tests/tests/datm_cdeps_lnd_gswp3 @@ -50,6 +50,7 @@ export ICE_tasks=0 export LND_tasks=144 export lnd_ic_type='custom' export lnd_input_dir='INPUT/' +export lnd_fixed_dir='INPUT/' export CALC_SNET=.true. export layout_x=3 export layout_y=8 From 72e64060bdeb62d2ada12e96cbbe1466c53adfd4 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Wed, 4 Sep 2024 11:51:04 -0500 Subject: [PATCH 08/32] update new fully coupled test --- tests/tests/cpld_control_p8_lnd | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/tests/cpld_control_p8_lnd b/tests/tests/cpld_control_p8_lnd index 55be047c23..226f58551a 100644 --- a/tests/tests/cpld_control_p8_lnd +++ b/tests/tests/cpld_control_p8_lnd @@ -91,6 +91,12 @@ export coupling_interval_sec=720 export snow_albedo_option=1 export precip_partition_option=4 export initial_albedo=0.2 -export lnd_input_dir="INPUT/" -export lnd_fixed_dir="./" -export mosaic_file="INPUT/${LNDRES}_mosaic.nc" +if [[ "$ATMRES" = "$LNDRES" ]]; then + export lnd_input_dir="INPUT/" + export mosaic_file="INPUT/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="./" +else + export lnd_input_dir="INPUT/${LNDRES}/" + export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="INPUT/${LNDRES}/" +fi From 00714622725acaabf3ce6a23606673ccda01ac5b Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Wed, 4 Sep 2024 12:01:46 -0500 Subject: [PATCH 09/32] sync components --- CDEPS-interface/CDEPS | 2 +- CICE-interface/CICE | 2 +- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- HYCOM-interface/HYCOM | 2 +- MOM6-interface/MOM6 | 2 +- WW3 | 2 +- stochastic_physics | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index 3d7067a523..1f9eaaa142 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit 3d7067a523b8557058755289e4275f5f5c985daf +Subproject commit 1f9eaaa142c8b07ed6b788c9f44ea02cc86d0bae diff --git a/CICE-interface/CICE b/CICE-interface/CICE index c9e4679f44..2ffee5cd48 160000 --- a/CICE-interface/CICE +++ b/CICE-interface/CICE @@ -1 +1 @@ -Subproject commit c9e4679f449e30bb4cc0f22164b4401a8b50f7a6 +Subproject commit 2ffee5cd48e0c389bdf75c0d910b3f6d53263563 diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 4e19850cb0..663554e1c1 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 4e19850cb083bc474b7cde5dc2f8506ec74cc442 +Subproject commit 663554e1c1724ade6292cf0a28a3c19e59caf980 diff --git a/FV3 b/FV3 index 008b8d5d93..7f783c2edb 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 008b8d5d936941945a221946737cb62338f361f8 +Subproject commit 7f783c2edbbb47865cdd78887dd3deb851799d76 diff --git a/HYCOM-interface/HYCOM b/HYCOM-interface/HYCOM index 35789c7577..bcf7777bb0 160000 --- a/HYCOM-interface/HYCOM +++ b/HYCOM-interface/HYCOM @@ -1 +1 @@ -Subproject commit 35789c757766e07f688b4c0c7c5229816f224b09 +Subproject commit bcf7777bb037ae2feb2a8a8ac51aacb3511b52d9 diff --git a/MOM6-interface/MOM6 b/MOM6-interface/MOM6 index 0730606b80..00f8ea2023 160000 --- a/MOM6-interface/MOM6 +++ b/MOM6-interface/MOM6 @@ -1 +1 @@ -Subproject commit 0730606b808f2979241d850e763955f5526a980c +Subproject commit 00f8ea2023f5ed58f0605cea373094f65ee90f64 diff --git a/WW3 b/WW3 index d9b3172f41..7f548c795a 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit d9b3172f4197c65d471662c6952a668152d71230 +Subproject commit 7f548c795a348bbb0fe4967dd25692c79036dc73 diff --git a/stochastic_physics b/stochastic_physics index 31e4e3e57b..fad2fe9f42 160000 --- a/stochastic_physics +++ b/stochastic_physics @@ -1 +1 @@ -Subproject commit 31e4e3e57bad8a7cdaa0ce2d3c4efbca63b5f74a +Subproject commit fad2fe9f42f6b7f744b128b4a2a9433f91e4296f From 0db43c46e76953960a4bc4e4d144f9ba87695041 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 21:50:42 -0600 Subject: [PATCH 10/32] point CMEPS fork --- .gitmodules | 4 ++-- CMEPS-interface/CMEPS | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index 0338e1d935..2e9d71d323 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,8 +16,8 @@ branch = develop [submodule "CMEPS"] path = CMEPS-interface/CMEPS - url = https://github.com/NOAA-EMC/CMEPS - branch = emc/develop + url = https://github.com/uturuncoglu/CMEPS + branch = feature/land [submodule "HYCOM"] path = HYCOM-interface/HYCOM url = https://github.com/NOAA-EMC/HYCOM-src diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 663554e1c1..6e81f683e3 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 663554e1c1724ade6292cf0a28a3c19e59caf980 +Subproject commit 6e81f683e30f11afdc56414d04a3775ec5c563f7 From c09ac9d629d628e3fe4175584be249bd88a9b084 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 21:52:13 -0600 Subject: [PATCH 11/32] update S2S RT with land component --- tests/parm/ufs.configure.s2swal_fast_esmf.IN | 1 + tests/tests/cpld_control_p8_lnd | 2 ++ 2 files changed, 3 insertions(+) diff --git a/tests/parm/ufs.configure.s2swal_fast_esmf.IN b/tests/parm/ufs.configure.s2swal_fast_esmf.IN index fbec273cac..de3b139f3c 100644 --- a/tests/parm/ufs.configure.s2swal_fast_esmf.IN +++ b/tests/parm/ufs.configure.s2swal_fast_esmf.IN @@ -169,6 +169,7 @@ MED_attributes:: coupling_mode = @[CPLMODE] pio_rearranger = @[pio_rearranger] ocean_albedo_limit = @[ocean_albedo_limit] + samegrid_atmlnd = @[samegrid_atmlnd] :: ALLCOMP_attributes:: diff --git a/tests/tests/cpld_control_p8_lnd b/tests/tests/cpld_control_p8_lnd index 226f58551a..30614ee4ac 100644 --- a/tests/tests/cpld_control_p8_lnd +++ b/tests/tests/cpld_control_p8_lnd @@ -95,8 +95,10 @@ if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" export mosaic_file="INPUT/${LNDRES}_mosaic.nc" export lnd_fixed_dir="./" + export samegrid_atmlnd=.true. else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" export lnd_fixed_dir="INPUT/${LNDRES}/" + export samegrid_atmlnd=.false. fi From 6e668186455017d6ebd3061c4ac40f35cf449217 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 21:53:26 -0600 Subject: [PATCH 12/32] add new S2S app with land component --- CMakeLists.txt | 4 ++-- cmake/configure_apps.cmake | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e5fdd1e83a..e82c71a561 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules) ############################################################################### # Valid applications and choices -list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATMWM ATML LND S2S S2SA S2SW S2SWA S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS) +list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATMWM ATML LND S2S S2SL S2SA S2SW S2SWL S2SWA S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS) set(APP NONE CACHE BOOL "Application Name") if(NOT (APP IN_LIST VALID_APPS)) message(FATAL_ERROR "${APP} is not a valid application.\nValid Applications are: ${VALID_APPS}") @@ -152,7 +152,7 @@ if(FMS) find_package(FMS 2022.04 REQUIRED COMPONENTS R4 R8) if(APP MATCHES "^(HAFSW)$") add_library(fms ALIAS FMS::fms_r4) - elseif (APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL|ATM_DS2S|ATM_DS2S-PCICE|NG-GODAS|HAFS-MOM6|HAFS-MOM6W)$") + elseif (APP MATCHES "^(S2S|S2SA|S2SL|S2SW|S2SWL|S2SWA|S2SWAL|ATM_DS2S|ATM_DS2S-PCICE|NG-GODAS|HAFS-MOM6|HAFS-MOM6W)$") add_library(fms ALIAS FMS::fms_r8) endif() if(APP MATCHES "^(ATM|ATMAERO|ATMAQ|ATMWM|ATMW|ATML|HAFS|HAFS-ALL)$") diff --git a/cmake/configure_apps.cmake b/cmake/configure_apps.cmake index b6db3a5759..f5e3acfcab 100644 --- a/cmake/configure_apps.cmake +++ b/cmake/configure_apps.cmake @@ -46,7 +46,7 @@ if(APP MATCHES "^(NG-GODAS)$") message("Configuring UFS app in (CDEPS) Data Atmosphere mode") endif() -if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$") +if(APP MATCHES "^(S2S|S2SL|S2SA|S2SW|S2SWL|S2SWA|S2SWAL)$") set(APP_MSG "Configuring UFS app in S2S") set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE) set(FMS ON CACHE BOOL "Enable FMS" FORCE) @@ -55,7 +55,7 @@ if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$") set(CICE6 ON CACHE BOOL "Enable CICE6" FORCE) set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE) set(STOCH_PHYS ON CACHE BOOL "Enable Stochastic Physics" FORCE) - if(APP MATCHES "^(S2SW|S2SWA|S2SWAL)") + if(APP MATCHES "^(S2SW|S2SWL|S2SWA|S2SWAL)") set(WW3 ON CACHE BOOL "Enable WAVEWATCH III" FORCE) string(CONCAT APP_MSG ${APP_MSG} " with Waves") endif() @@ -63,7 +63,7 @@ if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$") set(UFS_GOCART ON CACHE BOOL "Enable GOCART" FORCE) string(CONCAT APP_MSG ${APP_MSG} " with Aerosols") endif() - if(APP MATCHES "^S2SWAL") + if(APP MATCHES "^(S2SL|S2SWL|S2SWAL)") set(NOAHMP ON CACHE BOOL "Enable NOAHMP" FORCE) endif() message("${APP_MSG} mode") From e9a21cb9fa536ae1b8a8bc2eae849d956bdd2904 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 21:55:08 -0600 Subject: [PATCH 13/32] sync noahmp component --- NOAHMP-interface/noahmp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index d765daf147..c7006992d4 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit d765daf14706f3dbd8b27f0275c9b0b92c8e7271 +Subproject commit c7006992d4fd828d5e799cc1316c5e42d8f8b4c4 From f239eb1c45c2217b5cf5201df0240965b11f9ff0 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 23:24:32 -0600 Subject: [PATCH 14/32] more work for s2s configuration --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 7f783c2edb..1f98dc876b 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 7f783c2edbbb47865cdd78887dd3deb851799d76 +Subproject commit 1f98dc876bacb666ea883d700ddcc1bacac062d7 From 5de44190b81a5efe85c6e1ddda7a9dcdd2f3d5cf Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 7 Nov 2024 23:27:31 -0600 Subject: [PATCH 15/32] update land component --- NOAHMP-interface/noahmp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index c7006992d4..432435202a 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit c7006992d4fd828d5e799cc1316c5e42d8f8b4c4 +Subproject commit 432435202a88f3b225af08dc0e701ae2401944b2 From 0da66c5f88cf68e7b966f577098def0178bb9500 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Mon, 11 Nov 2024 00:57:35 -0600 Subject: [PATCH 16/32] update data atmosphere configurations --- tests/tests/datm_cdeps_lnd_era5 | 1 + tests/tests/datm_cdeps_lnd_era5_rst | 1 + tests/tests/datm_cdeps_lnd_gswp3 | 1 + 3 files changed, 3 insertions(+) diff --git a/tests/tests/datm_cdeps_lnd_era5 b/tests/tests/datm_cdeps_lnd_era5 index 7387f2d93b..782a17caad 100644 --- a/tests/tests/datm_cdeps_lnd_era5 +++ b/tests/tests/datm_cdeps_lnd_era5 @@ -38,6 +38,7 @@ export UFS_CONFIGURE=ufs.configure.atm_lnd.IN export med_model=cmeps export atm_model=datm export lnd_model=noahmp +export samegrid_atmlnd=.false. export CPLMODE=ufs.nfrac.aoflux export RUNTYPE=startup export READRESTART=.false. diff --git a/tests/tests/datm_cdeps_lnd_era5_rst b/tests/tests/datm_cdeps_lnd_era5_rst index fa80a10f10..d7ce2ef693 100644 --- a/tests/tests/datm_cdeps_lnd_era5_rst +++ b/tests/tests/datm_cdeps_lnd_era5_rst @@ -39,6 +39,7 @@ export UFS_CONFIGURE=ufs.configure.atm_lnd.IN export med_model=cmeps export atm_model=datm export lnd_model=noahmp +export samegrid_atmlnd=.false. export CPLMODE=ufs.nfrac.aoflux export RUNTYPE=continue export READRESTART=.false. diff --git a/tests/tests/datm_cdeps_lnd_gswp3 b/tests/tests/datm_cdeps_lnd_gswp3 index e9de3bce8d..6f0c86adc7 100644 --- a/tests/tests/datm_cdeps_lnd_gswp3 +++ b/tests/tests/datm_cdeps_lnd_gswp3 @@ -41,6 +41,7 @@ export UFS_CONFIGURE=ufs.configure.atm_lnd.IN export med_model=cmeps export atm_model=datm export lnd_model=noahmp +export samegrid_atmlnd=.false. export CPLMODE=ufs.nfrac.aoflux export RUNTYPE=startup export READRESTART=.false. From 5476d653f7bd6796579a1bdd9e066a4e15a50378 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 6 Dec 2024 10:56:56 -0600 Subject: [PATCH 17/32] sync components --- CICE-interface/CICE | 2 +- CMEPS-interface/CMEPS | 2 +- FV3 | 2 +- MOM6-interface/MOM6 | 2 +- WW3 | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CICE-interface/CICE b/CICE-interface/CICE index 2ffee5cd48..513f8d1539 160000 --- a/CICE-interface/CICE +++ b/CICE-interface/CICE @@ -1 +1 @@ -Subproject commit 2ffee5cd48e0c389bdf75c0d910b3f6d53263563 +Subproject commit 513f8d153924e18ae0f91f5440195d15210a489e diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 6e81f683e3..50cc0f61bf 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 6e81f683e30f11afdc56414d04a3775ec5c563f7 +Subproject commit 50cc0f61bff34114e82cfc2fb97f8d69fbb5f640 diff --git a/FV3 b/FV3 index 1f98dc876b..846eb8de55 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 1f98dc876bacb666ea883d700ddcc1bacac062d7 +Subproject commit 846eb8de55a89a64d53fdd22ed250a728d8e63f3 diff --git a/MOM6-interface/MOM6 b/MOM6-interface/MOM6 index 00f8ea2023..5e0c21f64f 160000 --- a/MOM6-interface/MOM6 +++ b/MOM6-interface/MOM6 @@ -1 +1 @@ -Subproject commit 00f8ea2023f5ed58f0605cea373094f65ee90f64 +Subproject commit 5e0c21f64fa5b20efc8f29f8709766e1e6793a79 diff --git a/WW3 b/WW3 index 7f548c795a..4f518cf86b 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit 7f548c795a348bbb0fe4967dd25692c79036dc73 +Subproject commit 4f518cf86baa723f9a1e7f5e4ed375f0d32a6f4a From 9e407ce792f3c0b1cd7b4d1ce99bf906ad7458b7 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 6 Dec 2024 10:57:26 -0600 Subject: [PATCH 18/32] update tests --- tests/fv3_conf/noahmp_run.IN | 80 ++++++++++++---- tests/parm/ufs.configure.atm_lnd.IN | 1 + tests/tests/control_p8_atmlnd | 5 +- tests/tests/control_p8_atmlnd_sbs | 126 ++------------------------ tests/tests/control_restart_p8_atmlnd | 6 +- 5 files changed, 79 insertions(+), 139 deletions(-) diff --git a/tests/fv3_conf/noahmp_run.IN b/tests/fv3_conf/noahmp_run.IN index 1174a7ab4f..99bf803884 100644 --- a/tests/fv3_conf/noahmp_run.IN +++ b/tests/fv3_conf/noahmp_run.IN @@ -7,7 +7,6 @@ else fi echo "inputdir=$inputdir,LNDRES=$LNDRES" -export OCNRES=025 V2_SFC_FILE=${V2_SFC_FILE:-false} if [ $DATM_CDEPS == true ]; then @@ -29,20 +28,58 @@ else targetdir="./INPUT/$LNDRES" fi + # control_p8 with land component uses input from cpld + #if [ $S2S = false ]; then + # # Orography and grid + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc + # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. + # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. + + # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc ${targetdir}/. + # + # cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. + # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/. + # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc + #fi + + #if [ $WARM_START = .false. ]; then + # # IC + # if [ "$V2_SFC_FILE" = "true" ]; then + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data*.nc ${targetdir}/. + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_data*.nc ${targetdir}/. + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_ctrl.nc ${targetdir}/. + # else + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data*.nc ${targetdir}/. + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_data*.nc ${targetdir}/. + # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_ctrl*.nc ${targetdir}/. + # fi + #else + # # FV3 related files + # cp -r ../${DEP_RUN}${SUFFIX}/${targetdir}/* ${targetdir}/. + # cp -r ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.* ${targetdir}/. + # for RFILE in INPUT/${RESTART_FILE_PREFIX}.*; do + # [ -e $RFILE ] || exit 1 + # RFILE_OLD=$(basename $RFILE) + # mv -f $RFILE ${targetdir}/"${RFILE_OLD//${RESTART_FILE_PREFIX}./}" + # done + # if [[ $IAU_OFFSET == 6 ]] && [[ $FHROT -le 6 ]]; then + # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/fv_increment*.nc INPUT/. + # fi + # # copy land restart files + # cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. + # # CMEPS restart and pointer files + # RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc + # cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . + # ls -1 ${RFILE}>rpointer.cpl + #fi + if [ $WARM_START = .false. ]; then - if [ $S2S = true ]; then - if [ "$V2_SFC_FILE" = "true" ]; then - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_v2_sfc/sfc_data.tile*.nc ${targetdir}/. - else - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/. - fi - else - if [ "$V2_SFC_FILE" = "true" ]; then - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data.tile*.nc ${targetdir}/. - else - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data.tile*.nc ${targetdir}/. - fi - fi + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/. else # land restart file cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. @@ -50,9 +87,12 @@ else RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . ls -1 ${RFILE}>rpointer.cpl + # link grid spec file fi fi +# running land in different resolution +# note that CMEPS mediator has some limitiations to run land in different resolution than atmosphere if [ "$ATMRES" != "$LNDRES" ]; then rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].maximum_snow_albedo.tile*.nc ${targetdir}/. rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].slope_type.tile*.nc ${targetdir}/. @@ -61,12 +101,12 @@ if [ "$ATMRES" != "$LNDRES" ]; then rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].substrate_temperature.tile*.nc ${targetdir}/. rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_greenness.tile*.nc ${targetdir}/. rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_type.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile1.nc ${targetdir}/oro_data.tile1.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile2.nc ${targetdir}/oro_data.tile2.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile3.nc ${targetdir}/oro_data.tile3.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile4.nc ${targetdir}/oro_data.tile4.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile5.nc ${targetdir}/oro_data.tile5.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile6.nc ${targetdir}/oro_data.tile6.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc + rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[LNDRES]_grid.tile*.nc ${targetdir}/. rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc fi diff --git a/tests/parm/ufs.configure.atm_lnd.IN b/tests/parm/ufs.configure.atm_lnd.IN index d36dcd2510..73e71f98a5 100644 --- a/tests/parm/ufs.configure.atm_lnd.IN +++ b/tests/parm/ufs.configure.atm_lnd.IN @@ -26,6 +26,7 @@ MED_attributes:: history_option = nhours history_ymd = -999 coupling_mode = @[CPLMODE] + samegrid_atmlnd = @[samegrid_atmlnd] :: # ATM # diff --git a/tests/tests/control_p8_atmlnd b/tests/tests/control_p8_atmlnd index bbb8adf58f..95cd68f798 100644 --- a/tests/tests/control_p8_atmlnd +++ b/tests/tests/control_p8_atmlnd @@ -107,6 +107,7 @@ export med_model=cmeps export atm_model=fv3 export lnd_model=noahmp export pio_rearranger=box +export samegrid_atmlnd=.true. export CPLMODE=ufs.frac export RUNTYPE=startup export READRESTART=.false. @@ -118,11 +119,14 @@ export lnd_ic_type=sfc export CALC_SNET=.false. export layout_x=3 export layout_y=8 +export OCNRES=100 export LNDRES=C96 export coupling_interval_sec=720 export snow_albedo_option=1 export precip_partition_option=4 export initial_albedo=0.2 +export WRITE_DOPOST=.false. +export OUTPUT_GRID=cubed_sphere_grid export OUTPUT_FH="1 -1" if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" @@ -133,4 +137,3 @@ else export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" export lnd_fixed_dir="INPUT/${LNDRES}/" fi -export MOM6_TOPOEDITS="" diff --git a/tests/tests/control_p8_atmlnd_sbs b/tests/tests/control_p8_atmlnd_sbs index 56a3a888f8..679c7b0615 100644 --- a/tests/tests/control_p8_atmlnd_sbs +++ b/tests/tests/control_p8_atmlnd_sbs @@ -4,6 +4,8 @@ # ############################################################################### +source tests/control_p8 + export TEST_DESCR="Compare global control results with previous trunk version" export CNTL_DIR=control_p8_atmlnd_sbs @@ -95,123 +97,7 @@ export LIST_FILES="sfcf000.tile1.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" -export_fv3 -export_tiled -export NPZ=127 -export NPZP=128 -export DT_ATMOS=720 -export DT_INNER=${DT_ATMOS} -export SYEAR=2021 -export SMONTH=03 -export SDAY=22 -export SHOUR=06 -export RESTART_INTERVAL="12 -1" -export OUTPUT_GRID='cubed_sphere_grid' -export WRITE_DOPOST=.false. -export OUTPUT_FH='0 21 24' - -export IALB=2 -export IEMS=2 -export LSM=2 -export IOPT_DVEG=4 -export IOPT_CRS=2 -export IOPT_RAD=3 -export IOPT_ALB=1 -export IOPT_STC=3 -export IOPT_SFC=3 -export IOPT_TRS=2 -export IOPT_DIAG=2 - -export D2_BG_K1=0.20 -export D2_BG_K2=0.04 -export PSM_BC=1 -export DDDMP=0.1 - -# Merra2 Aerosols & NSST -export USE_MERRA2=.true. -export IAER=1011 -export NSTF_NAME=2,1,0,0,0 - -export LHEATSTRG=.false. -export LSEASPRAY=.true. - -# UGWP1 -export GWD_OPT=2 -export DO_UGWP_V1=.false. -export KNOB_UGWP_VERSION=0 -export KNOB_UGWP_NSLOPE=1 -export DO_UGWP_V0=.true. -export DO_GSL_DRAG_LS_BL=.false. -export DO_GSL_DRAG_SS=.true. -export DO_GSL_DRAG_TOFD=.false. -export DO_UGWP_V1_OROG_ONLY=.false. -export DO_UGWP_V0_NST_ONLY=.false. -export LDIAG_UGWP=.false. - -# CA -export DO_CA=.true. -export CA_SGS=.true. -export CA_GLOBAL=.false. -export NCA=1 -export NCELLS=5 -export NLIVES=12 -export NTHRESH=18 -export NSEED=1 -export NFRACSEED=0.5 -export CA_TRIGGER=.true. -export NSPINUP=1 -export ISEED_CA=12345 - -export TILEDFIX=.true. -export FNALBC="'INPUT/C96.snowfree_albedo.tileX.nc'" -export FNALBC2="'INPUT/C96.facsf.tileX.nc'" -export FNTG3C="'INPUT/C96.substrate_temperature.tileX.nc'" -export FNVEGC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVETC="'INPUT/C96.vegetation_type.tileX.nc'" -export FNSOTC="'INPUT/C96.soil_type.tileX.nc'" -export FNSOCC="'INPUT/C96.soil_color.tileX.nc'" -export FNSMCC=${FNSMCC_control} -export FNMSKH=${FNMSKH_control} -export FNVMNC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNVMXC="'INPUT/C96.vegetation_greenness.tileX.nc'" -export FNSLPC="'INPUT/C96.slope_type.tileX.nc'" -export FNABSC="'INPUT/C96.maximum_snow_albedo.tileX.nc'" -export LANDICE=".false." -export FSICL=0 -export FSICS=0 - -export IMP_PHYSICS=8 -export LGFDLMPRAD=.false. -export DO_SAT_ADJ=.false. -export DNATS=0 -export DZ_MIN=6 - -#required for NML.IN sharing -export MIN_SEAICE=0.15 -export FRAC_GRID=.true. -export MOM6_OUTPUT_DIR=./MOM6_OUTPUT -export MOM6_RESTART_DIR=./RESTART/ -export MOM6_RESTART_SETTING=n -# Following not used for standalone -export USE_CICE_ALB=.false. - -export WRITE_NSFLIP=.true. - export FV3_RUN="control_run.IN noahmp_run.IN" -export CCPP_SUITE=FV3_GFS_v17_p8 -export FIELD_TABLE=field_table_thompson_noaero_tke -export DIAG_TABLE=diag_table_cpld.IN -export INPUT_NML=global_control.nml.IN -export V2_SFC_FILE=true - -# RRTMGP -export DO_RRTMGP=.false. -export DOGP_CLDOPTICS_LUT=.true. -export DOGP_LWSCAT=.true. -export DOGP_SGS_CNV=.true. - -export SATMEDMF=.true. - export CPLLND=.true. export CPLLND2ATM=.false. @@ -231,17 +117,23 @@ export lnd_ic_type=sfc export CALC_SNET=.false. export layout_x=3 export layout_y=8 +export OCNRES=100 export LNDRES=C96 export coupling_interval_sec=720 export snow_albedo_option=1 export precip_partition_option=4 export initial_albedo=0.2 +export WRITE_DOPOST=.false. +export OUTPUT_GRID=cubed_sphere_grid export OUTPUT_FH="1 -1" if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" export mosaic_file="INPUT/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="./" + export samegrid_atmlnd=.true. else export lnd_input_dir="INPUT/${LNDRES}/" export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="INPUT/${LNDRES}/" + export samegrid_atmlnd=.false. fi -export MOM6_TOPOEDITS="" diff --git a/tests/tests/control_restart_p8_atmlnd b/tests/tests/control_restart_p8_atmlnd index f9da9e24f8..70e3147256 100644 --- a/tests/tests/control_restart_p8_atmlnd +++ b/tests/tests/control_restart_p8_atmlnd @@ -29,6 +29,7 @@ export LIST_FILES="sfcf024.tile1.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" +export RESTART_FILE_PREFIX="${SYEAR}${SMONTH}${SDAY}.$(printf "%02d" $(( ${FHROT} + ${SHOUR} )))0000" export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%02d" $(( (${FHROT}+${SHOUR})*3600 )))" export FV3_RUN="control_run.IN noahmp_run.IN" @@ -40,6 +41,7 @@ export med_model=cmeps export atm_model=fv3 export lnd_model=noahmp export pio_rearranger=box +export samegrid_atmlnd=.true. export CPLMODE=ufs.frac export RUNTYPE=continue export READRESTART=.true. @@ -51,11 +53,14 @@ export lnd_ic_type=sfc export CALC_SNET=.false. export layout_x=3 export layout_y=8 +export OCNRES=100 export LNDRES=C96 export coupling_interval_sec=720 export snow_albedo_option=1 export precip_partition_option=4 export initial_albedo=0.2 +export WRITE_DOPOST=.false. +export OUTPUT_GRID=cubed_sphere_grid export OUTPUT_FH="1 -1" if [[ "$ATMRES" = "$LNDRES" ]]; then export lnd_input_dir="INPUT/" @@ -66,4 +71,3 @@ else export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" export lnd_fixed_dir="INPUT/${LNDRES}/" fi -export MOM6_TOPOEDITS="" From 2d711523dda5d799915396e032215e37c2dd58a0 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 19 Dec 2024 13:49:14 -0600 Subject: [PATCH 19/32] sync components --- CDEPS-interface/CDEPS | 2 +- CICE-interface/CICE | 2 +- CMEPS-interface/CMEPS | 2 +- MOM6-interface/MOM6 | 2 +- WW3 | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index 1f9eaaa142..34d1eab8e4 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit 1f9eaaa142c8b07ed6b788c9f44ea02cc86d0bae +Subproject commit 34d1eab8e432cedf8a81976e3b675b32f41b043f diff --git a/CICE-interface/CICE b/CICE-interface/CICE index 513f8d1539..ff7fd76118 160000 --- a/CICE-interface/CICE +++ b/CICE-interface/CICE @@ -1 +1 @@ -Subproject commit 513f8d153924e18ae0f91f5440195d15210a489e +Subproject commit ff7fd76118d47ccef6cb934b834161c6be5a9909 diff --git a/CMEPS-interface/CMEPS b/CMEPS-interface/CMEPS index 50cc0f61bf..cb180b0ab5 160000 --- a/CMEPS-interface/CMEPS +++ b/CMEPS-interface/CMEPS @@ -1 +1 @@ -Subproject commit 50cc0f61bff34114e82cfc2fb97f8d69fbb5f640 +Subproject commit cb180b0ab5cb618b503d695d6f214a03f845ab06 diff --git a/MOM6-interface/MOM6 b/MOM6-interface/MOM6 index 5e0c21f64f..8cc8b70f01 160000 --- a/MOM6-interface/MOM6 +++ b/MOM6-interface/MOM6 @@ -1 +1 @@ -Subproject commit 5e0c21f64fa5b20efc8f29f8709766e1e6793a79 +Subproject commit 8cc8b70f0143e803efb842ed871f9be3062862a4 diff --git a/WW3 b/WW3 index 4f518cf86b..29063ec7b6 160000 --- a/WW3 +++ b/WW3 @@ -1 +1 @@ -Subproject commit 4f518cf86baa723f9a1e7f5e4ed375f0d32a6f4a +Subproject commit 29063ec7b631d3a967172e8c45c5af13a18e0a82 From c8ace193f0b1a98747ce704159870e128be3346c Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 19 Dec 2024 13:49:39 -0600 Subject: [PATCH 20/32] fix run sequence --- tests/parm/ufs.configure.s2swal_fast_esmf.IN | 22 +++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/tests/parm/ufs.configure.s2swal_fast_esmf.IN b/tests/parm/ufs.configure.s2swal_fast_esmf.IN index de3b139f3c..550b955bb1 100644 --- a/tests/parm/ufs.configure.s2swal_fast_esmf.IN +++ b/tests/parm/ufs.configure.s2swal_fast_esmf.IN @@ -74,7 +74,15 @@ WAV_attributes:: Verbosity = 0 OverwriteSlice = false mesh_wav = @[MESH_WAV] - user_sets_restname = @[WW3_user_sets_restname] + 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] :: # LND # @@ -123,13 +131,13 @@ runSeq:: @@[coupling_interval_fast_sec] MED med_phases_prep_atm MED med_phases_prep_ice - MED med_phases_prep_lnd MED med_phases_prep_wav_accum MED med_phases_prep_wav_avg + MED med_phases_prep_lnd MED -> ATM :remapMethod=redist MED -> ICE :remapMethod=redist - MED -> LND :remapMethod=redist MED -> WAV :remapMethod=redist + MED -> LND :remapMethod=redist ATM phase1 ATM -> CHM CHM @@ -142,10 +150,10 @@ runSeq:: MED med_phases_post_atm ICE -> MED :remapMethod=redist MED med_phases_post_ice - LND -> MED :remapMethod=redist - MED med_phases_post_lnd WAV -> MED :remapMethod=redist MED med_phases_post_wav + LND -> MED :remapMethod=redist + MED med_phases_post_lnd MED med_phases_ocnalb_run MED med_phases_prep_ocn_accum @ @@ -163,13 +171,12 @@ DRIVER_attributes:: MED_attributes:: ATM_model = @[atm_model] ICE_model = @[ice_model] - LND_model = @[lnd_model] OCN_model = @[ocn_model] WAV_model = @[wav_model] + LND_model = @[lnd_model] coupling_mode = @[CPLMODE] pio_rearranger = @[pio_rearranger] ocean_albedo_limit = @[ocean_albedo_limit] - samegrid_atmlnd = @[samegrid_atmlnd] :: ALLCOMP_attributes:: @@ -184,6 +191,7 @@ ALLCOMP_attributes:: restart_n = @[RESTART_N] restart_option = nhours restart_ymd = -999 + write_restart_at_endofrun = @[WRITE_ENDOFRUN_RESTART] dbug_flag = @[cap_dbug_flag] stop_n = @[FHMAX] stop_option = nhours From 1341e58ef981a618be0925dc2bafa62e759d74d4 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 19 Dec 2024 13:50:41 -0600 Subject: [PATCH 21/32] update fv3 --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 846eb8de55..955514c265 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 846eb8de55a89a64d53fdd22ed250a728d8e63f3 +Subproject commit 955514c265750fe744c16b4669e75eadd3772a66 From 049fc5ed0e4e84685cb501f583aba5ac723943f5 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 19 Dec 2024 13:52:25 -0600 Subject: [PATCH 22/32] update land RTs --- tests/rt.conf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/rt.conf b/tests/rt.conf index 7e8ab8cc18..c01b33439c 100644 --- a/tests/rt.conf +++ b/tests/rt.conf @@ -56,7 +56,7 @@ RUN | cpld_restart_c192_p8 | - wcoss2 jet acorn s4 RUN | cpld_bmark_p8 | - s4 jet acorn noaacloud | baseline | RUN | cpld_restart_bmark_p8 | - s4 jet acorn noaacloud | | cpld_bmark_p8 -COMPILE | s2swal | intel | -DAPP=S2SWAL -DCCPP_SUITES=FV3_GFS_v17_coupled_p8 | | fv3 | +COMPILE | s2swal | intel | -DAPP=S2SWAL -DCCPP_SUITES=FV3_GFS_v17_coupled_p8,FV3_GFS_v17_coupled_p8_ugwpv1 | | fv3 | RUN | cpld_control_p8_lnd | - noaacloud | baseline | # Aerosol, no Wave @@ -307,12 +307,12 @@ COMPILE | atm_ds2s_docn_dice | intel | -DAPP=ATM_DS2S -DCCPP_SUITES=FV3_GFS_v17 RUN | atm_ds2s_docn_dice | - noaacloud wcoss2 acorn | baseline | cpld_control_nowave_noaero_p8 ### ATM-LND tests ### -COMPILE | atml | intel | -DAPP=ATML -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v16_flake,FV3_GFS_v17_p8,FV3_GFS_v17_p8_rrtmgp,FV3_GFS_v15_thompson_mynn_lam3km,FV3_WoFS_v0,FV3_GFS_v17_p8_mynn -D32BIT=ON | | fv3 | +COMPILE | atml | intel | -DAPP=ATML -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v16_flake,FV3_GFS_v17_p8,FV3_GFS_v17_p8_rrtmgp,FV3_GFS_v15_thompson_mynn_lam3km,FV3_WoFS_v0,FV3_GFS_v17_p8_mynn,FV3_GFS_v17_p8_ugwpv1 -D32BIT=ON | | fv3 | RUN | control_p8_atmlnd_sbs | - noaacloud wcoss2 | baseline | RUN | control_p8_atmlnd | - noaacloud wcoss2 | baseline | RUN | control_restart_p8_atmlnd | - noaacloud wcoss2 | | control_p8_atmlnd -COMPILE | atml_debug | intel | -DAPP=ATML -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v16_flake,FV3_GFS_v17_p8,FV3_GFS_v17_p8_rrtmgp,FV3_GFS_v15_thompson_mynn_lam3km,FV3_WoFS_v0,FV3_GFS_v17_p8_mynn -D32BIT=ON -DDEBUG=ON | | fv3 | +COMPILE | atml_debug | intel | -DAPP=ATML -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v16_flake,FV3_GFS_v17_p8,FV3_GFS_v17_p8_rrtmgp,FV3_GFS_v15_thompson_mynn_lam3km,FV3_WoFS_v0,FV3_GFS_v17_p8_mynn,FV3_GFS_v17_p8_ugwpv1 -D32BIT=ON -DDEBUG=ON | | fv3 | RUN | control_p8_atmlnd_debug | - noaacloud wcoss2 | baseline | ### ATM-WAV tests ### From 0310094ef7c09aaaacd497600605e78196c8dbf3 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 27 Dec 2024 17:16:22 -0600 Subject: [PATCH 23/32] add restart test for cpld_control_p8_lnd --- tests/rt.conf | 1 + tests/tests/cpld_restart_p8_lnd | 95 +++++++++++++++++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 tests/tests/cpld_restart_p8_lnd diff --git a/tests/rt.conf b/tests/rt.conf index cd34f9f68e..6e0d7832a3 100644 --- a/tests/rt.conf +++ b/tests/rt.conf @@ -58,6 +58,7 @@ RUN | cpld_restart_bmark_p8 | - s4 jet acorn noaaclo COMPILE | s2swal | intel | -DAPP=S2SWAL -DCCPP_SUITES=FV3_GFS_v17_coupled_p8,FV3_GFS_v17_coupled_p8_ugwpv1 | | fv3 | RUN | cpld_control_p8_lnd | - noaacloud | baseline | +RUN | cpld_restart_p8_lnd | - noaacloud | | cpld_control_p8_lnd # Aerosol, no Wave RUN | cpld_s2sa_p8 | - noaacloud | baseline | diff --git a/tests/tests/cpld_restart_p8_lnd b/tests/tests/cpld_restart_p8_lnd new file mode 100644 index 0000000000..d54b19aa8e --- /dev/null +++ b/tests/tests/cpld_restart_p8_lnd @@ -0,0 +1,95 @@ +# +# cpld_restart P8 test with land component +# + +source tests/cpld_restart_p8 + +export TEST_DESCR="Fully coupled FV3-CCPP-GOCART-MOM6-CICE-CMEPS-WW3-NOAHMP system - C96MX100" + +export CNTL_DIR=cpld_control_p8_lnd + +export LIST_FILES="sfcf024.tile1.nc \ + sfcf024.tile2.nc \ + sfcf024.tile3.nc \ + sfcf024.tile4.nc \ + sfcf024.tile5.nc \ + sfcf024.tile6.nc \ + atmf024.tile1.nc \ + atmf024.tile2.nc \ + atmf024.tile3.nc \ + atmf024.tile4.nc \ + atmf024.tile5.nc \ + atmf024.tile6.nc \ + gocart.inst_aod.20210323_0600z.nc4 \ + RESTART/20210323.060000.coupler.res \ + RESTART/20210323.060000.fv_core.res.nc \ + RESTART/20210323.060000.fv_core.res.tile1.nc \ + RESTART/20210323.060000.fv_core.res.tile2.nc \ + RESTART/20210323.060000.fv_core.res.tile3.nc \ + RESTART/20210323.060000.fv_core.res.tile4.nc \ + RESTART/20210323.060000.fv_core.res.tile5.nc \ + RESTART/20210323.060000.fv_core.res.tile6.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile1.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile2.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile3.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile4.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile5.nc \ + RESTART/20210323.060000.fv_srf_wnd.res.tile6.nc \ + RESTART/20210323.060000.fv_tracer.res.tile1.nc \ + RESTART/20210323.060000.fv_tracer.res.tile2.nc \ + RESTART/20210323.060000.fv_tracer.res.tile3.nc \ + RESTART/20210323.060000.fv_tracer.res.tile4.nc \ + RESTART/20210323.060000.fv_tracer.res.tile5.nc \ + RESTART/20210323.060000.fv_tracer.res.tile6.nc \ + RESTART/20210323.060000.phy_data.tile1.nc \ + RESTART/20210323.060000.phy_data.tile2.nc \ + RESTART/20210323.060000.phy_data.tile3.nc \ + RESTART/20210323.060000.phy_data.tile4.nc \ + RESTART/20210323.060000.phy_data.tile5.nc \ + RESTART/20210323.060000.phy_data.tile6.nc \ + RESTART/20210323.060000.sfc_data.tile1.nc \ + RESTART/20210323.060000.sfc_data.tile2.nc \ + RESTART/20210323.060000.sfc_data.tile3.nc \ + RESTART/20210323.060000.sfc_data.tile4.nc \ + RESTART/20210323.060000.sfc_data.tile5.nc \ + RESTART/20210323.060000.sfc_data.tile6.nc \ + RESTART/20210323.060000.MOM.res.nc \ + RESTART/iced.2021-03-23-21600.nc \ + RESTART/ufs.cpld.cpl.r.2021-03-23-21600.nc \ + ufs.cpld.ww3.r.2021-03-23-21600.nc \ + 20210323.060000.out_pnt.ww3 \ + 20210323.060000.out_grd.ww3 \ + ufs.cpld.lnd.out.2021-03-23-21600.tile1.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile2.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile3.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile4.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ + ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" + +# LND warm start +export FV3_RUN="cpld_control_run.IN noahmp_run.IN" +export CPLLND=.true. +export CPLLND2ATM=.true. +export UFS_CONFIGURE=ufs.configure.s2swal_fast_esmf.IN +export lnd_model=noahmp +export LND_tasks=144 +export lnd_ic_type=sfc +export CALC_SNET=.false. +export layout_x=3 +export layout_y=8 +export LNDRES=C96 +export coupling_interval_sec=720 +export snow_albedo_option=1 +export precip_partition_option=4 +export initial_albedo=0.2 +if [[ "$ATMRES" = "$LNDRES" ]]; then + export lnd_input_dir="INPUT/" + export mosaic_file="INPUT/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="./" + export samegrid_atmlnd=.true. +else + export lnd_input_dir="INPUT/${LNDRES}/" + export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" + export lnd_fixed_dir="INPUT/${LNDRES}/" + export samegrid_atmlnd=.false. +fi From e7d07217c32a60ecc8f47d3354449d8919c78748 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 27 Dec 2024 17:26:40 -0600 Subject: [PATCH 24/32] update noahmp --- NOAHMP-interface/noahmp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index adaf11848f..bc97a71966 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit adaf11848f55f0f1eed8a3c0ffb0f777ba296a16 +Subproject commit bc97a71966d701c1d0f7abeb612df3b84119dced From d3e24db8809985f59774cb118398864ac5983400 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 27 Dec 2024 17:31:14 -0600 Subject: [PATCH 25/32] update fv3 --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 955514c265..1c2279a39c 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 955514c265750fe744c16b4669e75eadd3772a66 +Subproject commit 1c2279a39cd347bf308f303e5970a9f07637b1c3 From 7fbf647ec1994e5e49289b34428653ee9a780b81 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Thu, 2 Jan 2025 18:06:44 -0600 Subject: [PATCH 26/32] more update for land RTs --- tests/fv3_conf/noahmp_run.IN | 219 +++++++++++++++----------- tests/parm/ufs.configure.atm_lnd.IN | 6 +- tests/rt.conf | 1 - tests/tests/control_p8_atmlnd | 2 +- tests/tests/control_p8_atmlnd_sbs | 139 ---------------- tests/tests/control_restart_p8_atmlnd | 2 +- 6 files changed, 132 insertions(+), 237 deletions(-) delete mode 100644 tests/tests/control_p8_atmlnd_sbs diff --git a/tests/fv3_conf/noahmp_run.IN b/tests/fv3_conf/noahmp_run.IN index 99bf803884..cfeae65721 100644 --- a/tests/fv3_conf/noahmp_run.IN +++ b/tests/fv3_conf/noahmp_run.IN @@ -1,112 +1,147 @@ mkdir -p INPUT RESTART -if [ "$LNDRES" = "C96" ]; then +if [ "$ATMRES" = "C96" ]; then inputdir=FV3_input_data else - inputdir=FV3_input_data${LNDRES#C} + inputdir=FV3_input_data${ATMRES#C} fi -echo "inputdir=$inputdir,LNDRES=$LNDRES" +echo "inputdir=$inputdir,ATMRES=$ATMRES" V2_SFC_FILE=${V2_SFC_FILE:-false} +SUFFIX=${RT_SUFFIX} -if [ $DATM_CDEPS == true ]; then +if [[ $DATM_CDEPS == true ]] || [[ $S2S = false ]]; then targetdir="./INPUT" - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile2.nc ./${targetdir}/@[LNDRES].initial.tile2.nc - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile3.nc ./${targetdir}/@[LNDRES].initial.tile3.nc - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile4.nc ./${targetdir}/@[LNDRES].initial.tile4.nc - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile5.nc ./${targetdir}/@[LNDRES].initial.tile5.nc - rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile6.nc ./${targetdir}/@[LNDRES].initial.tile6.nc -else - if [ "$ATMRES" = "$LNDRES" ]; then - targetdir="./INPUT" - cd ${targetdir} - ln -sf grid_spec.nc @[LNDRES]_mosaic.nc - cd - + + # Initial condition + if [ $DATM_CDEPS == true ]; then + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile2.nc ./${targetdir}/@[LNDRES].initial.tile2.nc + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile3.nc ./${targetdir}/@[LNDRES].initial.tile3.nc + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile4.nc ./${targetdir}/@[LNDRES].initial.tile4.nc + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile5.nc ./${targetdir}/@[LNDRES].initial.tile5.nc + rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile6.nc ./${targetdir}/@[LNDRES].initial.tile6.nc else - mkdir -p INPUT/$LNDRES - targetdir="./INPUT/$LNDRES" + if [ $WARM_START = .false. ]; then + # IC + if [ "$V2_SFC_FILE" = "true" ]; then + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data*.nc ${targetdir}/. + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_data*.nc ${targetdir}/. + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_ctrl.nc ${targetdir}/. + else + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data*.nc ${targetdir}/. + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_data*.nc ${targetdir}/. + cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_ctrl*.nc ${targetdir}/. + fi + else + # FV3 related restart files + cp -r ../${DEP_RUN}${SUFFIX}/${targetdir}/* ${targetdir}/. + cp -r ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.* ${targetdir}/. + for RFILE in INPUT/${RESTART_FILE_PREFIX}.*; do + [ -e $RFILE ] || exit 1 + RFILE_OLD=$(basename $RFILE) + mv -f $RFILE ${targetdir}/"${RFILE_OLD//${RESTART_FILE_PREFIX}./}" + done + if [[ $IAU_OFFSET == 6 ]] && [[ $FHROT -le 6 ]]; then + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/fv_increment*.nc INPUT/. + fi + fi fi - # control_p8 with land component uses input from cpld - #if [ $S2S = false ]; then - # # Orography and grid - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc - # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. - # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. + # Fixed files + FNSMCC="'global_soilmgldas.statsgo.t1534.3072.1536.grb'" + FNMSKH="'global_slmask.t1534.3072.1536.grb'" + cp @[INPUTDATA_ROOT]/${inputdir}/@[FNSMCC] . + cp @[INPUTDATA_ROOT]/${inputdir}/@[FNMSKH] . + if [ $TILEDFIX = .true. ]; then + cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/global_snoclim.1.875.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/IMS-NIC.blended.ice.monthly.clim.grb . + fi - # cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc ${targetdir}/. - # - # cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. - # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/. - # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc - #fi + # Orography and grid + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc . + cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc + cp @[INPUTDATA_ROOT]/MOM6_FIX/@[OCNRES]/ocean_mosaic.nc ${targetdir}/. - #if [ $WARM_START = .false. ]; then - # # IC - # if [ "$V2_SFC_FILE" = "true" ]; then - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data*.nc ${targetdir}/. - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_data*.nc ${targetdir}/. - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_ctrl.nc ${targetdir}/. - # else - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data*.nc ${targetdir}/. - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_data*.nc ${targetdir}/. - # cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_ctrl*.nc ${targetdir}/. - # fi - #else - # # FV3 related files - # cp -r ../${DEP_RUN}${SUFFIX}/${targetdir}/* ${targetdir}/. - # cp -r ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.* ${targetdir}/. - # for RFILE in INPUT/${RESTART_FILE_PREFIX}.*; do - # [ -e $RFILE ] || exit 1 - # RFILE_OLD=$(basename $RFILE) - # mv -f $RFILE ${targetdir}/"${RFILE_OLD//${RESTART_FILE_PREFIX}./}" - # done - # if [[ $IAU_OFFSET == 6 ]] && [[ $FHROT -le 6 ]]; then - # cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/fv_increment*.nc INPUT/. - # fi - # # copy land restart files - # cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. - # # CMEPS restart and pointer files - # RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc - # cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . - # ls -1 ${RFILE}>rpointer.cpl - #fi + # Merra2 + if [ $IAER = 1011 ]; then + for n in 01 02 03 04 05 06 07 08 09 10 11 12; do + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/MERRA2_y14_24/merra2_1423_${n}.nc aeroclim.m${n}.nc + done + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat + fi - if [ $WARM_START = .false. ]; then - cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/. - else - # land restart file - cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. - # CMEPS restart and pointer files - RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc - cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . - ls -1 ${RFILE}>rpointer.cpl - # link grid spec file + cp @[INPUTDATA_ROOT]/FV3_input_data/ugwp_c384_tau.nc ./ugwp_limb_tau.nc + + if [ $IMP_PHYSICS = 8 ]; then + cp @[INPUTDATA_ROOT]/FV3_fix/CCN_ACTIVATE.BIN CCN_ACTIVATE.BIN + cp @[INPUTDATA_ROOT]/FV3_fix/freezeH2O.dat freezeH2O.dat + cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qgV2.dat qr_acr_qgV2.dat + cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qsV2.dat qr_acr_qsV2.dat + fi + + # Prognostic aerosols + if [ $CPLCHM = .true. ]; then + ln -sf @[INPUTDATA_ROOT]/GOCART/p8c_5d/ExtData . fi fi -# running land in different resolution -# note that CMEPS mediator has some limitiations to run land in different resolution than atmosphere +# Land component related restart files +if [ $WARM_START = .true. ]; then + # Copy land restart files + cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/. + # CMEPS restart and pointer files + RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc + cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} . + ls -1 ${RFILE}>rpointer.cpl +fi + +# Running land in different resolution +# Note that CMEPS mediator has some limitiations to run land in different resolution than atmosphere if [ "$ATMRES" != "$LNDRES" ]; then - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].maximum_snow_albedo.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].slope_type.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_type.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_color.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].substrate_temperature.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_greenness.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_type.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc - rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc - rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[LNDRES]_grid.tile*.nc ${targetdir}/. - rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc + mkdir -p INPUT/$LNDRES + targetdir="./INPUT/$LNDRES" + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].maximum_snow_albedo.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].slope_type.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_type.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_color.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].substrate_temperature.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_greenness.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_type.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile1.nc ${targetdir}/oro_data.tile1.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile2.nc ${targetdir}/oro_data.tile2.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile3.nc ${targetdir}/oro_data.tile3.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile4.nc ${targetdir}/oro_data.tile4.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile5.nc ${targetdir}/oro_data.tile5.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile6.nc ${targetdir}/oro_data.tile6.nc + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT/@[LNDRES]_grid.tile*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc + if [ $WARM_START = .false. ]; then + if [ "$V2_SFC_FILE" = "true" ]; then + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/sfc_data*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/gfs_data*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/gfs_ctrl*.nc ${targetdir}/. + else + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/sfc_data*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/gfs_data*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/gfs_ctrl*.nc ${targetdir}/. + fi + fi fi diff --git a/tests/parm/ufs.configure.atm_lnd.IN b/tests/parm/ufs.configure.atm_lnd.IN index 4f57a92c55..18175fc7e4 100644 --- a/tests/parm/ufs.configure.atm_lnd.IN +++ b/tests/parm/ufs.configure.atm_lnd.IN @@ -79,13 +79,13 @@ LND_attributes:: runSeq:: @@[coupling_interval_sec] MED med_phases_prep_atm + MED med_phases_prep_lnd MED -> ATM :remapMethod=redist + MED -> LND :remapMethod=redist ATM + LND ATM -> MED :remapMethod=redist MED med_phases_post_atm - MED med_phases_prep_lnd - MED -> LND :remapMethod=redist - LND LND -> MED :remapMethod=redist MED med_phases_post_lnd MED med_phases_restart_write diff --git a/tests/rt.conf b/tests/rt.conf index 6e0d7832a3..0472d01d43 100644 --- a/tests/rt.conf +++ b/tests/rt.conf @@ -309,7 +309,6 @@ RUN | atm_ds2s_docn_dice | - noaacloud wcoss2 aco ### ATM-LND tests ### COMPILE | atml | intel | -DAPP=ATML -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v16_flake,FV3_GFS_v17_p8,FV3_GFS_v17_p8_rrtmgp,FV3_GFS_v15_thompson_mynn_lam3km,FV3_WoFS_v0,FV3_GFS_v17_p8_mynn,FV3_GFS_v17_p8_ugwpv1 -D32BIT=ON | | fv3 | -RUN | control_p8_atmlnd_sbs | - noaacloud wcoss2 | baseline | RUN | control_p8_atmlnd | - noaacloud wcoss2 | baseline | RUN | control_restart_p8_atmlnd | - noaacloud wcoss2 | | control_p8_atmlnd diff --git a/tests/tests/control_p8_atmlnd b/tests/tests/control_p8_atmlnd index 95cd68f798..e9bc04d246 100644 --- a/tests/tests/control_p8_atmlnd +++ b/tests/tests/control_p8_atmlnd @@ -97,7 +97,7 @@ export LIST_FILES="sfcf000.tile1.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" -export FV3_RUN="control_run.IN noahmp_run.IN" +export FV3_RUN="noahmp_run.IN" export CPLLND=.true. export CPLLND2ATM=.true. diff --git a/tests/tests/control_p8_atmlnd_sbs b/tests/tests/control_p8_atmlnd_sbs deleted file mode 100644 index 679c7b0615..0000000000 --- a/tests/tests/control_p8_atmlnd_sbs +++ /dev/null @@ -1,139 +0,0 @@ -############################################################################### -# -# Global control test GFSv16 atmosphere-land only at C96L127, P8 configuration -# -############################################################################### - -source tests/control_p8 - -export TEST_DESCR="Compare global control results with previous trunk version" - -export CNTL_DIR=control_p8_atmlnd_sbs - -export LIST_FILES="sfcf000.tile1.nc \ - sfcf000.tile2.nc - sfcf000.tile3.nc - sfcf000.tile4.nc - sfcf000.tile5.nc - sfcf000.tile6.nc - sfcf012.tile1.nc \ - sfcf012.tile2.nc \ - sfcf012.tile3.nc \ - sfcf012.tile4.nc \ - sfcf012.tile5.nc \ - sfcf012.tile6.nc \ - sfcf024.tile1.nc \ - sfcf024.tile2.nc \ - sfcf024.tile3.nc \ - sfcf024.tile4.nc \ - sfcf024.tile5.nc \ - sfcf024.tile6.nc \ - atmf000.tile1.nc \ - atmf000.tile2.nc \ - atmf000.tile3.nc \ - atmf000.tile4.nc \ - atmf000.tile5.nc \ - atmf000.tile6.nc \ - atmf012.tile1.nc \ - atmf012.tile2.nc \ - atmf012.tile3.nc \ - atmf012.tile4.nc \ - atmf012.tile5.nc \ - atmf012.tile6.nc \ - atmf024.tile1.nc \ - atmf024.tile2.nc \ - atmf024.tile3.nc \ - atmf024.tile4.nc \ - atmf024.tile5.nc \ - atmf024.tile6.nc \ - RESTART/20210323.060000.ca_data.tile1.nc \ - RESTART/20210323.060000.ca_data.tile2.nc \ - RESTART/20210323.060000.ca_data.tile3.nc \ - RESTART/20210323.060000.ca_data.tile4.nc \ - RESTART/20210323.060000.ca_data.tile5.nc \ - RESTART/20210323.060000.ca_data.tile6.nc \ - RESTART/20210323.060000.coupler.res \ - RESTART/20210323.060000.fv_core.res.nc \ - RESTART/20210323.060000.fv_core.res.tile1.nc \ - RESTART/20210323.060000.fv_core.res.tile2.nc \ - RESTART/20210323.060000.fv_core.res.tile3.nc \ - RESTART/20210323.060000.fv_core.res.tile4.nc \ - RESTART/20210323.060000.fv_core.res.tile5.nc \ - RESTART/20210323.060000.fv_core.res.tile6.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile1.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile2.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile3.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile4.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile5.nc \ - RESTART/20210323.060000.fv_srf_wnd.res.tile6.nc \ - RESTART/20210323.060000.fv_tracer.res.tile1.nc \ - RESTART/20210323.060000.fv_tracer.res.tile2.nc \ - RESTART/20210323.060000.fv_tracer.res.tile3.nc \ - RESTART/20210323.060000.fv_tracer.res.tile4.nc \ - RESTART/20210323.060000.fv_tracer.res.tile5.nc \ - RESTART/20210323.060000.fv_tracer.res.tile6.nc \ - RESTART/20210323.060000.phy_data.tile1.nc \ - RESTART/20210323.060000.phy_data.tile2.nc \ - RESTART/20210323.060000.phy_data.tile3.nc \ - RESTART/20210323.060000.phy_data.tile4.nc \ - RESTART/20210323.060000.phy_data.tile5.nc \ - RESTART/20210323.060000.phy_data.tile6.nc \ - RESTART/20210323.060000.sfc_data.tile1.nc \ - RESTART/20210323.060000.sfc_data.tile2.nc \ - RESTART/20210323.060000.sfc_data.tile3.nc \ - RESTART/20210323.060000.sfc_data.tile4.nc \ - RESTART/20210323.060000.sfc_data.tile5.nc \ - RESTART/20210323.060000.sfc_data.tile6.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile1.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile2.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile3.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile4.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile5.nc \ - ufs.cpld.lnd.out.2021-03-22-64800.tile6.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile1.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile2.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile3.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile4.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile5.nc \ - ufs.cpld.lnd.out.2021-03-23-21600.tile6.nc" - -export FV3_RUN="control_run.IN noahmp_run.IN" -export CPLLND=.true. -export CPLLND2ATM=.false. - -export UFS_CONFIGURE=ufs.configure.atm_lnd.IN -export med_model=cmeps -export atm_model=fv3 -export lnd_model=noahmp -export pio_rearranger=box -export CPLMODE=ufs.frac -export RUNTYPE=startup -export READRESTART=.false. -export CMEPS_RESTART_DIR=./RESTART/ -export cap_dbug_flag=0 -export ATM_tasks=144 -export LND_tasks=144 -export lnd_ic_type=sfc -export CALC_SNET=.false. -export layout_x=3 -export layout_y=8 -export OCNRES=100 -export LNDRES=C96 -export coupling_interval_sec=720 -export snow_albedo_option=1 -export precip_partition_option=4 -export initial_albedo=0.2 -export WRITE_DOPOST=.false. -export OUTPUT_GRID=cubed_sphere_grid -export OUTPUT_FH="1 -1" -if [[ "$ATMRES" = "$LNDRES" ]]; then - export lnd_input_dir="INPUT/" - export mosaic_file="INPUT/${LNDRES}_mosaic.nc" - export lnd_fixed_dir="./" - export samegrid_atmlnd=.true. -else - export lnd_input_dir="INPUT/${LNDRES}/" - export mosaic_file="INPUT/${LNDRES}/${LNDRES}_mosaic.nc" - export lnd_fixed_dir="INPUT/${LNDRES}/" - export samegrid_atmlnd=.false. -fi diff --git a/tests/tests/control_restart_p8_atmlnd b/tests/tests/control_restart_p8_atmlnd index 70e3147256..1bb6b85bb9 100644 --- a/tests/tests/control_restart_p8_atmlnd +++ b/tests/tests/control_restart_p8_atmlnd @@ -31,7 +31,7 @@ export LIST_FILES="sfcf024.tile1.nc \ export RESTART_FILE_PREFIX="${SYEAR}${SMONTH}${SDAY}.$(printf "%02d" $(( ${FHROT} + ${SHOUR} )))0000" export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%02d" $(( (${FHROT}+${SHOUR})*3600 )))" -export FV3_RUN="control_run.IN noahmp_run.IN" +export FV3_RUN="noahmp_run.IN" export CPLLND=.true. export CPLLND2ATM=.true. From 1d10d433fcb64cca4ed5a6903e666046af9194d6 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 3 Jan 2025 14:35:08 -0600 Subject: [PATCH 27/32] more work on RTs --- tests/fv3_conf/noahmp_run.IN | 114 ++++++++++++++++------------ tests/tests/datm_cdeps_lnd_era5 | 1 + tests/tests/datm_cdeps_lnd_era5_rst | 1 + tests/tests/datm_cdeps_lnd_gswp3 | 2 +- 4 files changed, 67 insertions(+), 51 deletions(-) diff --git a/tests/fv3_conf/noahmp_run.IN b/tests/fv3_conf/noahmp_run.IN index cfeae65721..a392dfb8df 100644 --- a/tests/fv3_conf/noahmp_run.IN +++ b/tests/fv3_conf/noahmp_run.IN @@ -13,15 +13,30 @@ SUFFIX=${RT_SUFFIX} if [[ $DATM_CDEPS == true ]] || [[ $S2S = false ]]; then targetdir="./INPUT" - # Initial condition if [ $DATM_CDEPS == true ]; then + # Initial condition rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile2.nc ./${targetdir}/@[LNDRES].initial.tile2.nc rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile3.nc ./${targetdir}/@[LNDRES].initial.tile3.nc rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile4.nc ./${targetdir}/@[LNDRES].initial.tile4.nc rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile5.nc ./${targetdir}/@[LNDRES].initial.tile5.nc rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile6.nc ./${targetdir}/@[LNDRES].initial.tile6.nc + + # Fixed files + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES]*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/CPL_FIX/a@[LNDRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[LNDRES]_grid*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc else + # Initial condition if [ $WARM_START = .false. ]; then # IC if [ "$V2_SFC_FILE" = "true" ]; then @@ -46,60 +61,59 @@ if [[ $DATM_CDEPS == true ]] || [[ $S2S = false ]]; then cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/fv_increment*.nc INPUT/. fi fi - fi - # Fixed files - FNSMCC="'global_soilmgldas.statsgo.t1534.3072.1536.grb'" - FNMSKH="'global_slmask.t1534.3072.1536.grb'" - cp @[INPUTDATA_ROOT]/${inputdir}/@[FNSMCC] . - cp @[INPUTDATA_ROOT]/${inputdir}/@[FNMSKH] . - if [ $TILEDFIX = .true. ]; then - cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb . - cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb . - cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb . - cp @[INPUTDATA_ROOT]/FV3_fix/global_snoclim.1.875.grb . - cp @[INPUTDATA_ROOT]/FV3_fix/IMS-NIC.blended.ice.monthly.clim.grb . - fi + # Fixed files + FNSMCC="global_soilmgldas.statsgo.t1534.3072.1536.grb" + FNMSKH="global_slmask.t1534.3072.1536.grb" + cp @[INPUTDATA_ROOT]/${inputdir}/${FNSMCC} . + cp @[INPUTDATA_ROOT]/${inputdir}/${FNMSKH} . + if [ $TILEDFIX = .true. ]; then + cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/global_snoclim.1.875.grb . + cp @[INPUTDATA_ROOT]/FV3_fix/IMS-NIC.blended.ice.monthly.clim.grb . + fi - # Orography and grid - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc - cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. - cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. - cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc . - cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. - cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/. - cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc - cp @[INPUTDATA_ROOT]/MOM6_FIX/@[OCNRES]/ocean_mosaic.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/. + cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc . + cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/. + cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc + cp @[INPUTDATA_ROOT]/MOM6_FIX/@[OCNRES]/ocean_mosaic.nc ${targetdir}/. - # Merra2 - if [ $IAER = 1011 ]; then - for n in 01 02 03 04 05 06 07 08 09 10 11 12; do - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/MERRA2_y14_24/merra2_1423_${n}.nc aeroclim.m${n}.nc - done - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat - cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat - fi + # Merra2 + if [ $IAER = 1011 ]; then + for n in 01 02 03 04 05 06 07 08 09 10 11 12; do + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/MERRA2_y14_24/merra2_1423_${n}.nc aeroclim.m${n}.nc + done + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat + cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat + fi - cp @[INPUTDATA_ROOT]/FV3_input_data/ugwp_c384_tau.nc ./ugwp_limb_tau.nc + cp @[INPUTDATA_ROOT]/FV3_input_data/ugwp_c384_tau.nc ./ugwp_limb_tau.nc - if [ $IMP_PHYSICS = 8 ]; then - cp @[INPUTDATA_ROOT]/FV3_fix/CCN_ACTIVATE.BIN CCN_ACTIVATE.BIN - cp @[INPUTDATA_ROOT]/FV3_fix/freezeH2O.dat freezeH2O.dat - cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qgV2.dat qr_acr_qgV2.dat - cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qsV2.dat qr_acr_qsV2.dat - fi - - # Prognostic aerosols - if [ $CPLCHM = .true. ]; then - ln -sf @[INPUTDATA_ROOT]/GOCART/p8c_5d/ExtData . + if [ $IMP_PHYSICS = 8 ]; then + cp @[INPUTDATA_ROOT]/FV3_fix/CCN_ACTIVATE.BIN CCN_ACTIVATE.BIN + cp @[INPUTDATA_ROOT]/FV3_fix/freezeH2O.dat freezeH2O.dat + cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qgV2.dat qr_acr_qgV2.dat + cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qsV2.dat qr_acr_qsV2.dat + fi + + # Prognostic aerosols + if [ $CPLCHM = .true. ]; then + ln -sf @[INPUTDATA_ROOT]/GOCART/p8c_5d/ExtData . + fi fi fi diff --git a/tests/tests/datm_cdeps_lnd_era5 b/tests/tests/datm_cdeps_lnd_era5 index 782a17caad..dcb3586256 100644 --- a/tests/tests/datm_cdeps_lnd_era5 +++ b/tests/tests/datm_cdeps_lnd_era5 @@ -52,6 +52,7 @@ export CALC_SNET=.true. export layout_x=3 export layout_y=8 export LNDRES=C96 +export ATMRES=$LNDRES export mosaic_file="INPUT/${LNDRES}_mosaic.nc" export coupling_interval_sec=3600 export snow_albedo_option=2 diff --git a/tests/tests/datm_cdeps_lnd_era5_rst b/tests/tests/datm_cdeps_lnd_era5_rst index d7ce2ef693..4199a80a80 100644 --- a/tests/tests/datm_cdeps_lnd_era5_rst +++ b/tests/tests/datm_cdeps_lnd_era5_rst @@ -53,6 +53,7 @@ export CALC_SNET=.true. export layout_x=3 export layout_y=8 export LNDRES=C96 +export ATMRES=$LNDRES export mosaic_file="INPUT/${LNDRES}_mosaic.nc" export coupling_interval_sec=3600 export snow_albedo_option=2 diff --git a/tests/tests/datm_cdeps_lnd_gswp3 b/tests/tests/datm_cdeps_lnd_gswp3 index 6f0c86adc7..fa4bd905d4 100644 --- a/tests/tests/datm_cdeps_lnd_gswp3 +++ b/tests/tests/datm_cdeps_lnd_gswp3 @@ -56,6 +56,7 @@ export CALC_SNET=.true. export layout_x=3 export layout_y=8 export LNDRES=C96 +export ATMRES=$LNDRES export mosaic_file="INPUT/${LNDRES}_mosaic.nc" export coupling_interval_sec=3600 export snow_albedo_option=1 @@ -63,4 +64,3 @@ export precip_partition_option=4 export initial_albedo=0.25 export TOPOEDITS="" export FV3_RUN="lnd_datm_cdeps_gswp.IN noahmp_run.IN" - From 860b0c4d0c0bda850efcb57a8ba15735870a2472 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 3 Jan 2025 14:35:46 -0600 Subject: [PATCH 28/32] upload test_changes.list --- tests/test_changes.list | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/test_changes.list b/tests/test_changes.list index e69de29bb2..b0873351ef 100644 --- a/tests/test_changes.list +++ b/tests/test_changes.list @@ -0,0 +1,8 @@ +cpld_control_p8_lnd intel +cpld_restart_p8_lnd intel +datm_cdeps_lnd_gswp3 intel +datm_cdeps_lnd_era5 intel +datm_cdeps_lnd_era5_rst intel +control_p8_atmlnd intel +control_restart_p8_atmlnd intel +control_p8_atmlnd_debug intel From 00901b258c9d89a8a39574209f9c5c53b9310b55 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 3 Jan 2025 14:51:10 -0600 Subject: [PATCH 29/32] sync cdeps and fv3 --- CDEPS-interface/CDEPS | 2 +- FV3 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CDEPS-interface/CDEPS b/CDEPS-interface/CDEPS index 34d1eab8e4..2eccb9f74e 160000 --- a/CDEPS-interface/CDEPS +++ b/CDEPS-interface/CDEPS @@ -1 +1 @@ -Subproject commit 34d1eab8e432cedf8a81976e3b675b32f41b043f +Subproject commit 2eccb9f74ebd8dfc09b53d15f5a96c847b77c443 diff --git a/FV3 b/FV3 index 1c2279a39c..289c1b7b68 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 1c2279a39cd347bf308f303e5970a9f07637b1c3 +Subproject commit 289c1b7b68574824530e5f7470a6a12f99dd5328 From 295f2d02bda65848aa5bb2d8177ad49ac0785771 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Fri, 3 Jan 2025 14:57:19 -0600 Subject: [PATCH 30/32] adjust test files for recent changes in UFS WM --- ...nfigure.s2swal_fast_esmf.IN => ufs.configure.s2swal_fast.IN} | 2 +- tests/tests/cpld_control_p8_lnd | 2 +- tests/tests/cpld_restart_p8_lnd | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename tests/parm/{ufs.configure.s2swal_fast_esmf.IN => ufs.configure.s2swal_fast.IN} (99%) diff --git a/tests/parm/ufs.configure.s2swal_fast_esmf.IN b/tests/parm/ufs.configure.s2swal_fast.IN similarity index 99% rename from tests/parm/ufs.configure.s2swal_fast_esmf.IN rename to tests/parm/ufs.configure.s2swal_fast.IN index 550b955bb1..5fd5de3b04 100644 --- a/tests/parm/ufs.configure.s2swal_fast_esmf.IN +++ b/tests/parm/ufs.configure.s2swal_fast.IN @@ -4,7 +4,7 @@ # ESMF # logKindFlag: ESMF_LOGKIND_MULTI -globalResourceControl: true +globalResourceControl: @[ESMF_THREADING] # EARTH # EARTH_component_list: MED ATM CHM OCN ICE WAV LND diff --git a/tests/tests/cpld_control_p8_lnd b/tests/tests/cpld_control_p8_lnd index 30614ee4ac..8cf35ee7f3 100644 --- a/tests/tests/cpld_control_p8_lnd +++ b/tests/tests/cpld_control_p8_lnd @@ -79,7 +79,7 @@ export LIST_FILES="sfcf021.tile1.nc \ export CPLLND=.true. export CPLLND2ATM=.true. -export UFS_CONFIGURE=ufs.configure.s2swal_fast_esmf.IN +export UFS_CONFIGURE=ufs.configure.s2swal_fast.IN export lnd_model=noahmp export LND_tasks=144 export lnd_ic_type=sfc diff --git a/tests/tests/cpld_restart_p8_lnd b/tests/tests/cpld_restart_p8_lnd index d54b19aa8e..98daaaed36 100644 --- a/tests/tests/cpld_restart_p8_lnd +++ b/tests/tests/cpld_restart_p8_lnd @@ -70,7 +70,7 @@ export LIST_FILES="sfcf024.tile1.nc \ export FV3_RUN="cpld_control_run.IN noahmp_run.IN" export CPLLND=.true. export CPLLND2ATM=.true. -export UFS_CONFIGURE=ufs.configure.s2swal_fast_esmf.IN +export UFS_CONFIGURE=ufs.configure.s2swal_fast.IN export lnd_model=noahmp export LND_tasks=144 export lnd_ic_type=sfc From 8c9fc2bcfd9bac05bf054e6c7c1b4e33f919e22d Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Tue, 7 Jan 2025 13:38:49 -0600 Subject: [PATCH 31/32] update fv3 and noahmp --- FV3 | 2 +- NOAHMP-interface/noahmp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/FV3 b/FV3 index 289c1b7b68..f5f4e43541 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 289c1b7b68574824530e5f7470a6a12f99dd5328 +Subproject commit f5f4e43541080b00ed9c8a74bf38ddf82b25c26e diff --git a/NOAHMP-interface/noahmp b/NOAHMP-interface/noahmp index bc97a71966..559ce9c1cf 160000 --- a/NOAHMP-interface/noahmp +++ b/NOAHMP-interface/noahmp @@ -1 +1 @@ -Subproject commit bc97a71966d701c1d0f7abeb612df3b84119dced +Subproject commit 559ce9c1cf00e4569ddeb9461b9649e33b2efb43 From c09475808f38b93aae72006b80269ac49c188216 Mon Sep 17 00:00:00 2001 From: Ufuk Turuncoglu Date: Mon, 13 Jan 2025 12:08:51 -0600 Subject: [PATCH 32/32] sync FV3 --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index f5f4e43541..1e6a1892d3 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit f5f4e43541080b00ed9c8a74bf38ddf82b25c26e +Subproject commit 1e6a1892d33c936c4ff858d974db6c73d9156509