Skip to content

Commit

Permalink
Add two regression tests to add benchmark regtest and wav-atm couplin…
Browse files Browse the repository at this point in the history
…g test (#61)

* Update ufs-s2s-model

* update FV3, MOM6 and NEMS

* update FV3 to latest develop
Update datesuite tests to include 2013 tests
update baseline area on hera

* Adding a regression test that matches benchmark physics Issue #46

* changing test to 1 day instead of 2

* updating files to match ufs-weather-model develop branch

* moving to the latest NEMS

* adding WW3 regression test following 1 day benchmark RT Issue #31

* rolling back the REGTEST-FINGERPRINT.md and pointing to baseline

* Updated FV3 and NEMS components.

* Add log files.

* update to latest NEMS

* update README

* remove doc folder

* updating post to latest version and a few other files to match ufs-weather

* logs for hera

* moved update-20200321 to develop-20200322 in baseline area

* reverting IMFSHALCNV and IMFDEEPCNV to parameters in input.mom6.nml

* log files confirming last change was okay

Co-authored-by: Bin.Li <bin.li@noaa.gov>
  • Loading branch information
JessicaMeixner-NOAA and binli2337 authored Mar 24, 2020
1 parent 888c732 commit a59b6cf
Show file tree
Hide file tree
Showing 39 changed files with 5,743 additions and 1,149 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,7 @@
[submodule "MOM6"]
path = MOM6
url = https://github.com/NOAA-EMC/MOM6-interface
[submodule "WW3"]
path = WW3
url = https://github.com/NOAA-EMC/WW3.git
branch = develop
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ Start at the ufs-s2s-model wiki (https://github.com/ufs-community/ufs-s2s-model/
| ```compsets``` | Files used for setting up regression test suite. |
| ```conf``` | Configuration files used for compiling code on various computer systems. |
| ```coupledFV3_MOM6_CICE.appBuilder``` | NEMS application builder file used by NEMS/NEMSAppBuilder. |
| ```coupledFV3_MOM6_CICE_debug.appBuilder``` | NEMS application builder file used by NEMS/NEMSAppBuilder. |
| ```coupledFV3_MOM6_CICE_WW3.appBuilder```| NEMS application builder file used by NEMS/NEMSAppBuilder. |
| ```FMS``` | GFDL FMS with minor modifications from EMC. |
| ```FV3``` | FV3GFS code. |
| ```log``` | Log files from compiling and regression testing. |
Expand All @@ -23,6 +25,8 @@ Start at the ufs-s2s-model wiki (https://github.com/ufs-community/ufs-s2s-model/
| ```NEMS``` | NEMS source code. |
| ```parm``` | A directory containing input namelist files and model configuration files. |
| ```stochastic_physics``` | A package containing the stochastic physics pattern generator developed at NOAA/ESRL/PSD. |
| ```WW3``` | WAVEWATCH III source code. |


# Disclaimer

Expand Down
1 change: 1 addition & 0 deletions WW3
Submodule WW3 added at 71380e
6 changes: 6 additions & 0 deletions compsets/all.input
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@ run cpld_fv3_mom6_cice_2d_decomp @ fv3, coupledapp, warm
run cpld_fv3_mom6_cice_cold_satmedmf @ fv3, coupledapp, cold, physics
run cpld_fv3_mom6_cice_1d_satmedmf @ fv3, coupledapp, warm, physics

run cpld_fv3_384_mom6_cice_cold_bmark_rt @ fv3, coupledapp, coldBM, physics, bm
run cpld_fv3_384_mom6_cice_1d_bmark_rt @ fv3, coupledapp, warm384, physics, bm

run cpld_fv3_384_mom6_cice_ww3_cold_bmark_rt @ fv3, coupledapp, coldBM, physics, bm, ww3
run cpld_fv3_384_mom6_cice_ww3_1d_bmark_rt @ fv3, coupledapp, warm384, physics, bm, ww3

#run cpld_fv3_mom6_cice_1d_gfdlmprad_gwd @ fv3, coupledapp, warm, physics
#run cpld_fv3_mom6_cice_1d_gfdlmprad_noahmp @ fv3, coupledapp, warm, physics

Expand Down
53 changes: 53 additions & 0 deletions compsets/benchmarkRT_cold.input
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
########################################################################

test cpld_fv3_384_mom6_cice_cold_bmark_rt: fv3_mom6_cice.exe {
use cpld_fv3_mom6_cice_cold_atm_flux
use plat%default_cpl_benchmark

ATMRES='384'
TEST_DESCR="Fully coupled FV3-MOM6-CICE system - cold 384"
CNTL_NAME="RT-Baselines_cold_bmrt"
CNTLMED="@[plat%BASELINE]/MEDIATOR_bmrt"

DT_ATMOS='450'
NPX='385'
NPY='385'
IMO='1536'
JMO='768'
FNALBC="'global_snowfree_albedo.bosu.t766.1536.768.rg.grb',"
FNVETC="'global_vegtype.igbp.t766.1536.768.rg.grb',"
FNSOTC="'global_soiltype.statsgo.t766.1536.768.rg.grb',"
FNSMCC="'global_soilmgldas.statsgo.t766.1536.768.grb',"
FNABSC="'global_mxsnoalb.uariz.t766.1536.768.rg.grb',"

FV3_mosaic="C@[ATMRES]"

# inputs and fixed files for benchmark runs to match workflow
INPUT_NML="input.benchmark.nml.IN"
FIELD_TABLE="field_table.gfdlmp"
OZONE_data="@[FV3_input_data]/ozprdlos_2015_new_sbuvO3_tclm15_nuchem.f77"
CO2_data="@[plat%INPUTS]/FV3_input_bm2/INPUT"

# - set date YYYYMMDDHH
SYEAR='2013'
SMONTH='04'
SDAY='01'
SHOUR='00'
CDATE="@[SYEAR]@[SMONTH]@[SDAY]@[SHOUR]"

# - set run type for CICE in ice_in
RUNID='cpcice'

# - set initialization type for MOM6
MOM6_RESTART_SETTING = 'r'

# set locations of ICs
BM_IC="@[plat%INPUTS]/BM_IC/@[CDATE]"
FV3_IC="@[BM_IC]/gfs/C384/INPUT"
MOM6_IC="@[BM_IC]/mom6_da"
CICE5_IC="@[BM_IC]/cpc"

spawn execute {
{"@[build%target]", ranks="@[TASKS]", threads="@[THRD]", ppn="@[TPN]" }
}
}
146 changes: 146 additions & 0 deletions compsets/benchmarkRT_warm.input
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
########################################################################

test cpld_fv3_384_mom6_cice_1d_bmark_rt: fv3_mom6_cice.exe {
use cpld_fv3_mom6_cice_2d_atm_flux
use plat%default_cpl_benchmark

ATMRES='384'
TEST_DESCR="Fully coupled FV3-MOM6-CICE 1 day run"
CNTL_NAME="RT-Baselines_1d_bmrt"

DAYS='1' # run for 1 day
FHMAX='24'

DT_ATMOS='450'
NPX='385'
NPY='385'
IMO='1536'
JMO='768'
FNALBC="'global_snowfree_albedo.bosu.t766.1536.768.rg.grb',"
FNVETC="'global_vegtype.igbp.t766.1536.768.rg.grb',"
FNSOTC="'global_soiltype.statsgo.t766.1536.768.rg.grb',"
FNSMCC="'global_soilmgldas.statsgo.t766.1536.768.grb',"
FNABSC="'global_mxsnoalb.uariz.t766.1536.768.rg.grb',"

FV3_mosaic="C@[ATMRES]"

#no high freq fv3 output
NFHMAX_HF='-1'
NFHOUT_HF='-1'

# inputs and fixed files for benchmark runs to match workflow
INPUT_NML="input.benchmark.nml.IN"
FIELD_TABLE="field_table.gfdlmp"
OZONE_data="@[FV3_input_data]/ozprdlos_2015_new_sbuvO3_tclm15_nuchem.f77"
CO2_data="@[plat%INPUTS]/FV3_input_bm2/INPUT"

# - set date YYYYMMDDHH
SYEAR='2013'
SMONTH='04'
SDAY='01'
SHOUR='00'
CDATE="@[SYEAR]@[SMONTH]@[SDAY]@[SHOUR]"

# - set run type for CICE in ice_in
RUNID='cpcice'

# - set initialization type for MOM6
MOM6_RESTART_SETTING = 'r'

# set locations of ICs
BM_IC="@[plat%INPUTS]/BM_IC/@[CDATE]"
FV3_IC="@[BM_IC]/gfs/C384/INPUT"
MOM6_IC="@[BM_IC]/mom6_da"
CICE5_IC="@[BM_IC]/cpc"

# set location of cold start for mediator restarts
MED_restart_data="@[plat%INPUTS]/MEDIATOR_bmrt"
RESTART_MED="mediator_*"


# Specify output files:
criteria output {
# WORKFILE .comparison. TARGET
'phyf024.tile1.nc' .bitcmp. "@[CNTL]"
'phyf024.tile2.nc' .bitcmp. "@[CNTL]"
'phyf024.tile3.nc' .bitcmp. "@[CNTL]"
'phyf024.tile4.nc' .bitcmp. "@[CNTL]"
'phyf024.tile5.nc' .bitcmp. "@[CNTL]"
'phyf024.tile6.nc' .bitcmp. "@[CNTL]"
'dynf024.tile1.nc' .bitcmp. "@[CNTL]"
'dynf024.tile2.nc' .bitcmp. "@[CNTL]"
'dynf024.tile3.nc' .bitcmp. "@[CNTL]"
'dynf024.tile4.nc' .bitcmp. "@[CNTL]"
'dynf024.tile5.nc' .bitcmp. "@[CNTL]"
'dynf024.tile6.nc' .bitcmp. "@[CNTL]"
'RESTART/coupler.res' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_core.res.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_srf_wnd.res.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/fv_tracer.res.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/phy_data.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'RESTART/sfc_data.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'MOM6_RESTART/MOM.res.nc' .bitcmp. "@[CNTL]/RESTART"
'MOM6_RESTART/MOM.res_1.nc' .bitcmp. "@[CNTL]/RESTART"
'MOM6_RESTART/MOM.res_2.nc' .bitcmp. "@[CNTL]/RESTART"
'MOM6_RESTART/MOM.res_3.nc' .bitcmp. "@[CNTL]/RESTART"
'restart/iced.2013-04-02-00000.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtm_restart.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumOcn_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumIce_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumLnd_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumHyd_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBaccumAtmOcn_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile1.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile2.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile3.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile4.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile5.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtm_a_restart.tile6.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBIce_i_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBOcn_o_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBLnd_l_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBHyd_h_restart.nc' .bitcmp. "@[CNTL]/RESTART"
'mediator_FBAtmOcn_o_restart.nc' .bitcmp. "@[CNTL]/RESTART"
# Executable validation. This makes an MD5 sum of the fv3.exe
# for comparison against the MD5 sum made in the build job.
# This is to ensure the executable did not change during the
# test suite.
"@[build%target]" .md5cmp. "@[fv3_mom6_cice.exe%md5sum]"
}


spawn execute {
{"@[build%target]", ranks="@[TASKS]", threads="@[THRD]", ppn="@[TPN]" }
}
}
Loading

0 comments on commit a59b6cf

Please sign in to comment.