Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sm feb242020 #72

Merged
merged 8 commits into from
Mar 6, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
add 2 way atm-wav test
  • Loading branch information
junwang-noaa committed Feb 27, 2020
commit 0adb99bb52945a2fef4b142b4ef6d5bb0d9fc078
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[submodule "FV3"]
path = FV3
url = https://github.com/NOAA-EMC/fv3atm
branch = develop
url = https://github.com/SMoorthi-emc/fv3atm
branch = SM_Jan102020
[submodule "NEMS"]
path = NEMS
url = https://github.com/NOAA-EMC/NEMS
Expand Down
2 changes: 1 addition & 1 deletion FV3
Submodule FV3 updated 70 files
+2 −2 .gitmodules
+66 −23 atmos_model.F90
+1 −0 ccpp/config/ccpp_prebuild_config.py
+1 −1 ccpp/physics
+0 −1 ccpp/suites/suite_FV3_CPT_v0.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017.xml
+1 −2 ccpp/suites/suite_FV3_GFS_2017_coupled.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_csawmg.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_csawmgshoc.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_gfdlmp.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_gfdlmp_noahmp.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_gfdlmp_regional.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_gfdlmp_regional_c768.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_h2ophys.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_myj.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_ntiedtke.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_ozphys_2015.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_sas.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_satmedmf.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_satmedmfq.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_shinhong.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_stretched.xml
+0 −1 ccpp/suites/suite_FV3_GFS_2017_ysu.xml
+88 −0 ccpp/suites/suite_FV3_GFS_cpld_rasmgshoc.xml
+90 −0 ccpp/suites/suite_FV3_GFS_cpldnst_rasmgshoc.xml
+92 −0 ccpp/suites/suite_FV3_GFS_rasmgshoc.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15_gf.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15_gf_thompson.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15_mynn.xml
+94 −0 ccpp/suites/suite_FV3_GFS_v15_ras.xml
+89 −0 ccpp/suites/suite_FV3_GFS_v15_rasmgshoc.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15_thompson.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15_thompson_mynn.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15p2.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v15plus.xml
+94 −0 ccpp/suites/suite_FV3_GFS_v15plusras.xml
+0 −1 ccpp/suites/suite_FV3_GFS_v16beta.xml
+0 −1 ccpp/suites/suite_FV3_GSD_SAR.xml
+0 −1 ccpp/suites/suite_FV3_GSD_noah.xml
+0 −1 ccpp/suites/suite_FV3_GSD_v0.xml
+0 −1 ccpp/suites/suite_FV3_GSD_v0_drag_suite.xml
+0 −1 ccpp/suites/suite_FV3_HAFS_ferhires_update_moist.xml
+1 −1 cpl/module_cap_cpl.F90
+8 −5 cpl/module_cplfields.F90
+6 −6 fv3_cap.F90
+3 −3 gfsphysics/GFS_layer/GFS_driver.F90
+287 −219 gfsphysics/GFS_layer/GFS_physics_driver.F90
+8 −8 gfsphysics/GFS_layer/GFS_radiation_driver.F90
+91 −71 gfsphysics/GFS_layer/GFS_typedefs.F90
+70 −26 gfsphysics/GFS_layer/GFS_typedefs.meta
+10 −10 gfsphysics/physics/cires_ugwp_initialize.F90
+26 −26 gfsphysics/physics/cires_ugwp_triggers.F90
+1 −1 gfsphysics/physics/dcyc2.f
+106 −89 gfsphysics/physics/gcm_shoc.f90
+12 −5 gfsphysics/physics/gcycle.F90
+10 −10 gfsphysics/physics/gwdps.f
+25 −12 gfsphysics/physics/m_micro_driver.F90
+43 −51 gfsphysics/physics/micro_mg2_0.F90
+18 −7 gfsphysics/physics/micro_mg3_0.F90
+138 −109 gfsphysics/physics/micro_mg_utils.F90
+14 −2 gfsphysics/physics/moninshoc.f
+40 −21 gfsphysics/physics/rascnvv2.f
+23 −21 gfsphysics/physics/sfc_diff.f
+2 −2 gfsphysics/physics/sfc_nst.f
+1 −1 gfsphysics/physics/sfc_sice.f
+164 −164 gfsphysics/physics/ugwp_driver_v0.f
+13 −4 io/FV3GFS_io.F90
+8 −8 module_fcst_grid_comp.F90
+15 −2 namphysics/NAM_layer/NAM_typedefs.F90
1 change: 1 addition & 0 deletions compsets/all.input
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ run fv3_restart @ fv3, standard, baseline
run fv3_read_inc @ fv3, standard, baseline
run fv3_gfdlmp @ fv3, standard, baseline
run fv3_gfdlmprad @ fv3, standard, baseline, ww3, plat==hera.intel,plat==wcoss_dell_p3,plat==wcoss.cray
run fv3_gfdlmprad_atmwav @ fv3, standard, baseline, ww3, plat==hera.intel,plat==wcoss_dell_p3,plat==wcoss.cray
run fv3_gfdlmprad_gwd @ fv3, standard, baseline
run fv3_gfdlmprad_noahmp @ fv3, standard, baseline
run fv3_thompson @ fv3, standard, baseline
Expand Down
30 changes: 30 additions & 0 deletions compsets/fv3.input
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,7 @@ fv3_defaults = {

CPLFLX='.F.'
CPLWAV='.F.'
CPLWAV2ATM='.F.'
CPL='.false.'
}

Expand Down Expand Up @@ -1224,6 +1225,35 @@ test fv3_gfdlmprad: fv3_ww3.exe {

}

test fv3_gfdlmprad_atmwav: fv3_ww3.exe {
use fv3_gfdlmprad

TEST_DESCR="Compare FV3 GFDL mircrophysics radiation change with 2 way WW3 results with previous trunk version"
CNTL_NAME='fv3_gfdlmprad_atmwav'

CPLWAV2ATM='.true.'
coupling_interval_sec=1200.0 #coupling time step, want it to be multiple of 1800 and FV3 time step

filters input {
'input.nml' <=atparse= "@[PARMnems]/gfdlmp.nml.IN"
'model_configure' <=atparse= "@[PARMnems]/model_configure.IN"
'aerosol.dat' <=copyfrom= "@[FV3_input_data]/INPUT"
'co2historicaldata_201*.txt' <=copyfrom= "@[FV3_input_data]/INPUT"
'sfc_emissivity_idx.txt' <=copyfrom= "@[FV3_input_data]/INPUT"
'solarconstant_noaa_an.txt' <=copyfrom= "@[FV3_input_data]/INPUT"
'*grb' <=copyfrom= "@[FV3_input_data]"
'*_table' <=copyfrom= "@[FV3_input_data]"
'diag_table' <=copy= "@[FV3_input_data]/diag_table_gfdlmp"
'field_table' <=copy= "@[FV3_input_data]/field_table_gfdlmp"
'INPUT' <=copy= "@[FV3_input_data]/INPUT"
'global_o3prdlos.f77' <=copy= "@[FV3_input_data]/INPUT/global_o3prdlos.f77"
'model_configure' <=atparse= "@[PARMnems]/model_configure.IN"
'nems.configure' <=atparse= "@[PARMnems]/nems.configure.blocked_atm_wav_2way.IN"
'mod_def.*' <=copyfrom= "@[WW3_input_data]"
'ww3_multi.inp' <=copyfrom= "@[WW3_input_data]/@[SYEAR]@[SMONTH]@[SDAY]"
}

}
test fv3_gfdlmprad_gwd: fv3.exe {
use fv3_gfdlmp

Expand Down
1 change: 1 addition & 0 deletions parm/ccpp_control.nml.IN
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@
nstf_name = @[NSTF_NAME]
cplflx = @[CPLFLX]
cplwav = @[CPLWAV]
cplwav2atm = @[CPLWAV2ATM]
iau_delthrs = 6
iaufhrs = 30
iau_inc_files = @[IAU_INC_FILES]
Expand Down
1 change: 1 addition & 0 deletions parm/ccpp_gfdlmp.nml.IN
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@
nstf_name = @[NSTF_NAME]
cplflx = @[CPLFLX]
cplwav = @[CPLWAV]
cplwav2atm = @[CPLWAV2ATM]
xkzminv = 0.3
xkzm_m = 1.0
xkzm_h = 1.0
Expand Down
1 change: 1 addition & 0 deletions parm/gfdlmp.nml.IN
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,7 @@
iau_drymassfixer = @[IAU_DRYMASSFIXER]
cplflx = @[CPLFLX]
cplwav = @[CPLWAV]
cplwav2atm = @[CPLWAV2ATM]
xkzminv = 0.3
xkzm_m = 1.0
xkzm_h = 1.0
Expand Down
1 change: 1 addition & 0 deletions parm/input.nml.IN
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,7 @@
nstf_name = @[NSTF_NAME]
cplflx = @[CPLFLX]
cplwav = @[CPLWAV]
cplwav2atm = @[CPLWAV2ATM]
iau_delthrs = 6
iaufhrs = 30
iau_inc_files = @[IAU_INC_FILES]
Expand Down
36 changes: 36 additions & 0 deletions parm/nems.configure.blocked_atm_wav_2way.IN
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#############################################
#### NEMS Run-Time Configuration File #####
#############################################

# EARTH #
EARTH_component_list: ATM WAV
EARTH_attributes::
Verbosity = 0
::

# ATM #
ATM_model: @[atm_model]
ATM_petlist_bounds: @[atm_petlist_bounds]
ATM_attributes::
Verbosity = 0
DumpFields = false
::

# WAV #
WAV_model: @[wav_model]
WAV_petlist_bounds: @[wav_petlist_bounds]
WAV_attributes::
Verbosity = 0
::



# Run Sequence #
runSeq::
@@[coupling_interval_sec]
ATM -> WAV
WAV -> ATM :srcMaskValues=1
ATM
WAV
@
::
1 change: 1 addition & 0 deletions tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,7 @@ export H2O_PHYS=.F.
export CPL=.F.
export CPLFLX=.F.
export CPLWAV=.F.
export CPLWAV2ATM=.F.
export DAYS=1
export NPX=97
export NPY=97
Expand Down
3 changes: 3 additions & 0 deletions tests/rt.conf
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@ COMPILE | WW3=Y
RUN | fv3_gfdlmprad | standard | wcoss_cray | fv3 |
RUN | fv3_gfdlmprad | standard | wcoss_dell_p3 | fv3 |
RUN | fv3_gfdlmprad | standard | hera.intel | fv3 |
RUN | fv3_gfdlmprad_atmwav | standard | wcoss_cray | fv3 |
RUN | fv3_gfdlmprad_atmwav | standard | wcoss_dell_p3 | fv3 |
RUN | fv3_gfdlmprad_atmwav | standard | hera.intel | fv3 |
RUN | fv3_wrtGauss_nemsio_c768 | standard | hera.intel | fv3 |
###RUN | fv3_wrtGauss_nemsio_c768 | standard | wcoss_cray | fv3 |
###RUN | fv3_wrtGauss_nemsio_c768 | standard | wcoss_dell_p3 | fv3 |
Expand Down
83 changes: 83 additions & 0 deletions tests/tests/fv3_gfdlmprad_atmwav
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
###############################################################################
#
# FV3 GFDL-MPrad 2way atm-way coupling test
#
###############################################################################

export TEST_DESCR="Compare FV3 GFDL-MP radiation interaction 2way atm-way coupling option with the control"

export CNTL_DIR=fv3_gfdlmprad_atmwav

export LIST_FILES="atmos_4xdaily.tile1.nc \
atmos_4xdaily.tile2.nc \
atmos_4xdaily.tile3.nc \
atmos_4xdaily.tile4.nc \
atmos_4xdaily.tile5.nc \
atmos_4xdaily.tile6.nc \
phyf000.nemsio \
phyf024.nemsio \
dynf000.nemsio \
dynf024.nemsio \
RESTART/coupler.res \
RESTART/fv_core.res.nc \
RESTART/fv_core.res.tile1.nc \
RESTART/fv_core.res.tile2.nc \
RESTART/fv_core.res.tile3.nc \
RESTART/fv_core.res.tile4.nc \
RESTART/fv_core.res.tile5.nc \
RESTART/fv_core.res.tile6.nc \
RESTART/fv_srf_wnd.res.tile1.nc \
RESTART/fv_srf_wnd.res.tile2.nc \
RESTART/fv_srf_wnd.res.tile3.nc \
RESTART/fv_srf_wnd.res.tile4.nc \
RESTART/fv_srf_wnd.res.tile5.nc \
RESTART/fv_srf_wnd.res.tile6.nc \
RESTART/fv_tracer.res.tile1.nc \
RESTART/fv_tracer.res.tile2.nc \
RESTART/fv_tracer.res.tile3.nc \
RESTART/fv_tracer.res.tile4.nc \
RESTART/fv_tracer.res.tile5.nc \
RESTART/fv_tracer.res.tile6.nc \
RESTART/sfc_data.tile1.nc \
RESTART/sfc_data.tile2.nc \
RESTART/sfc_data.tile3.nc \
RESTART/sfc_data.tile4.nc \
RESTART/sfc_data.tile5.nc \
RESTART/sfc_data.tile6.nc \
RESTART/phy_data.tile1.nc \
RESTART/phy_data.tile2.nc \
RESTART/phy_data.tile3.nc \
RESTART/phy_data.tile4.nc \
RESTART/phy_data.tile5.nc \
RESTART/phy_data.tile6.nc \
out_grd.glo_30m"


export_fv3

export TASKS=264
export NODES=$(expr $TASKS / $TPN + 1)

DT_ATMOS="1200"
export LGFDLMPRAD=.true.
export EFFR_IN=.true.

export OUTPUT_GRID="'gaussian_grid'"
export OUTPUT_FILE="'nemsio'"
export WRITE_NEMSIOFLIP=.true.
export WRITE_FSYNCFLAG=.true.

export CPL=.true.
export CPLWAV=.T.
export CPLWAV2ATM=.T.
export atm_model='fv3'
export atm_petlist_bounds="0 149"
export wav_model='ww3'
export wav_petlist_bounds="150 263"
export coupling_interval_sec=3600.0 #coupling time step, want it to be multiple of 1800 and FV3 time step
export NEMS_CONFIGURE="nems.configure.blocked_atm_wav_2way.IN"

export INPUT_NML=gfdlmp.nml.IN
export FV3_RUN=gfdlmp_run.IN

RUN_SCRIPT=rt_fv3.sh