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

Add S2SA nems.configure template #1593

Merged
Merged
Show file tree
Hide file tree
Changes from 6 commits
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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,9 @@ ush/global_chgres.sh
ush/global_chgres_driver.sh
ush/global_cycle.sh
ush/global_cycle_driver.sh
ush/imsfv3_scf2ioda.py
WalterKolczynski-NOAA marked this conversation as resolved.
Show resolved Hide resolved
ush/jediinc2fv3.py
ush/letkf_create_ens.py
WalterKolczynski-NOAA marked this conversation as resolved.
Show resolved Hide resolved
ush/mkwfsgbl.sh
ush/ufsda
ush/wafs_blending.sh
Expand Down
9 changes: 7 additions & 2 deletions docs/source/setup.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ where:
* ``$APP`` is the target application, one of:

- ATM: atmosphere-only [default]
- ATMW: atm-wave
- ATMA: atm-aerosols
- ATMW: atm-wave (currently non-functional)
- S2S: atm-ocean-ice
- S2SA: atm-ocean-ice-aerosols
- S2SW: atm-ocean-ice-wave
Expand Down Expand Up @@ -150,7 +150,12 @@ where:
* ``$APP`` is the target application, one of:

- ATM: atmosphere-only [default]
- ATMW: atm-wave
- ATMA: atm-aerosols
- ATMW: atm-wave (currently non-functional)
- S2S: atm-ocean-ice
- S2SA: atm-ocean-ice-aerosols
- S2SW: atm-ocean-ice-wave
- S2SWA: atm-ocean-ice-wave-aerosols

* ``$IDATE`` is the initial start date of your run (first cycle CDATE, YYYYMMDDCC)
* ``$EDATE`` is the ending date of your run (YYYYMMDDCC) and is the last cycle that will complete
Expand Down
2 changes: 1 addition & 1 deletion parm/chem/SU2G_instance_SU.rc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ aerosol_monochromatic_optics_file: ExtData/monochromatic/optics_SU.v1_3.nc
nbins: 4

# Volcanic pointwise sources
volcano_srcfilen: ExtData/volcanic/so2_volcanic_emissions_Carns.%y4%m2%d2.rc
volcano_srcfilen: ExtData/nexus/VOLCANO/v2021-09/%y4/%m2/so2_volcanic_emissions_Carns.%y4%m2%d2.rc

# Heights [m] of LTO, CDS and CRS aviation emissions layers
aviation_vertical_layers: 0.0 100.0 9.0e3 10.0e3
Expand Down
11 changes: 7 additions & 4 deletions parm/config/gfs/config.efcs
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,13 @@
echo "BEGIN: config.efcs"

# TODO: the _ENKF counterparts need to be defined in config.base
export DO_AERO=${DO_AERO_ENKF:-"NO"}
export DO_OCN=${DO_OCN_ENKF:-"NO"}
export DO_ICE=${DO_ICE_ENKF:-"NO"}
export DO_WAVE=${DO_WAVE_ENKF:-"NO"}
# TODO: Using different values for ensemble doesn't work because
# config.fcst sets a bunch of derived values based on these
# that is not duplicated here. [#1692]
# export DO_AERO=${DO_AERO_ENKF:-"NO"}
# export DO_OCN=${DO_OCN_ENKF:-"NO"}
# export DO_ICE=${DO_ICE_ENKF:-"NO"}
# export DO_WAVE=${DO_WAVE_ENKF:-"NO"}

# TODO: Possibly need OCNRES_ENKF, ICERES_ENKF, WAVRES_ENKF too
if [[ ${DO_OCN} == "YES" ]]; then
Expand Down
128 changes: 128 additions & 0 deletions ush/nems.configure.cpld_aero.IN
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
#############################################
#### NEMS Run-Time Configuration File #####
#############################################

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

# EARTH #
EARTH_component_list: MED ATM CHM OCN ICE
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 = @[DumpFields]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need this variable in GW? This might only be used for debug purpose. I think it can be set to false.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@junwang-noaa I think we are just being consistent w/ the other nems.configure templates. It is default set to .false. I think. If not, we can address in a later PR.

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 = @[DumpFields]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

ProfileMemory = false
OverwriteSlice = true
mesh_ocn = @[MESH_OCN_ICE]
::

# ICE #
ICE_model: @[ice_model]
ICE_petlist_bounds: @[ice_petlist_bounds]
ICE_omp_num_threads: @[ice_omp_num_threads]
ICE_attributes::
Verbosity = 0
DumpFields = @[DumpFields]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and here

ProfileMemory = false
OverwriteSlice = true
mesh_ice = @[MESH_OCN_ICE]
stop_n = @[RESTART_N]
stop_option = nhours
stop_ymd = -999
::

# 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 -> ATM :remapMethod=redist
MED -> ICE :remapMethod=redist
ATM phase1
ATM -> CHM
CHM
CHM -> ATM
ATM phase2
ICE
ATM -> MED :remapMethod=redist
MED med_phases_post_atm
ICE -> MED :remapMethod=redist
MED med_phases_post_ice
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]
OCN_model = @[ocn_model]
history_n = 0
history_option = nhours
history_ymd = -999
coupling_mode = @[CPLMODE]
history_tile_atm = @[ATMTILESIZE]
::
ALLCOMP_attributes::
ScalarFieldCount = 2
ScalarFieldIdxGridNX = 1
ScalarFieldIdxGridNY = 2
ScalarFieldName = cpl_scalars
start_type = @[RUNTYPE]
restart_dir = RESTART/
case_name = ufs.cpld
restart_n = @[RESTART_N]
restart_option = nhours
restart_ymd = -999
dbug_flag = @[cap_dbug_flag]
use_coldstart = @[use_coldstart]
use_mommesh = @[use_mommesh]
eps_imesh = @[eps_imesh]
stop_n = @[FHMAX]
stop_option = nhours
stop_ymd = -999
::
2 changes: 1 addition & 1 deletion workflow/applications/gfs_forecast_only.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def get_task_names(self):
if self.do_atm:
tasks += ['post']

if self.model_app in ['S2S', 'S2SW', 'S2SWA', 'NG-GODAS']:
if self.do_ocean:
tasks += ['ocnpost']

if self.do_atm:
Expand Down
2 changes: 1 addition & 1 deletion workflow/setup_expt.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ def fill_COMROT_cycled(host, inputs):

do_ocean = do_ice = do_med = False

if inputs.app in ['S2S', 'S2SW']:
if 'S2S' in inputs.app:
aerorahul marked this conversation as resolved.
Show resolved Hide resolved
do_ocean = do_ice = do_med = True

if inputs.icsdir is None:
Expand Down