forked from hafs-community/HAFS
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add data model support to HAFS workflow (hafs-community#91)
This PR allows developers to perform HAFS runs with the Community Data models for Earth Prediction Systems (CDEPS). Developers can use the new workflow capabilities to one-way couple the HYCOM ocean model to a data atmosphere created from the ERA5 reanalysis. Or they can one-way couple the UFS weather model to a data ocean created from the OISST or GHRSST analyses. The workflow is capable of running all of the necessary steps in an automated fashion, including pre-processing the input data, generating the data model grids, and running the forecast. Scripts are provided to download ERA5, OISST, and GHRSST data, which must be run offline. Documentation is available for exercising CDEPS support within the HAFS workflow. This PR is not expected to have any impact on HAFS runs that do not use data models. Co-authored-by: Samuel Trahan <[email protected]> Co-authored-by: Ufuk Turuncoglu <[email protected]> Co-authored-by: Bin.Liu <[email protected]> Co-authored-by: john.steffen <[email protected]> Co-authored-by: Daniel Rosen <[email protected]>
- Loading branch information
1 parent
2369116
commit ff56ac2
Showing
60 changed files
with
2,718 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,3 +7,9 @@ | |
*.exe | ||
*.x | ||
*.log | ||
*~ | ||
*.db | ||
*.db.bak | ||
system.conf | ||
fix/ | ||
rocoto/*.xml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
stream_info: ERA5_HOURLY01 | ||
taxmode01: limit | ||
mapalgo01: redist | ||
tInterpAlgo01: linear | ||
readMode01: single | ||
dtlimit01: 1.5 | ||
stream_offset01: 0 | ||
yearFirst01: _yearFirst_ | ||
yearLast01: _yearLast_ | ||
yearAlign01: _yearFirst_ | ||
stream_vectors01: "u:v" | ||
stream_mesh_file01: _mesh_atm_ | ||
stream_lev_dimname01: null | ||
stream_data_files01: | ||
stream_data_variables01: "u10 Sa_u10m" "v10 Sa_v10m" "t2m Sa_t2m" "skt Sa_tskn" "d2m Sa_tdew" "msl Sa_pslv" "tp Faxa_rain" "cp Faxa_rainc" "lsp Faxa_rainl" "csf Faxa_snowc" "lsf Faxa_snowl" "ssrd Faxa_swdn" "ssr Faxa_swnet" "strd Faxa_lwdn" "str Faxa_lwnet" "aluvp Faxa_swvdr" "aluvd Faxa_swvdf" "alnip Faxa_swndr" "alnid Faxa_swndf" "sshf Faxa_sen" "slhf Faxa_lat" "ewss Faxa_taux" "nsss Faxa_tauy" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
&datm_nml | ||
datamode = "ERA5" | ||
factorfn_data = "null" | ||
factorfn_mesh = "null" | ||
flds_co2 = .false. | ||
flds_presaero = .false. | ||
flds_wiso = .false. | ||
iradsw = 1 | ||
model_maskfile = "_mesh_atm_" | ||
model_meshfile = "_mesh_atm_" | ||
nx_global = 1440 | ||
ny_global = 721 | ||
restfilm = "null" | ||
/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
stream_info: PRESCRIBED01 | ||
taxmode01: limit | ||
mapalgo01: redist | ||
tInterpAlgo01: linear | ||
readMode01: single | ||
dtlimit01: 1.5 | ||
stream_offset01: 0 | ||
yearFirst01: _yearFirst_ | ||
yearLast01: _yearLast_ | ||
yearAlign01: _yearFirst_ | ||
stream_vectors01: "null" | ||
stream_mesh_file01: "INPUT/DOCN_ESMF_mesh.nc" | ||
stream_lev_dimname01: null | ||
stream_data_files01: | ||
stream_data_variables01: "analysed_sst So_t" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
&docn_nml | ||
datamode = "sstdata" | ||
model_maskfile = "_mesh_ocn_" | ||
model_meshfile = "_mesh_ocn_" | ||
nx_global = _nx_global_ | ||
ny_global = _ny_global_ | ||
restfilm = "null" | ||
sst_constant_value = -1.0 | ||
/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
stream_info: PRESCRIBED01 | ||
taxmode01: limit | ||
mapalgo01: redist | ||
tInterpAlgo01: linear | ||
readMode01: single | ||
dtlimit01: 1.5 | ||
stream_offset01: 0 | ||
yearFirst01: _yearFirst_ | ||
yearLast01: _yearLast_ | ||
yearAlign01: _yearFirst_ | ||
stream_vectors01: "null" | ||
stream_mesh_file01: _mesh_ocn_ | ||
stream_lev_dimname01: null | ||
stream_data_files01: | ||
stream_data_variables01: "sst So_t" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
print_esmf: .false. | ||
print_esmf: _print_esmf_ | ||
start_year: YR | ||
start_month: MN | ||
start_day: DY | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
print_esmf: .false. | ||
print_esmf: _print_esmf_ | ||
start_year: YR | ||
start_month: MN | ||
start_day: DY | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
print_esmf: .false. | ||
print_esmf: _print_esmf_ | ||
start_year: YR | ||
start_month: MN | ||
start_day: DY | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,150 @@ | ||
############################################## | ||
##### NEMS Run-Time Configuration File ##### | ||
############################################## | ||
|
||
# EARTH # | ||
EARTH_component_list: MED ATM OCN | ||
EARTH_attributes:: | ||
Verbosity = 0 | ||
:: | ||
|
||
# MED # | ||
MED_model: cmeps | ||
_MED_petlist_bounds_ | ||
MED_attributes:: | ||
Verbosity = 1 | ||
Diagnostic = 0 | ||
ATM_model = _atm_model_ | ||
OCN_model = _ocn_model_ | ||
MED_model = cmeps | ||
history_n = 1 | ||
history_option = ndays | ||
history_ymd = -999 | ||
coupling_mode = hafs | ||
normalization = none | ||
merge_type = copy | ||
:: | ||
|
||
# ATM # | ||
ATM_model: _atm_model_ | ||
_ATM_petlist_bounds_ | ||
ATM_attributes:: | ||
Verbosity = 1 | ||
Diagnostic = 0 | ||
mesh_atm = _mesh_atm_ | ||
:: | ||
|
||
# OCN # | ||
OCN_model: _ocn_model_ | ||
_OCN_petlist_bounds_ | ||
OCN_attributes:: | ||
Verbosity = 1 | ||
Diagnostic = 0 | ||
mesh_ocn = _mesh_ocn_ | ||
# The following are only used by the hycom ocean model. # | ||
cdf_impexp_freq = 3 | ||
cpl_hour = 0 | ||
cpl_min = 0 | ||
cpl_sec = _cpl_dt_ | ||
base_dtg = _base_dtg_ | ||
merge_import = _merge_import_ | ||
skip_first_import = .true. | ||
hycom_arche_output = .false. | ||
hyc_esmf_exp_output = .true. | ||
hyc_esmf_imp_output = .true. | ||
import_diagnostics = .false. | ||
import_setting = flexible | ||
hyc_impexp_file = nems.configure | ||
espc_show_impexp_minmax = .true. | ||
ocean_start_dtg = _ocean_start_dtg_ | ||
start_hour = 0 | ||
start_min = 0 | ||
start_sec = 0 | ||
end_hour = _end_hour_ | ||
end_min = 0 | ||
end_sec = 0 | ||
:: | ||
|
||
# Run Sequence # | ||
runSeq:: | ||
@_cpl_dt_ | ||
ATM -> MED :remapMethod=redist | ||
MED med_phases_post_atm | ||
OCN -> MED :remapMethod=redist | ||
MED med_phases_post_ocn | ||
MED med_phases_prep_atm | ||
MED med_phases_prep_ocn_accum | ||
MED med_phases_prep_ocn_avg | ||
MED -> ATM :remapMethod=redist | ||
MED -> OCN :remapMethod=redist | ||
ATM | ||
OCN | ||
MED med_phases_restart_write | ||
MED med_phases_history_write | ||
@ | ||
:: | ||
|
||
# Other Attributes # | ||
DRIVER_attributes:: | ||
start_type = startup | ||
:: | ||
|
||
ALLCOMP_attributes:: | ||
ATM_model = _atm_model_ | ||
OCN_model = _ocn_model_ | ||
MED_model = cmeps | ||
ScalarFieldCount = 3 | ||
ScalarFieldIdxGridNX = 1 | ||
ScalarFieldIdxGridNY = 2 | ||
ScalarFieldIdxNextSwCday = 3 | ||
ScalarFieldName = cpl_scalars | ||
start_type = startup | ||
case_name = ufs.hafs | ||
restart_n = 1 | ||
restart_option = ndays | ||
restart_ymd = -999 | ||
dbug_flag = 20 | ||
use_coldstart = true | ||
orb_eccen = 1.e36 | ||
orb_iyear = 2000 | ||
orb_iyear_align = 2000 | ||
orb_mode = fixed_year | ||
orb_mvelp = 1.e36 | ||
orb_obliq = 1.e36 | ||
mediator_read_restart = false | ||
mediator_present = true | ||
:: | ||
|
||
ATM_modelio:: | ||
diro = . | ||
logfile = atm.log | ||
:: | ||
|
||
OCN_modelio:: | ||
diro = . | ||
logfile = ocn.log | ||
:: | ||
|
||
MED_modelio:: | ||
diro = . | ||
logfile = med.log | ||
:: | ||
|
||
# The following are only used by the hycom ocean model. # | ||
ocn_export_fields:: | ||
'sst' 'sea_surface_temperature' 'K' | ||
'mask' 'ocean_mask' '1' | ||
'cpl_scalars' 'cpl_scalars' '1' | ||
:: | ||
|
||
# The following are only used by the hycom ocean model. # | ||
ocn_import_fields:: | ||
'taux10' 'mean_zonal_moment_flx_atm' 'N_m-2' | ||
'tauy10' 'mean_merid_moment_flx_atm' 'N_m-2' | ||
'prcp' 'mean_prec_rate' 'kg_m-2_s-1' | ||
'swflxd' 'mean_net_sw_flx' 'W_m-2' | ||
'lwflxd' 'mean_net_lw_flx' 'W_m-2' | ||
'mslprs' 'inst_pres_height_surface' 'Pa' | ||
'sensflx' 'mean_sensi_heat_flx' 'W_m-2' | ||
'latflx' 'mean_laten_heat_flx' 'W_m-2' | ||
:: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
print_esmf: .false. | ||
print_esmf: _print_esmf_ | ||
start_year: YR | ||
start_month: MN | ||
start_day: DY | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.