From 8299448bc1dd0431162f5ae1f5695453727a6442 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 09:53:38 -0500 Subject: [PATCH 01/18] update hash of ufs_model --- sorc/ufs_model.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ufs_model.fd b/sorc/ufs_model.fd index 24f5a415..e784814d 160000 --- a/sorc/ufs_model.fd +++ b/sorc/ufs_model.fd @@ -1 +1 @@ -Subproject commit 24f5a415173e625606a65b90163464adcf2770c6 +Subproject commit e784814dfce3fb01e82be6d3949f9811860041d7 From e35f6a8083e08ab544f9ff18e5766a7a21ac318a Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 12:17:40 -0500 Subject: [PATCH 02/18] update forecast script --- parm/datm_cdeps_lnd_gswp3_rst | 62 -- parm/templates/template.datm.streams | 61 ++ parm/templates/template.datm_in | 14 + parm/templates/template.input.nml | 28 + parm/templates/template.noahmptable.tbl | 780 ++++++++++++++++++++++++ parm/templates/template.ufs.configure | 125 ++++ scripts/exlandda_forecast.sh | 95 +-- 7 files changed, 1037 insertions(+), 128 deletions(-) delete mode 100644 parm/datm_cdeps_lnd_gswp3_rst create mode 100644 parm/templates/template.datm.streams create mode 100644 parm/templates/template.datm_in create mode 100644 parm/templates/template.input.nml create mode 100644 parm/templates/template.noahmptable.tbl create mode 100644 parm/templates/template.ufs.configure diff --git a/parm/datm_cdeps_lnd_gswp3_rst b/parm/datm_cdeps_lnd_gswp3_rst deleted file mode 100644 index aeeeb00e..00000000 --- a/parm/datm_cdeps_lnd_gswp3_rst +++ /dev/null @@ -1,62 +0,0 @@ -# -# DATM_CDEPS_NOAHMP_GSWP test -# - -export TEST_DESCR="DATM_CDEPS_NOAHMP_GSWP3_RST - control restart" - -export CNTL_DIR="datm_cdeps_lnd_gswp3" - -export LIST_FILES="ufs.cpld.lnd.out.2000-01-02-00000.tile1.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile2.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile3.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile4.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile5.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile6.nc" - -export_datm_cdeps - -export SYEAR=2000 -export SMONTH=01 -export SDAY=03 -export SHOUR=00 -export FHMAX=24 -export FHROT=0 - -export DATM_IN_CONFIGURE=datm_in.IN -export MESH_ATM=fv1.9x2.5_141008_ESMFmesh.nc -export atm_datamode=CLMNCEP -export ATM_NX_GLB=144 -export ATM_NY_GLB=96 - -export DATM_STREAM_CONFIGURE=datm.streams.multi.IN -export MESH_ATM_DATA="INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc" -export MESH_ATM_TOPO="INPUT/topodata_0.9x1.SCRIP.210520_ESMFmesh.nc" -export SDATE=1999 -export EDATE=2000 -export DATA_ATM01="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.2000-01.nc\"" -export DATA_ATM02="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.2000-01.nc\"" -export DATA_ATM03="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.2000-01.nc\"" -export DATA_ATM04="\"INPUT/topodata_0.9x1.25_USGS_070110_stream_c151201.nc\"" - -export UFS_CONFIGURE="ufs.configure.atm_lnd.IN" -export med_model="cmeps" -export atm_model="datm" -export lnd_model="noahmp" -export CPLMODE="ufs.nfrac.aoflux" -export RUNTYPE="continue" -export READRESTART=.false. -export ATM_compute_tasks=144 -export OCN_tasks=0 -export ICE_tasks=0 -export LND_tasks=144 -export lnd_ic_type='custom' -export CALC_SNET=.true. -export layout_x=3 -export layout_y=8 -export mosaic_file="INPUT/C96_mosaic.nc" -export coupling_interval_sec=3600 -export TOPOEDITS="" -export WARM_START=.true. - -export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%05d" $(( (${FHROT}+ ${SHOUR})*3600 )))" -export FV3_RUN="lnd_datm_cdeps_gswp.IN noahmp_run.IN" diff --git a/parm/templates/template.datm.streams b/parm/templates/template.datm.streams new file mode 100644 index 00000000..feeacb26 --- /dev/null +++ b/parm/templates/template.datm.streams @@ -0,0 +1,61 @@ +stream_info: CLMGSWP3v1.Solar01 CLMGSWP3v1.Precip02 CLMGSWP3v1.TPQW03 topo.observed04 + +taxmode01: limit +mapalgo01: bilinear +tInterpAlgo01: coszen +readMode01: single +dtlimit01: 1.5 +stream_offset01: 0 +yearFirst01: 1999 +yearLast01: 2000 +yearAlign01: 1999 +stream_vectors01: null +stream_mesh_file01: INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc +stream_lev_dimname01: null +stream_data_files01: "INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.1999-12.nc" "INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.2000-01.nc" +stream_data_variables01: "FSDS Faxa_swdn" + +taxmode02: limit +mapalgo02: bilinear +tInterpAlgo02: nearest +readMode02: single +dtlimit02: 1.5 +stream_offset02: 0 +yearFirst02: 1999 +yearLast02: 2000 +yearAlign02: 1999 +stream_vectors02: null +stream_mesh_file02: INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc +stream_lev_dimname02: null +stream_data_files02: "INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.1999-12.nc" "INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.2000-01.nc" +stream_data_variables02: "PRECTmms Faxa_precn" + +taxmode03: limit +mapalgo03: bilinear +tInterpAlgo03: linear +readMode03: single +dtlimit03: 1.5 +stream_offset03: 0 +yearFirst03: 1999 +yearLast03: 2000 +yearAlign03: 1999 +stream_vectors03: null +stream_mesh_file03: INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc +stream_lev_dimname03: null +stream_data_files03: "INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.1999-12.nc" "INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.2000-01.nc" +stream_data_variables03: "TBOT Sa_tbot" "WIND Sa_wind" "QBOT Sa_shum" "PSRF Sa_pbot" "PSRF Sa_pslv" "FLDS Faxa_lwdn" + +taxmode04: cycle +mapalgo04: bilinear +tInterpAlgo04: lower +readMode04: single +dtlimit04: 1.5 +stream_offset04: 0 +yearFirst04: 1 +yearLast04: 1 +yearAlign04: 1 +stream_vectors04: null +stream_mesh_file04: INPUT/topodata_0.9x1.SCRIP.210520_ESMFmesh.nc +stream_lev_dimname04: null +stream_data_files04: "INPUT/topodata_0.9x1.25_USGS_070110_stream_c151201.nc" +stream_data_variables04: "TOPO Sa_topo" diff --git a/parm/templates/template.datm_in b/parm/templates/template.datm_in new file mode 100644 index 00000000..9b3f2793 --- /dev/null +++ b/parm/templates/template.datm_in @@ -0,0 +1,14 @@ +&datm_nml + datamode = "CLMNCEP" + factorfn_data = "null" + factorfn_mesh = "null" + flds_co2 = .false. + flds_presaero = .false. + flds_wiso = .false. + iradsw = 1 + model_maskfile = "INPUT/fv1.9x2.5_141008_ESMFmesh.nc" + model_meshfile = "INPUT/fv1.9x2.5_141008_ESMFmesh.nc" + nx_global = 144 + ny_global = 96 + restfilm = "null" +/ diff --git a/parm/templates/template.input.nml b/parm/templates/template.input.nml new file mode 100644 index 00000000..7fcb7c2e --- /dev/null +++ b/parm/templates/template.input.nml @@ -0,0 +1,28 @@ +&fms_nml + clock_grain='ROUTINE' + clock_flags='NONE' + domains_stack_size = 5000000 + stack_size =0 +/ + &MOM_input_nml + output_directory = './MOM6_OUTPUT', + input_filename = 'n' + restart_input_dir = 'INPUT/', + restart_output_dir = './RESTART/', + parameter_filename = 'INPUT/MOM_input', + 'INPUT/MOM_override' / + + +&nam_stochy +new_lscale=.true., +OCNSPPT=-999., +OCNSPPT_LSCALE=500e3, +OCNSPPT_TAU=21600, +ISEED_OCNSPPT=201601010012, +EPBL=-999., +EPBL_LSCALE=500e3, +EPBL_TAU=21600, +ISEED_EPBL=201601010023, +/ +&nam_sfcperts +/ diff --git a/parm/templates/template.noahmptable.tbl b/parm/templates/template.noahmptable.tbl new file mode 100644 index 00000000..3ffd5b53 --- /dev/null +++ b/parm/templates/template.noahmptable.tbl @@ -0,0 +1,780 @@ +&noahmp_usgs_veg_categories + veg_dataset_description = "usgs" + nveg = 27 +/ +&noahmp_usgs_parameters + ! nveg = 27 + ! 1: urban and built-up land + ! 2: dryland cropland and pasture + ! 3: irrigated cropland and pasture + ! 4: mixed dryland/irrigated cropland and pasture + ! 5: cropland/grassland mosaic + ! 6: cropland/woodland mosaic + ! 7: grassland + ! 8: shrubland + ! 9: mixed shrubland/grassland + ! 10: savanna + ! 11: deciduous broadleaf forest + ! 12: deciduous needleleaf forest + ! 13: evergreen broadleaf forest + ! 14: evergreen needleleaf forest + ! 15: mixed forest + ! 16: water bodies + ! 17: herbaceous wetland + ! 18: wooded wetland + ! 19: barren or sparsely vegetated + ! 20: herbaceous tundra + ! 21: wooded tundra + ! 22: mixed tundra + ! 23: bare ground tundra + ! 24: snow or ice + ! 25: playa + ! 26: lava + ! 27: white sand + + isurban = 1 + iswater = 16 + isbarren = 19 + isice = 24 + iscrop = 2 + eblforest = 13 + natural = 5 + lcz_1 = 31 + lcz_2 = 32 + lcz_3 = 33 + lcz_4 = 34 + lcz_5 = 35 + lcz_6 = 36 + lcz_7 = 37 + lcz_8 = 38 + lcz_9 = 39 + lcz_10 = 40 + lcz_11 = 41 + + !--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + ! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 + !--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + ch2op = 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + dleaf = 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, + z0mvt = 1.00, 0.15, 0.15, 0.15, 0.14, 0.50, 0.12, 0.06, 0.09, 0.50, 0.80, 0.85, 1.10, 1.09, 0.80, 0.00, 0.12, 0.50, 0.00, 0.10, 0.30, 0.20, 0.03, 0.00, 0.01, 0.00, 0.00, + hvt = 15.0, 2.00, 2.00, 2.00, 1.50, 8.00, 1.00, 1.10, 1.10, 10.0, 16.0, 18.0, 20.0, 20.0, 16.0, 0.00, 0.50, 10.0, 0.00, 0.50, 4.00, 2.00, 0.50, 0.00, 0.10, 0.00, 0.00, + hvb = 1.00, 0.10, 0.10, 0.10, 0.10, 0.15, 0.05, 0.10, 0.10, 0.10, 11.5, 7.00, 8.00, 8.50, 10.0, 0.00, 0.05, 0.10, 0.00, 0.10, 0.10, 0.10, 0.10, 0.00, 0.10, 0.00, 0.00, + z0mhvt= 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.00, 0.05, 0.05, 0.05, 0.05, 0.00, 0.05, 0.00, 0.00, + den = 0.01, 25.0, 25.0, 25.0, 25.0, 25.0, 100., 10.0, 10.0, 0.02, 0.10, 0.28, 0.02, 0.28, 0.10, 0.01, 10.0, 0.10, 0.01, 1.00, 1.00, 1.00, 1.00, 0.00, 0.01, 0.01, 0.01, + rc = 1.00, 0.08, 0.08, 0.08, 0.08, 0.08, 0.03, 0.12, 0.12, 3.00, 1.40, 1.20, 3.60, 1.20, 1.40, 0.01, 0.10, 1.40, 0.01, 0.30, 0.30, 0.30, 0.30, 0.00, 0.01, 0.01, 0.01, +!mfsno = 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, +! c. he 12/17/2020: optimized mfsno values dependent on land type based on evaluation with snotel swe and modis scf, surface albedo + mfsno = 4.00, 3.00, 3.00, 3.00, 4.00, 4.00, 2.00, 2.00, 2.00, 2.00, 1.00, 1.00, 1.00, 1.00, 1.00, 3.00, 3.00, 3.00, 3.00, 3.50, 3.50, 3.50, 3.50, 2.50, 3.50, 3.50, 3.50, +! c. he 12/17/2020: optimized snow cover factor (m) in scf formulation to replace original constant 2.5*z0,z0=0.002m, based on evaluation with snotel swe and modis scf, surface albedo + scffac= 0.042, 0.014, 0.014, 0.014, 0.026, 0.026, 0.020, 0.018, 0.016, 0.020, 0.008, 0.008, 0.008, 0.008, 0.008, 0.030, 0.020, 0.020, 0.016, 0.030, 0.030, 0.030, 0.030, 0.030, 0.030, 0.030, 0.030, + cbiom = 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, + + ! row 1: vis + ! row 2: near ir + rhol_vis=0.00, 0.11, 0.11, 0.11, 0.11, 0.11, 0.11, 0.07, 0.10, 0.10, 0.10, 0.07, 0.10, 0.07, 0.10, 0.00, 0.11, 0.10, 0.00, 0.10, 0.10, 0.10, 0.10, 0.00, 0.10, 0.00, 0.00, + rhol_nir=0.00, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.35, 0.45, 0.45, 0.45, 0.35, 0.45, 0.35, 0.45, 0.00, 0.58, 0.45, 0.00, 0.45, 0.45, 0.45, 0.45, 0.00, 0.45, 0.00, 0.00, + + ! row 1: vis + ! row 2: near ir + rhos_vis=0.00, 0.36, 0.36, 0.36, 0.36, 0.36, 0.36, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.00, 0.36, 0.16, 0.00, 0.16, 0.16, 0.16, 0.16, 0.00, 0.16, 0.00, 0.00, + rhos_nir=0.00, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.00, 0.58, 0.39, 0.00, 0.39, 0.39, 0.39, 0.39, 0.00, 0.39, 0.00, 0.00, + + ! row 1: vis + ! row 2: near ir + taul_vis=0.00, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.00, 0.07, 0.05, 0.00, 0.05, 0.05, 0.05, 0.05, 0.00, 0.05, 0.00, 0.00, + taul_nir=0.00, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.10, 0.10, 0.25, 0.25, 0.10, 0.25, 0.10, 0.25, 0.00, 0.25, 0.25, 0.00, 0.25, 0.25, 0.25, 0.25, 0.00, 0.25, 0.00, 0.00, + + ! row 1: vis + ! row 2: near ir + taus_vis=0.00, 0.220, 0.220, 0.220, 0.220, 0.220, 0.220, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.000, 0.220, 0.001, 0.000, 0.220, 0.001, 0.001, 0.001, 0.000, 0.001, 0.000, 0.000, + taus_nir=0.00, 0.380, 0.380, 0.380, 0.380, 0.380, 0.380, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.000, 0.380, 0.001, 0.000, 0.380, 0.001, 0.001, 0.001, 0.000, 0.001, 0.000, 0.000, + + xl = 0.000, -0.30, -0.30, -0.30, -0.30, -0.30, -0.30, 0.010, 0.250, 0.010, 0.250, 0.010, 0.010, 0.010, 0.250, 0.000, -0.30, 0.250, 0.000, -0.30, 0.250, 0.250, 0.250, 0.000, 0.250, 0.000, 0.000, + ! make cwpvt vegetation dependent according to j. goudriaan, crop micrometeorology: a simulation study (simulation monographs), 1977). c. he, 12/17/2020 + cwpvt = 0.18, 1.67, 1.67, 1.67, 1.67, 0.5, 5.0, 1.0, 2.0, 1.0, 0.67, 0.18, 0.67, 0.18, 0.29, 0.18, 1.67, 0.67, 0.18, 1.67, 0.67, 1.00, 0.18, 0.18, 0.18, 0.18, 0.18, + c3psn = 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, + kc25 = 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, + akc = 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, + ko25 = 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, + ako = 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, + avcmx = 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, + aqe = 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, + + ltovrc= 0.0, 1.2, 1.2, 1.2, 1.2, 1.30, 0.50, 0.65, 0.70, 0.65, 0.55, 0.2, 0.55, 0.5, 0.5, 0.0, 1.4, 1.4, 0.0, 1.2, 1.3, 1.4, 1.0, 0.0, 1.0, 0.0, 0.0, + dilefc= 0.00, 0.50, 0.50, 0.50, 0.35, 0.20, 0.20, 0.20, 0.50, 0.50, 0.60, 1.80, 0.50, 1.20, 0.80, 0.00, 0.40, 0.40, 0.00, 0.40, 0.30, 0.40, 0.30, 0.00, 0.30, 0.00, 0.00, + dilefw= 0.00, 0.20, 0.20, 0.20, 0.20, 0.20, 0.10, 0.20, 0.20, 0.50, 0.20, 0.20, 4.00, 0.20, 0.20, 0.00, 0.20, 0.20, 0.00, 0.20, 0.20, 0.20, 0.20, 0.00, 0.20, 0.00, 0.00, + rmf25 = 0.00, 1.00, 1.40, 1.45, 1.45, 1.45, 1.80, 0.26, 0.26, 0.80, 3.00, 4.00, 0.65, 3.00, 3.00, 0.00, 3.20, 3.20, 0.00, 3.20, 3.00, 3.00, 3.00, 0.00, 3.00, 0.00, 0.00, + sla = 60, 80, 80, 80, 80, 80, 60, 60, 60, 50, 80, 80, 80, 80, 80, 0, 80, 80, 0, 80, 80, 80, 80, 0, 80, 0, 0, + fragr = 0.00, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.10, 0.20, 0.10, 0.10, 0.00, 0.10, 0.10, 0.10, 0.10, 0.10, 0.10, 0.10, 0.00, 0.10, 0.00, 0.00, + tmin = 0, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 268, 273, 265, 268, 0, 268, 268, 0, 268, 268, 268, 268, 0, 268, 0, 0, + vcmx25= 0.00, 80.0, 80.0, 80.0, 60.0, 70.0, 40.0, 40.0, 40.0, 40.0, 60.0, 60.0, 60.0, 50.0, 55.0, 0.00, 50.0, 50.0, 0.00, 50.0, 50.0, 50.0, 50.0, 0.00, 50.0, 0.00, 0.00, + tdlef = 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 268, 278, 278, 268, 0, 268, 268, 0, 268, 268, 268, 268, 0, 268, 0, 0, + bp = 1.e15, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 1.e15, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 1.e15, 2.e3, 1.e15, 1.e15, + mp = 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 6., 9., 6., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., + qe25 = 0., 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.00, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.00, 0.06, 0.00, 0.00, + rms25 = 0.00, 0.10, 0.10, 0.10, 0.10, 0.10, 0.10, 0.10, 0.10, 0.32, 0.10, 0.64, 0.30, 0.90, 0.80, 0.00, 0.10, 0.10, 0.00, 0.10, 0.10, 0.10, 0.00, 0.00, 0.00, 0.00, 0.00, + rmr25 = 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.20, 0.00, 0.00, 0.01, 0.01, 0.05, 0.05, 0.36, 0.03, 0.00, 0.00, 0.00, 0.00, 2.11, 2.11, 2.11, 0.00, 0.00, 0.00, 0.00, 0.00, + arm = 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, + folnmx= 0.00, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 0.00, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 0.00, 1.5, 0.00, 0.00, + wdpool= 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 0.00, 0.00, 1.00, 0.00, 0.00, 1.00, 1.00, 0.00, 0.00, 0.00, 0.00, 0.00, + wrrat = 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 3.00, 3.00, 3.00, 30.0, 30.0, 30.0, 30.0, 30.0, 0.00, 0.00, 30.0, 0.00, 0.00, 3.00, 3.00, 0.00, 0.00, 0.00, 0.00, 0.00, + mrp = 0.00, 0.23, 0.23, 0.23, 0.23, 0.23, 0.17, 0.19, 0.19, 0.40, 0.40, 0.37, 0.23, 0.37, 0.30, 0.00, 0.17, 0.40, 0.00, 0.17, 0.23, 0.20, 0.00, 0.00, 0.20, 0.00, 0.00, + nroot = 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 0, 2, 2, 1, 3, 3, 3, 2, 1, 1, 0, 0, + rgl = 999.0, 100.0, 100.0, 100.0, 100.0, 65.0, 100.0, 100.0, 100.0, 65.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 100.0, 30.0, 999.0, 100.0, 100.0, 100.0, 100.0, 999.0, 100.0, 999.0, 999.0, + rs = 200.0, 40.0, 40.0, 40.0, 40.0, 70.0, 40.0, 300.0, 170.0, 70.0, 100.0, 150.0, 150.0, 125.0, 125.0, 100.0, 40.0, 100.0, 999.0, 150.0, 150.0, 150.0, 200.0, 999.0, 40.0, 999.0, 999.0, + hs = 999.0, 36.25, 36.25, 36.25, 36.25, 44.14, 36.35, 42.00, 39.18, 54.53, 54.53, 47.35, 41.69, 47.35, 51.93, 51.75, 60.00, 51.93, 999.0, 42.00, 42.00, 42.00, 42.00, 999.0, 36.25, 999.0, 999.0, + topt = 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, + rsmax = 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., + rtovrc = 2.e-8,2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, + rswoodc= 3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10,3.e-10, + bf = 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, + wstrc = 100.0,100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, + laimin = 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, + xsamin = 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, + +! monthly values, one row for each month: + sai_jan = 0.0, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.2, 0.2, 0.3, 0.4, 0.3, 0.5, 0.4, 0.4, 0.0, 0.2, 0.3, 0.0, 0.1, 0.2, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_feb = 0.0, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.2, 0.2, 0.3, 0.4, 0.3, 0.5, 0.4, 0.4, 0.0, 0.2, 0.3, 0.0, 0.1, 0.2, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_mar = 0.0, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.2, 0.2, 0.3, 0.4, 0.3, 0.5, 0.4, 0.4, 0.0, 0.2, 0.3, 0.0, 0.1, 0.2, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_apr = 0.0, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.2, 0.2, 0.3, 0.4, 0.4, 0.5, 0.3, 0.4, 0.0, 0.2, 0.3, 0.0, 0.1, 0.2, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_may = 0.0, 0.2, 0.2, 0.2, 0.3, 0.3, 0.3, 0.2, 0.2, 0.3, 0.4, 0.4, 0.5, 0.4, 0.4, 0.0, 0.3, 0.3, 0.0, 0.1, 0.2, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_jun = 0.0, 0.3, 0.3, 0.3, 0.4, 0.4, 0.4, 0.2, 0.3, 0.4, 0.4, 0.7, 0.5, 0.5, 0.4, 0.0, 0.4, 0.4, 0.0, 0.2, 0.2, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_jul = 0.0, 0.4, 0.4, 0.4, 0.6, 0.6, 0.8, 0.4, 0.6, 0.8, 0.9, 1.3, 0.5, 0.5, 0.7, 0.0, 0.6, 0.6, 0.0, 0.4, 0.4, 0.4, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_aug = 0.0, 0.5, 0.5, 0.5, 0.9, 0.9, 1.3, 0.6, 0.9, 1.2, 1.2, 1.2, 0.5, 0.6, 0.8, 0.0, 0.9, 0.9, 0.0, 0.6, 0.6, 0.6, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_sep = 0.0, 0.4, 0.4, 0.4, 0.7, 1.0, 1.1, 0.8, 1.0, 1.3, 1.6, 1.0, 0.5, 0.6, 1.0, 0.0, 0.7, 1.0, 0.0, 0.7, 0.8, 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_oct = 0.0, 0.3, 0.3, 0.3, 0.3, 0.8, 0.4, 0.7, 0.6, 0.7, 1.4, 0.8, 0.5, 0.7, 1.0, 0.0, 0.3, 0.8, 0.0, 0.5, 0.7, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_nov = 0.0, 0.3, 0.3, 0.3, 0.3, 0.4, 0.4, 0.3, 0.3, 0.4, 0.6, 0.6, 0.5, 0.6, 0.5, 0.0, 0.3, 0.4, 0.0, 0.3, 0.3, 0.3, 0.0, 0.0, 0.0, 0.0, 0.0, + sai_dec = 0.0, 0.3, 0.3, 0.3, 0.3, 0.3, 0.4, 0.2, 0.3, 0.4, 0.4, 0.5, 0.5, 0.5, 0.4, 0.0, 0.3, 0.4, 0.0, 0.2, 0.2, 0.2, 0.0, 0.0, 0.0, 0.0, 0.0, + + lai_jan = 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.4, 0.0, 0.2, 0.3, 0.0, 0.0, 4.5, 4.0, 2.0, 0.0, 0.2, 0.2, 0.0, 0.2, 1.0, 0.6, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_feb = 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, 0.5, 0.0, 0.3, 0.3, 0.0, 0.0, 4.5, 4.0, 2.0, 0.0, 0.3, 0.3, 0.0, 0.3, 1.0, 0.6, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_mar = 0.0, 0.0, 0.0, 0.0, 0.3, 0.2, 0.6, 0.2, 0.4, 0.5, 0.3, 0.0, 4.5, 4.0, 2.2, 0.0, 0.3, 0.3, 0.0, 0.3, 1.1, 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_apr = 0.0, 0.0, 0.0, 0.0, 0.4, 0.6, 0.7, 0.6, 0.7, 0.8, 1.2, 0.6, 4.5, 4.0, 2.6, 0.0, 0.4, 0.6, 0.0, 0.4, 1.3, 0.8, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_may = 0.0, 1.0, 1.0, 1.0, 1.1, 2.0, 1.2, 1.5, 1.4, 1.8, 3.0, 1.2, 4.5, 4.0, 3.5, 0.0, 1.1, 2.0, 0.0, 0.6, 1.7, 1.2, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_jun = 0.0, 2.0, 2.0, 2.0, 2.5, 3.3, 3.0, 2.3, 2.6, 3.6, 4.7, 2.0, 4.5, 4.0, 4.3, 0.0, 2.5, 3.3, 0.0, 1.5, 2.1, 1.8, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_jul = 0.0, 3.0, 3.0, 3.0, 3.2, 3.7, 3.5, 2.3, 2.9, 3.8, 4.5, 2.6, 4.5, 4.0, 4.3, 0.0, 3.2, 3.7, 0.0, 1.7, 2.1, 1.8, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_aug = 0.0, 3.0, 3.0, 3.0, 2.2, 3.2, 1.5, 1.7, 1.6, 2.1, 3.4, 1.7, 4.5, 4.0, 3.7, 0.0, 2.2, 3.2, 0.0, 0.8, 1.8, 1.3, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_sep = 0.0, 1.5, 1.5, 1.5, 1.1, 1.3, 0.7, 0.6, 0.7, 0.9, 1.2, 1.0, 4.5, 4.0, 2.6, 0.0, 1.1, 1.3, 0.0, 0.4, 1.3, 0.8, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_oct = 0.0, 0.0, 0.0, 0.0, 0.3, 0.2, 0.6, 0.2, 0.4, 0.5, 0.3, 0.5, 4.5, 4.0, 2.2, 0.0, 0.3, 0.3, 0.0, 0.3, 1.1, 0.7, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_nov = 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, 0.5, 0.0, 0.3, 0.3, 0.0, 0.2, 4.5, 4.0, 2.0, 0.0, 0.3, 0.3, 0.0, 0.2, 1.0, 0.6, 0.0, 0.0, 0.0, 0.0, 0.0, + lai_dec = 0.0, 0.0, 0.0, 0.0, 0.2, 0.0, 0.4, 0.0, 0.2, 0.3, 0.0, 0.0, 4.5, 4.0, 2.0, 0.0, 0.2, 0.2, 0.0, 0.2, 1.0, 0.6, 0.0, 0.0, 0.0, 0.0, 0.0, + +! five types, one row for each type (bvoc currently not active). + eps1 = 41.87, 0.00, 0.00, 2.52, 0.04, 17.11, 0.02, 21.62, 0.11, 22.80, 46.86, 0.00, 0.00, 0.46, 30.98, 2.31, 1.63, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + eps2 = 0.98, 0.00, 0.00, 0.16, 0.09, 0.28, 0.05, 0.92, 0.22, 0.59, 0.38, 0.00, 0.00, 3.34, 0.96, 1.47, 1.07, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + eps3 = 1.82, 0.00, 0.00, 0.23, 0.05, 0.81, 0.03, 1.73, 1.26, 1.37, 1.84, 0.00, 0.00, 1.85, 1.84, 1.70, 1.21, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + eps4 = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + eps5 = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, +/ + +&noahmp_modis_veg_categories + veg_dataset_description = "modified igbp modis noah" + nveg = 20 +/ + +&noahmp_modis_parameters +! 1 'evergreen needleleaf forest' -> usgs 14 +! 2, 'evergreen broadleaf forest' -> usgs 13 +! 3, 'deciduous needleleaf forest' -> usgs 12 +! 4, 'deciduous broadleaf forest' -> usgs 11 +! 5, 'mixed forests' -> usgs 15 +! 6, 'closed shrublands' -> usgs 8 "shrubland" +! 7, 'open shrublands' -> usgs 9 "shrubland/grassland" +! 8, 'woody savannas' -> usgs 8 "shrubland" +! 9, 'savannas' -> usgs 10 +! 10, 'grasslands' -> usgs 7 +! 11 'permanent wetlands' -> avg of usgs 17 and 18 (herb. wooded wetland) +! 12, 'croplands' -> usgs 2 "dryland cropland" +! 13, 'urban and built-up' -> usgs 1 +! 14 'cropland/natural vegetation mosaic' -> usgs 5 "cropland/grassland" +! 15, 'snow and ice' -> usgs 24 +! 16, 'barren or sparsely vegetated' -> usgs 19 +! 17, 'water' -> usgs 16 +! 18, 'wooded tundra' -> usgs 21 +! 19, 'mixed tundra' -> usgs 22 +! 20, 'barren tundra' -> usgs 23 + + isurban = 13 + iswater = 17 + isbarren = 16 + isice = 15 + iscrop = 12 + eblforest = 2 + natural = 14 + lcz_1 = 31 + lcz_2 = 32 + lcz_3 = 33 + lcz_4 = 34 + lcz_5 = 35 + lcz_6 = 36 + lcz_7 = 37 + lcz_8 = 38 + lcz_9 = 39 + lcz_10 = 40 + lcz_11 = 41 + !--------------------------------------------------------------------------------------------------------------------------------------------------------------------- + ! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 + !--------------------------------------------------------------------------------------------------------------------------------------------------------------------- + ch2op = 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + dleaf = 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, + z0mvt = 1.09, 1.10, 0.85, 0.80, 0.80, 0.20, 0.06, 0.60, 0.50, 0.12, 0.30, 0.15, 1.00, 0.14, 0.00, 0.00, 0.00, 0.30, 0.20, 0.03, + hvt = 20.0, 20.0, 18.0, 16.0, 16.0, 1.10, 1.10, 13.0, 10.0, 1.00, 5.00, 2.00, 15.0, 1.50, 0.00, 0.00, 0.00, 4.00, 2.00, 0.50, + hvb = 8.50, 8.00, 7.00, 11.5, 10.0, 0.10, 0.10, 0.10, 0.10, 0.05, 0.10, 0.10, 1.00, 0.10, 0.00, 0.00, 0.00, 0.30, 0.20, 0.10, + z0mhvt= 0.0545, 0.055, 0.047, 0.050, 0.050, 0.182, 0.0545, 0.046, 0.050, 0.120, 0.060, 0.075, 0.067, 0.093, 0.000, 0.000, 0.000, 0.075, 0.100, 0.060, + den = 0.28, 0.02, 0.28, 0.10, 0.10, 10.0, 10.0, 10.0, 0.02, 100., 5.05, 25.0, 0.01, 25.0, 0.00, 0.01, 0.01, 1.00, 1.00, 1.00, + rc = 1.20, 3.60, 1.20, 1.40, 1.40, 0.12, 0.12, 0.12, 3.00, 0.03, 0.75, 0.08, 1.00, 0.08, 0.00, 0.01, 0.01, 0.30, 0.30, 0.30, +!mfsno = 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, 2.50, +! c. he 12/17/2020: optimized mfsno values dependent on land type based on evaluation with snotel swe and modis scf, surface albedo + mfsno = 1.00, 1.00, 1.00, 1.00, 1.00, 2.00, 2.00, 2.00, 2.00, 2.00, 3.00, 3.00, 4.00, 4.00, 2.50, 3.00, 3.00, 3.50, 3.50, 3.50, +! c. he 12/17/2020: optimized snow cover factor (m) in scf formulation to replace original constant 2.5*z0,z0=0.002m, based on evaluation with snotel swe and modis scf, surface albedo +! scffac = 0.008, 0.008, 0.008, 0.008, 0.008, 0.016, 0.016, 0.020, 0.020, 0.020, 0.020, 0.014, 0.042, 0.026, 0.030, 0.016, 0.030, 0.030, 0.030, 0.030, + scffac = 0.005, 0.005, 0.005, 0.005, 0.005, 0.008, 0.008, 0.010, 0.010, 0.010, 0.010, 0.007, 0.021, 0.013, 0.015, 0.008, 0.015, 0.015, 0.015, 0.015, + cbiom = 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, + + ! row 1: vis + ! row 2: near ir + rhol_vis=0.07, 0.10, 0.07, 0.10, 0.10, 0.07, 0.07, 0.07, 0.10, 0.11, 0.105, 0.11, 0.00, 0.11, 0.00, 0.00, 0.00, 0.10, 0.10, 0.10, + rhol_nir=0.35, 0.45, 0.35, 0.45, 0.45, 0.35, 0.35, 0.35, 0.45, 0.58, 0.515, 0.58, 0.00, 0.58, 0.00, 0.00, 0.00, 0.45, 0.45, 0.45, + + ! row 1: vis + ! row 2: near ir + rhos_vis=0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.36, 0.26, 0.36, 0.00, 0.36, 0.00, 0.00, 0.00, 0.16, 0.16, 0.16, + rhos_nir=0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.58, 0.485, 0.58, 0.00, 0.58, 0.00, 0.00, 0.00, 0.39, 0.39, 0.39, + + ! row 1: vis + ! row 2: near ir + taul_vis=0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.07, 0.06, 0.07, 0.00, 0.07, 0.00, 0.00, 0.00, 0.05, 0.05, 0.05, + taul_nir=0.10, 0.25, 0.10, 0.25, 0.25, 0.10, 0.10, 0.10, 0.25, 0.25, 0.25, 0.25, 0.00, 0.25, 0.00, 0.00, 0.00, 0.25, 0.25, 0.25, + + ! row 1: vis + ! row 2: near ir + taus_vis=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.220, 0.1105, 0.220, 0.000, 0.220, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001, + taus_nir=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.380, 0.1905, 0.380, 0.000, 0.380, 0.000, 0.000, 0.000, 0.001, 0.001, 0.001, + + xl = 0.010, 0.010, 0.010, 0.250, 0.250, 0.010, 0.010, 0.010, 0.010, -0.30, -0.025, -0.30, 0.000, -0.30, 0.000, 0.000, 0.000, 0.250, 0.250, 0.250, +! make cwpvt vegetation dependent according to j. goudriaan, crop micrometeorology: a simulation study (simulation monographs), 1977). c. he, 12/17/2020 +! cwpvt = 0.18, 0.67, 0.18, 0.67, 0.29, 1.0, 2.0, 1.3, 1.0, 5.0, 1.17, 1.67, 1.67, 1.67, 0.18, 0.18, 0.18, 0.67, 1.0, 0.18, + cwpvt = 0.09, 0.335, 0.09, 0.335, 0.145, 0.5, 1.0, 0.65, 0.5, 2.5, 0.585, 0.835, 0.835, 0.835, 0.09, 0.09, 0.09, 0.335, 0.5, 0.09, + c3psn = 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, + kc25 = 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, 30.0, + akc = 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 2.1, + ko25 = 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, + ako = 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, 1.2, + avcmx = 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, 2.4, + aqe = 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, + + ltovrc= 0.5, 0.55, 0.2, 0.55, 0.5, 0.65, 0.65, 0.65, 0.65, 0.50, 1.4, 1.6, 0.0, 1.2, 0.0, 0.0, 0.0, 1.3, 1.4, 1.0, + dilefc= 1.20, 0.50, 1.80, 0.60, 0.80, 0.20, 0.20, 0.20, 0.50, 0.20, 0.4, 0.50, 0.00, 0.35, 0.00, 0.00, 0.00, 0.30, 0.40, 0.30, + dilefw= 0.20, 4.00, 0.20, 0.20, 0.20, 0.20, 0.20, 0.20, 0.50, 0.10, 0.2, 0.20, 0.00, 0.20, 0.00, 0.00, 0.00, 0.20, 0.20, 0.20, + rmf25 = 3.00, 0.65, 4.00, 3.00, 3.00, 0.26, 0.26, 0.26, 0.80, 1.80, 3.2, 1.00, 0.00, 1.45, 0.00, 0.00, 0.00, 3.00, 3.00, 3.00, + sla = 80, 80, 80, 80, 80, 60, 60, 60, 50, 60, 80, 80, 60, 80, 0, 0, 0, 80, 80, 80, + fragr = 0.10, 0.20, 0.10, 0.20, 0.10, 0.20, 0.20, 0.20, 0.20, 0.20, 0.1, 0.20, 0.00, 0.20, 0.00, 0.10, 0.00, 0.10, 0.10, 0.10, + tmin = 265, 273, 268, 273, 268, 273, 273, 273, 273, 273, 268, 273, 0, 273, 0, 0, 0, 268, 268, 268, + vcmx25= 50.0, 60.0, 60.0, 60.0, 55.0, 40.0, 40.0, 40.0, 40.0, 40.0, 50.0, 80.0, 0.00, 60.0, 0.00, 0.00, 0.00, 50.0, 50.0, 50.0, + tdlef = 278, 278, 268, 278, 268, 278, 278, 278, 278, 278, 268, 278, 278, 278, 0, 0, 0, 268, 268, 268, + bp = 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 2.e3, 1.e15, 2.e3, 1.e15, 2.e3, 1.e15, 2.e3, 2.e3, 2.e3, + mp = 6., 9., 6., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., 9., + qe25 = 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.00, 0.06, 0.00, 0.06, 0.00, 0.06, 0.06, 0.06, + rms25 = 0.90, 0.30, 0.64, 0.10, 0.80, 0.10, 0.10, 0.10, 0.32, 0.10, 0.10, 0.10, 0.00, 0.10, 0.00, 0.00, 0.00, 0.10, 0.10, 0.00, + rmr25 = 0.36, 0.05, 0.05, 0.01, 0.03, 0.00, 0.00, 0.00, 0.01, 1.20, 0.0, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2.11, 2.11, 0.00, + arm = 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, + folnmx= 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 0.00, 1.5, 0.00, 1.5, 0.00, 1.5, 1.5, 1.5, + wdpool= 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 0.00, 0.5, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 1.00, 1.00, 0.00, + wrrat = 30.0, 30.0, 30.0, 30.0, 30.0, 3.00, 3.00, 3.00, 3.00, 0.00, 15.0, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 3.00, 3.00, 0.00, + mrp = 0.37, 0.23, 0.37, 0.40, 0.30, 0.19, 0.19, 0.19, 0.40, 0.17, 0.285, 0.23, 0.00, 0.23, 0.00, 0.00, 0.00, 0.23, 0.20, 0.00, + nroot = 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 3, 1, 3, 1, 1, 0, 3, 3, 2, + rgl = 30.0, 30.0, 30.0, 30.0, 30.0, 100.0, 100.0, 100.0, 65.0, 100.0, 65.0, 100.0, 999.0, 100.0, 999.0, 999.0, 30.0, 100.0, 100.0, 100.0, + rs = 125.0, 150.0, 150.0, 100.0, 125.0, 300.0, 170.0, 300.0, 70.0, 40.0, 70.0, 40.0, 200.0, 40.0, 999.0, 999.0, 100.0, 150.0, 150.0, 200.0, + hs = 47.35, 41.69, 47.35, 54.53, 51.93, 42.00, 39.18, 42.00, 54.53, 36.35, 55.97, 36.25, 999.0, 36.25, 999.0, 999.0, 51.75, 42.00, 42.00, 42.00, + topt = 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, 298.0, + rsmax = 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., + rtovrc = 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, 2.e-8, + rswoodc= 3.e-10,3.e-10,3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, 3.e-10, + bf = 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, + wstrc = 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, + laimin = 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, + xsamin = 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, + +! monthly values, one row for each month: + sai_jan = 0.4, 0.5, 0.3, 0.4, 0.4, 0.3, 0.2, 0.4, 0.3, 0.3, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.1, 0.0, + sai_feb = 0.4, 0.5, 0.3, 0.4, 0.4, 0.3, 0.2, 0.4, 0.3, 0.3, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.1, 0.0, + sai_mar = 0.4, 0.5, 0.3, 0.4, 0.4, 0.3, 0.2, 0.4, 0.3, 0.3, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.1, 0.0, + sai_apr = 0.3, 0.5, 0.4, 0.4, 0.4, 0.3, 0.2, 0.4, 0.3, 0.3, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.1, 0.0, + sai_may = 0.4, 0.5, 0.4, 0.4, 0.4, 0.3, 0.2, 0.4, 0.3, 0.3, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.1, 0.0, + sai_jun = 0.5, 0.5, 0.7, 0.4, 0.4, 0.3, 0.2, 0.4, 0.4, 0.4, 0.4, 0.3, 0.0, 0.4, 0.0, 0.0, 0.0, 0.2, 0.2, 0.0, + sai_jul = 0.5, 0.5, 1.3, 0.9, 0.7, 0.6, 0.4, 0.7, 0.8, 0.8, 0.6, 0.4, 0.0, 0.6, 0.0, 0.0, 0.0, 0.4, 0.4, 0.0, + sai_aug = 0.6, 0.5, 1.2, 1.2, 0.8, 0.9, 0.6, 1.2, 1.2, 1.3, 0.9, 0.5, 0.0, 0.9, 0.0, 0.0, 0.0, 0.6, 0.6, 0.0, + sai_sep = 0.6, 0.5, 1.0, 1.6, 1.0, 1.2, 0.8, 1.4, 1.3, 1.1, 0.9, 0.4, 0.0, 0.7, 0.0, 0.0, 0.0, 0.8, 0.7, 0.0, + sai_oct = 0.7, 0.5, 0.8, 1.4, 1.0, 0.9, 0.7, 1.1, 0.7, 0.4, 0.6, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.7, 0.5, 0.0, + sai_nov = 0.6, 0.5, 0.6, 0.6, 0.5, 0.4, 0.3, 0.5, 0.4, 0.4, 0.4, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.3, 0.3, 0.0, + sai_dec = 0.5, 0.5, 0.5, 0.4, 0.4, 0.3, 0.2, 0.4, 0.4, 0.4, 0.3, 0.3, 0.0, 0.3, 0.0, 0.0, 0.0, 0.2, 0.2, 0.0, + + lai_jan = 4.0, 4.5, 0.0, 0.0, 2.0, 0.0, 0.0, 0.2, 0.3, 0.4, 0.2, 0.0, 0.0, 0.2, 0.0, 0.0, 0.0, 1.0, 0.6, 0.0, + lai_feb = 4.0, 4.5, 0.0, 0.0, 2.0, 0.0, 0.0, 0.2, 0.3, 0.5, 0.3, 0.0, 0.0, 0.3, 0.0, 0.0, 0.0, 1.0, 0.6, 0.0, + lai_mar = 4.0, 4.5, 0.0, 0.3, 2.2, 0.3, 0.2, 0.4, 0.5, 0.6, 0.3, 0.0, 0.0, 0.3, 0.0, 0.0, 0.0, 1.1, 0.7, 0.0, + lai_apr = 4.0, 4.5, 0.6, 1.2, 2.6, 0.9, 0.6, 1.0, 0.8, 0.7, 0.5, 0.0, 0.0, 0.4, 0.0, 0.0, 0.0, 1.3, 0.8, 0.0, + lai_may = 4.0, 4.5, 1.2, 3.0, 3.5, 2.2, 1.5, 2.4, 1.8, 1.2, 1.5, 1.0, 0.0, 1.1, 0.0, 0.0, 0.0, 1.7, 1.2, 0.0, + lai_jun = 4.0, 4.5, 2.0, 4.7, 4.3, 3.5, 2.3, 4.1, 3.6, 3.0, 2.9, 2.0, 0.0, 2.5, 0.0, 0.0, 0.0, 2.1, 1.8, 0.0, + lai_jul = 4.0, 4.5, 2.6, 4.5, 4.3, 3.5, 2.3, 4.1, 3.8, 3.5, 3.5, 3.0, 0.0, 3.2, 0.0, 0.0, 0.0, 2.1, 1.8, 0.0, + lai_aug = 4.0, 4.5, 1.7, 3.4, 3.7, 2.5, 1.7, 2.7, 2.1, 1.5, 2.7, 3.0, 0.0, 2.2, 0.0, 0.0, 0.0, 1.8, 1.3, 0.0, + lai_sep = 4.0, 4.5, 1.0, 1.2, 2.6, 0.9, 0.6, 1.0, 0.9, 0.7, 1.2, 1.5, 0.0, 1.1, 0.0, 0.0, 0.0, 1.3, 0.8, 0.0, + lai_oct = 4.0, 4.5, 0.5, 0.3, 2.2, 0.3, 0.2, 0.4, 0.5, 0.6, 0.3, 0.0, 0.0, 0.3, 0.0, 0.0, 0.0, 1.1, 0.7, 0.0, + lai_nov = 4.0, 4.5, 0.2, 0.0, 2.0, 0.0, 0.0, 0.2, 0.3, 0.5, 0.3, 0.0, 0.0, 0.3, 0.0, 0.0, 0.0, 1.0, 0.6, 0.0, + lai_dec = 4.0, 4.5, 0.0, 0.0, 2.0, 0.0, 0.0, 0.2, 0.3, 0.4, 0.2, 0.0, 0.0, 0.2, 0.0, 0.0, 0.0, 1.0, 0.6, 0.0, + +! five types, one row for each type (bvoc currently not active). + eps1 = 0.46, 0.00, 0.00, 46.86, 30.98, 21.62, 0.11, 21.62, 22.80, 0.02, 0.815, 0.00, 41.87, 0.04, 0.0, 0.0, 2.31, 0.0, 0.0, 0.0, + eps2 = 3.34, 0.00, 0.00, 0.38, 0.96, 0.92, 0.22, 0.92, 0.59, 0.05, 0.535, 0.00, 0.98, 0.09, 0.0, 0.0, 1.47, 0.0, 0.0, 0.0, + eps3 = 1.85, 0.00, 0.00, 1.84, 1.84, 1.73, 1.26, 1.73, 1.37, 0.03, 0.605, 0.00, 1.82, 0.05, 0.0, 0.0, 1.70, 0.0, 0.0, 0.0, + eps4 = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + eps5 = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + +/ + +&noahmp_rad_parameters + !-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + ! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 soil color index for soil albedo + !-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + albsat_vis = 0.25, 0.23, 0.21, 0.20, 0.19, 0.18, 0.17, 0.16, 0.15, 0.14, 0.13, 0.12, 0.11, 0.10, 0.09, 0.08, 0.07, 0.06, 0.05, 0.04 ! saturated soil albedos + albsat_nir = 0.50, 0.46, 0.42, 0.40, 0.38, 0.36, 0.34, 0.32, 0.30, 0.28, 0.26, 0.24, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10, 0.08 ! saturated soil albedos + albdry_vis = 0.36, 0.34, 0.32, 0.31, 0.30, 0.29, 0.28, 0.27, 0.26, 0.25, 0.24, 0.23, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10, 0.08 ! dry soil albedos + albdry_nir = 0.61, 0.57, 0.53, 0.51, 0.49, 0.48, 0.45, 0.43, 0.41, 0.39, 0.37, 0.35, 0.33, 0.31, 0.29, 0.27, 0.25, 0.23, 0.21, 0.16 ! dry soil albedos + albice = 0.80, 0.55 ! albedo land ice: 1=vis, 2=nir + alblak = 0.60, 0.40 ! albedo frozen lakes: 1=vis, 2=nir + omegas = 0.8 , 0.4 ! two-stream parameter omega for snow + betads = 0.5 ! two-stream parameter betad for snow + betais = 0.5 ! two-stream parameter betai for snow + eg = 0.97, 0.98 ! emissivity soil surface 1-soil;2-lake + eice = 0.98 ! emissivity ice surface +/ + +&noahmp_global_parameters + +! atmospheric constituants + + co2 = 395.e-06 !co2 partial pressure + o2 = 0.209 !o2 partial pressure + +! runoff parameters used for simtop and simgm: + + timean = 10.5 !gridcell mean topgraphic index (global mean) + fsatmx = 0.38 !maximum surface saturated fraction (global mean) + +! adjustable parameters for snow processes + + z0sno = 0.002 !snow surface roughness length (m) (0.002) + ssi = 0.03 !liquid water holding capacity for snowpack (m3/m3) (0.03) + snow_ret_fac = 5.e-5 !snowpack water release timescale factor (1/s) + snow_emis = 0.95 !snow emissivity (bring from hard-coded value of 1.0 to here) + swemx = 1.00 !new snow mass to fully cover old snow (mm) + !equivalent to 10mm depth (density = 100 kg/m3) + tau0 = 1.e6 !tau0 from yang97 eqn. 10a + grain_growth = 5000. !growth from vapor diffusion yang97 eqn. 10b + extra_growth = 10. !extra growth near freezing yang97 eqn. 10c + dirt_soot = 0.3 !dirt and soot term yang97 eqn. 10d + bats_cosz = 2.0 !zenith angle snow albedo adjustment; b in yang97 eqn. 15 + bats_vis_new = 0.95 !new snow visible albedo + bats_nir_new = 0.65 !new snow nir albedo + bats_vis_age = 0.2 !age factor for diffuse visible snow albedo yang97 eqn. 17 + bats_nir_age = 0.5 !age factor for diffuse nir snow albedo yang97 eqn. 18 + bats_vis_dir = 0.4 !cosz factor for direct visible snow albedo yang97 eqn. 15 + bats_nir_dir = 0.4 !cosz factor for direct nir snow albedo yang97 eqn. 16 + rsurf_snow = 50.0 !surface resistence for snow [s/m] + rsurf_exp = 5.0 !exponent in the shape parameter for soil resistance option 1 + c2_snowcompact = 21.e-3 !overburden snow compaction parameter (m3/kg) cenlin + c3_snowcompact = 2.5e-6 !snow desctructive metamorphism compaction parameter1 [1/s] cenlin + c4_snowcompact = 0.04 !snow desctructive metamorphism compaction parameter2 [1/k] cenlin + c5_snowcompact = 2.0 !snow desctructive metamorphism compaction parameter3 cenlin + dm_snowcompact = 100.0 !upper limit on destructive metamorphism compaction [kg/m3] cenlin + eta0_snowcompact = 0.8e+6 !snow viscosity coefficient [kg-s/m2], anderson1979: 0.52e6~1.38e6 cenlin + snliqmaxfrac = 0.4 !maximum liquid water fraction in snow cenlin + swemaxgla = 5000.0 ! maximum swe allowed at glaciers (mm) cenlin + wslmax = 5000.0 ! maximum lake water storage (mm) cenlin + rous = 0.20 ! specific yield [-] for niu et al. 2007 groundwater scheme (optrunoffsubsurface=1) + cmic = 0.20 ! microprore content (0.0-1.0), 0.0: close to free drainage + snowden_max = 120.0 ! maximum fresh snowfall density (kg/m3) + class_alb_ref = 0.55 ! reference snow albedo in class scheme + class_sno_age = 3600.0 ! snow aging e-folding time (s) in class albedo scheme + class_alb_new = 0.84 ! fresh snow albedo in class scheme + psiwlt = -150.0 !metric potential for wilting point (m) + z0soil = 0.002 ! bare-soil roughness length (m) (i.e., under the canopy) + z0lake = 0.01 ! lake surface roughness length (m) +/ + +&noahmp_irrigation_parameters +irr_frac = 0.10 ! irrigation fraction +irr_har = 20 ! number of days before harvest date to stop irrigation +irr_lai = 0.50 ! minimum lai to trigger irrigation +irr_mad = 0.60 ! management allowable deficit (0-1) +filoss = 0.10 ! fraction of flood irrigation loss (0-1) +sprir_rate = 6.40 ! mm/h, sprinkler irrigation rate +micir_rate = 1.38 ! mm/h, micro irrigation rate +firtfac = 1.00 ! flood application rate factor +ir_rain = 1.00 ! maximum precipitation [mm/hr] to stop irrigation trigger +/ + +&noahmp_crop_parameters + + ! ncrop = 5 + ! 1: corn + ! 2: soybean + ! 3: sorghum + ! 4: rice + ! 5: winter wheat + +default_crop = 0 ! the default crop type(1-5); if zero, use generic dynamic vegetation + +!---------------------------------------------------------- +! 1 2 3 4 5 +!---------------------------------------------------------- + +pltday = 111, 131, 111, 111, 111, ! planting date +hsday = 300, 280, 300, 300, 300, ! harvest date +plantpop = 78.0, 78.0, 78.0, 78.0, 78.0, ! plant density [per ha] - used? +gddtbase = 10.0, 10.0, 10.0, 10.0, 10.0, ! base temperature for gdd accumulation [c] +gddtcut = 30.0, 30.0, 30.0, 30.0, 30.0, ! upper temperature for gdd accumulation [c] +gdds1 = 50.0, 60.0, 50.0, 50.0, 50.0, ! gdd from seeding to emergence +gdds2 = 625.0, 675.0, 718.0, 718.0, 718.0, ! gdd from seeding to initial vegetative +gdds3 = 933.0, 1183.0, 933.0, 933.0, 933.0, ! gdd from seeding to post vegetative +gdds4 = 1103.0, 1253.0, 1103.0, 1103.0, 1103.0, ! gdd from seeding to intial reproductive +gdds5 = 1555.0, 1605.0, 1555.0, 1555.0, 1555.0, ! gdd from seeding to pysical maturity +c3psni = 0.0, 1.0, 1.0, 1.0, 1.0, ! transfer crop-specific photosynthetic parameters +kc25i = 30.0, 30.0, 30.0, 30.0, 30.0, ! zhe zhang +akci = 2.1, 2.1, 2.1, 2.1, 2.1, ! 2020-02-05 +ko25i = 3.e4, 3.e4, 3.e4, 3.e4, 3.e4, ! +akoi = 1.2, 1.2, 1.2, 1.2, 1.2, ! +avcmxi = 2.4, 2.4, 2.4, 2.4, 2.4, ! +vcmx25i = 60.0, 80.0, 60.0, 60.0, 55.0, ! +bpi = 4.e4, 1.e4, 2.e3, 2.e3, 2.e3, ! +mpi = 4., 9., 6., 9., 9., ! +folnmxi = 1.5, 1.5, 1.5, 1.5, 1.5, ! foliage nitrogen concentration when f(n)=1 (%) +qe25i = 0.05, 0.06, 0.06, 0.06, 0.06, ! +aref = 7.0, 7.0, 7.0, 7.0, 7.0, ! reference maximum co2 assimilation rate +psnrf = 0.85, 0.85, 0.85, 0.85, 0.85, ! co2 assimilation reduction factor(0-1) (caused by non-modeling part,e.g.pest,weeds) +i2par = 0.5, 0.5, 0.5, 0.5, 0.5, ! fraction of incoming solar radiation to photosynthetically active radiation +tassim0 = 8.0, 8.0, 8.0, 8.0, 8.0, ! minimum temperature for co2 assimilation [c] +tassim1 = 18.0, 18.0, 18.0, 18.0, 18.0, ! co2 assimilation linearly increasing until temperature reaches t1 [c] +tassim2 = 30.0, 30.0, 30.0, 30.0, 30.0, ! co2 assmilation rate remain at aref until temperature reaches t2 [c] +k = 0.55, 0.55, 0.55, 0.55, 0.55, ! light extinction coefficient +epsi = 12.5, 12.5, 12.5, 12.5, 12.5, ! initial light use efficiency + +q10mr = 2.0, 2.0, 2.0, 2.0, 2.0, ! q10 for maintainance respiration +lefreez = 268, 268, 268, 268, 268, ! characteristic t for leaf freezing [k] + +dile_fc_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! coeficient for temperature leaf stress death [1/s] +dile_fc_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +dile_fc_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fc_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fc_s5 = 0.5, 0.5, 0.5, 0.5, 0.5, +dile_fc_s6 = 0.5, 0.5, 0.5, 0.5, 0.5, +dile_fc_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fc_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +dile_fw_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! coeficient for water leaf stress death [1/s] +dile_fw_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +dile_fw_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fw_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fw_s5 = 0.2, 0.2, 0.2, 0.2, 0.2, +dile_fw_s6 = 0.2, 0.2, 0.2, 0.2, 0.2, +dile_fw_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +dile_fw_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +fra_gr = 0.2, 0.2, 0.2, 0.2, 0.2, ! fraction of growth respiration + +lf_ovrc_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of leaf turnover [1/s] +lf_ovrc_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +lf_ovrc_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +lf_ovrc_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +lf_ovrc_s5 = 0.2, 0.2, 0.48, 0.48, 0.48, +lf_ovrc_s6 = 0.3, 0.3, 0.48, 0.48, 0.48, +lf_ovrc_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +lf_ovrc_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +st_ovrc_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of stem turnover [1/s] +st_ovrc_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +st_ovrc_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +st_ovrc_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +st_ovrc_s5 = 0.2, 0.12, 0.12, 0.12, 0.12, +st_ovrc_s6 = 0.3, 0.06, 0.06, 0.06, 0.06, +st_ovrc_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +st_ovrc_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +rt_ovrc_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of root tunrover [1/s] +rt_ovrc_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +rt_ovrc_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +rt_ovrc_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +rt_ovrc_s5 = 0.12, 0.12, 0.12, 0.12, 0.12, +rt_ovrc_s6 = 0.06, 0.06, 0.06, 0.06, 0.06, +rt_ovrc_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +rt_ovrc_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +lfmr25 = 0.8, 1.0, 1.0, 1.0, 1.0, ! leaf maintenance respiration at 25c [umol co2/m**2 /s] +stmr25 = 0.05, 0.05, 0.1, 0.1, 0.1, ! stem maintenance respiration at 25c [umol co2/kg bio/s] +rtmr25 = 0.05, 0.05, 0.0, 0.0, 0.0, ! root maintenance respiration at 25c [umol co2/kg bio/s] +grainmr25 = 0.0, 0.0, 0.1, 0.1, 0.1, ! grain maintenance respiration at 25c [umol co2/kg bio/s] + +lfpt_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of carbohydrate flux to leaf +lfpt_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +lfpt_s3 = 0.36, 0.4, 0.4, 0.4, 0.4, +lfpt_s4 = 0.1, 0.2, 0.2, 0.2, 0.2, +lfpt_s5 = 0.0, 0.0, 0.0, 0.0, 0.0, +lfpt_s6 = 0.0, 0.0, 0.0, 0.0, 0.0, +lfpt_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +lfpt_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +stpt_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of carbohydrate flux to stem +stpt_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +stpt_s3 = 0.24, 0.2, 0.2, 0.2, 0.2, +stpt_s4 = 0.6, 0.5, 0.5, 0.5, 0.5, +stpt_s5 = 0.0, 0.0, 0.15, 0.15, 0.15, +stpt_s6 = 0.0, 0.0, 0.05, 0.05, 0.05, +stpt_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +stpt_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +rtpt_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of carbohydrate flux to root +rtpt_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +rtpt_s3 = 0.4, 0.4, 0.4, 0.4, 0.4, +rtpt_s4 = 0.3, 0.3, 0.3, 0.3, 0.3, +rtpt_s5 = 0.05, 0.05, 0.05, 0.05, 0.05, +rtpt_s6 = 0.0, 0.0, 0.05, 0.05, 0.05, +rtpt_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +rtpt_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +grainpt_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! fraction of carbohydrate flux to grain +grainpt_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, ! one row for each of 8 stages +grainpt_s3 = 0.0, 0.0, 0.0, 0.0, 0.0, +grainpt_s4 = 0.0, 0.0, 0.0, 0.0, 0.0, +grainpt_s5 = 0.95, 0.95, 0.8, 0.8, 0.8, +grainpt_s6 = 1.0, 1.0, 0.9, 0.9, 0.9, +grainpt_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +grainpt_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +lfct_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! carbohydrate translocation +lfct_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, +lfct_s3 = 0.0, 0.0, 0.4, 0.4, 0.4, +lfct_s4 = 0.0, 0.0, 0.3, 0.3, 0.3, +lfct_s5 = 0.0, 0.0, 0.05, 0.05, 0.05, +lfct_s6 = 0.0, 0.0, 0.05, 0.05, 0.05, +lfct_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +lfct_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +stct_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! carbohydrate translocation +stct_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, +stct_s3 = 0.0, 0.0, 0.4, 0.4, 0.4, +stct_s4 = 0.0, 0.0, 0.3, 0.3, 0.3, +stct_s5 = 0.0, 0.0, 0.05, 0.05, 0.05, +stct_s6 = 0.0, 0.0, 0.05, 0.05, 0.05, +stct_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +stct_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +rtct_s1 = 0.0, 0.0, 0.0, 0.0, 0.0, ! carbohydrate translocation +rtct_s2 = 0.0, 0.0, 0.0, 0.0, 0.0, +rtct_s3 = 0.0, 0.0, 0.4, 0.4, 0.4, +rtct_s4 = 0.0, 0.0, 0.3, 0.3, 0.3, +rtct_s5 = 0.0, 0.0, 0.05, 0.05, 0.05, +rtct_s6 = 0.0, 0.0, 0.05, 0.05, 0.05, +rtct_s7 = 0.0, 0.0, 0.0, 0.0, 0.0, +rtct_s8 = 0.0, 0.0, 0.0, 0.0, 0.0, + +bio2lai = 0.015, 0.030, 0.015, 0.015, 0.015, ! leaf are per living leaf biomass [m^2/kg] + +/ + +&noahmp_tiledrain_parameters +!-----------------------------------! +! for simple drainage model ! +!-----------------------------------! +nsoiltype = 19 ! num_soil_types +drain_layer_opt = 4 + ! 0 - from one specified layer by td_depth, + ! 1 - from layers 1 & 2, + ! 2 - from layer layers 1, 2, and 3 + ! 3 - from layer 2 and 3 + ! 4 - from layer layers 3, 4 + ! 5 - from all the four layers +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! +! 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ! +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! +tdsmc_fac = 0.90, 0.90, 0.90, 0.90, 0.90, 1.25, 0.90, 1.0, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90, 0.90 ! corresponds to number of soil types soilparam.tbl +td_depth = 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 ! depth of drain tube from the soil surface +td_dc = 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20. ! drainage coefficient (mm d^-1) +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! +! +!-------------------------------------! +! for hooghoudt tile drain model ! +!-------------------------------------! +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- +td_dcoef = 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07 ! m d^-1, drainage coefficent +td_d = 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 ! m, depth to impe layer from drain water level (d) +td_adepth = 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00, 2.00 ! m, actual depth of imp layer from land surface +td_radi = 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07, 0.07 ! m, effective radius of drains (ro) +td_spac = 60.0, 55.0, 45.0, 20.0, 25.0, 30.0, 40.0, 16.0, 18.0, 50.0, 15.0, 10.0, 35.0, 10.0, 60.0, 60.0, 10.0, 60.0, 60.0 ! m, distance between two drain tubes or tiles (l) +td_ddrain = 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20, 1.20 ! m, depth of drain +klat_fac = 1.30, 1.80, 2.10, 2.60, 2.90, 2.50, 2.30, 3.00, 2.70, 2.00, 3.10, 3.30, 2.50, 1.00, 1.00, 1.80, 4.00, 1.00, 1.30 ! multiplication factor to lateral hyd.cond +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- + +/ + +&noahmp_optional_parameters + + !------------------------------------------------------------------------------ + ! saxton and rawls 2006 pedo-transfer function coefficients + !------------------------------------------------------------------------------ + + sr2006_theta_1500t_a = -0.024 ! sand coefficient + sr2006_theta_1500t_b = 0.487 ! clay coefficient + sr2006_theta_1500t_c = 0.006 ! orgm coefficient + sr2006_theta_1500t_d = 0.005 ! sand*orgm coefficient + sr2006_theta_1500t_e = -0.013 ! clay*orgm coefficient + sr2006_theta_1500t_f = 0.068 ! sand*clay coefficient + sr2006_theta_1500t_g = 0.031 ! constant adjustment + + sr2006_theta_1500_a = 0.14 ! theta_1500t coefficient + sr2006_theta_1500_b = -0.02 ! constant adjustment + + sr2006_theta_33t_a = -0.251 ! sand coefficient + sr2006_theta_33t_b = 0.195 ! clay coefficient + sr2006_theta_33t_c = 0.011 ! orgm coefficient + sr2006_theta_33t_d = 0.006 ! sand*orgm coefficient + sr2006_theta_33t_e = -0.027 ! clay*orgm coefficient + sr2006_theta_33t_f = 0.452 ! sand*clay coefficient + sr2006_theta_33t_g = 0.299 ! constant adjustment + + sr2006_theta_33_a = 1.283 ! theta_33t*theta_33t coefficient + sr2006_theta_33_b = -0.374 ! theta_33t coefficient + sr2006_theta_33_c = -0.015 ! constant adjustment + + sr2006_theta_s33t_a = 0.278 ! sand coefficient + sr2006_theta_s33t_b = 0.034 ! clay coefficient + sr2006_theta_s33t_c = 0.022 ! orgm coefficient + sr2006_theta_s33t_d = -0.018 ! sand*orgm coefficient + sr2006_theta_s33t_e = -0.027 ! clay*orgm coefficient + sr2006_theta_s33t_f = -0.584 ! sand*clay coefficient + sr2006_theta_s33t_g = 0.078 ! constant adjustment + + sr2006_theta_s33_a = 0.636 ! theta_s33t coefficient + sr2006_theta_s33_b = -0.107 ! constant adjustment + + sr2006_psi_et_a = -21.67 ! sand coefficient + sr2006_psi_et_b = -27.93 ! clay coefficient + sr2006_psi_et_c = -81.97 ! theta_s33 coefficient + sr2006_psi_et_d = 71.12 ! sand*theta_s33 coefficient + sr2006_psi_et_e = 8.29 ! clay*theta_s33 coefficient + sr2006_psi_et_f = 14.05 ! sand*clay coefficient + sr2006_psi_et_g = 27.16 ! constant adjustment + + sr2006_psi_e_a = 0.02 ! psi_et*psi_et coefficient + sr2006_psi_e_b = -0.113 ! psi_et coefficient + sr2006_psi_e_c = -0.7 ! constant adjustment + + sr2006_smcmax_a = -0.097 ! sand adjustment + sr2006_smcmax_b = 0.043 ! constant adjustment + +/ + +&noahmp_general_parameters + !------------------------------------------------- + ! this part is originally from genparm.tbl + !------------------------------------------------- +slope_data = 0.1, 0.6, 1.0, 0.35, 0.55, 0.8, 0.63, 0.0, 0.0 ! slope factor for soil drainage (9 different slope types) +csoil_data = 2.00e+6 ! soil heat capacity [j m-3 k-1] +refdk_data = 2.0e-6 ! parameter in the surface runoff parameterization +refkdt_data = 3.0 ! parameter in the surface runoff parameterization +frzk_data = 0.15 ! frozen ground parameter +zbot_data = -8.0 ! depth [m] of lower boundary soil temperature +czil_data = 0.1 ! parameter used in the calculation of the roughness length for heat + +/ + +&noahmp_stas_soil_categories + sltype = "stas" ! "stas" or "stas_ruc" + slcats = 19 !num_soil_types +/ + +&noahmp_soil_stas_parameters +! 19 total soil types considered by noahmp +! 1: sand +! 2: loamy sand +! 3: sandy loam +! 4: silt loam +! 5: silt +! 6: loam +! 7: sandy clay loam +! 8: silty clay loam +! 9: clay loam +! 10: sandy clay +! 11: silty clay +! 12: clay +! 13: organic material +! 14: water +! 15: bedrock +! 16: other(land-ice) +! 17: playa +! 18: lava +! 19: white sand +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! +! soil type: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ! +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! + bb = 2.790, 4.260, 4.740, 5.330, 3.860, 5.250, 6.770, 8.720, 8.170, 10.730, 10.390, 11.550, 5.250, 0.000, 2.790, 4.260, 11.550, 2.790, 2.790 + drysmc = 0.010, 0.028, 0.047, 0.084, 0.061, 0.066, 0.069, 0.120, 0.103, 0.100, 0.126, 0.138, 0.066, 0.000, 0.006, 0.028, 0.030, 0.006, 0.010 + maxsmc = 0.339, 0.421, 0.434, 0.476, 0.484, 0.439, 0.404, 0.464, 0.465, 0.406, 0.468, 0.468, 0.439, 1.000, 0.200, 0.421, 0.468, 0.200, 0.339 + refsmc = 0.192, 0.283, 0.312, 0.360, 0.347, 0.329, 0.315, 0.387, 0.382, 0.338, 0.404, 0.412, 0.329, 0.000, 0.170, 0.283, 0.454, 0.170, 0.192 + satpsi = 0.069, 0.036, 0.141, 0.759, 0.955, 0.355, 0.135, 0.617, 0.263, 0.098, 0.324, 0.468, 0.355, 0.000, 0.069, 0.036, 0.468, 0.069, 0.069 + satdk = 4.66e-05, 1.41e-05, 5.23e-06, 2.81e-06, 2.18e-06, 3.38e-06, 4.45e-06, 2.03e-06, 2.45e-06, 7.22e-06, 1.34e-06, 9.74e-07, 3.38e-06, 0.00e+00, 1.41e-04, 1.41e-05, 9.74e-07, 1.41e-04, 4.66e-05 + satdw = 2.65e-05, 5.14e-06, 8.05e-06, 2.39e-05, 1.66e-05, 1.43e-05, 1.01e-05, 2.35e-05, 1.13e-05, 1.87e-05, 9.64e-06, 1.12e-05, 1.43e-05, 0.00e+00, 1.36e-04, 5.14e-06, 1.12e-05, 1.36e-04, 2.65e-05 + wltsmc = 0.010, 0.028, 0.047, 0.084, 0.061, 0.066, 0.069, 0.120, 0.103, 0.100, 0.126, 0.138, 0.066, 0.000, 0.006, 0.028, 0.030, 0.006, 0.010 + qtz = 0.920, 0.820, 0.600, 0.250, 0.100, 0.400, 0.600, 0.100, 0.350, 0.520, 0.100, 0.250, 0.050, 0.600, 0.070, 0.250, 0.600, 0.520, 0.920 + bvic = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + axaj = 0.009, 0.010, 0.009, 0.010, 0.012, 0.013, 0.014, 0.015, 0.016, 0.015, 0.016, 0.017, 0.012, 0.001, 0.017, 0.017, 0.017, 0.015, 0.009 + bxaj = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + xxaj = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + bdvic = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + bbvic = 1.000, 1.010, 1.020, 1.025, 1.000, 1.000, 1.032, 1.035, 1.040, 1.042, 1.045, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000 + gdvic = 0.050, 0.070, 0.130, 0.200, 0.170, 0.110, 0.260, 0.350, 0.260, 0.300, 0.380, 0.410, 0.500, 0.001, 0.010, 0.001, 0.001, 0.050, 0.020 + +/ + +&noahmp_soil_stas_ruc_parameters +! 19 total soil types considered by noahmp +! 1: sand +! 2: loamy sand +! 3: sandy loam +! 4: silt loam +! 5: silt +! 6: loam +! 7: sandy clay loam +! 8: silty clay loam +! 9: clay loam +! 10: sandy clay +! 11: silty clay +! 12: clay +! 13: organic material +! 14: water +! 15: bedrock +! 16: other(land-ice) +! 17: playa +! 18: lava +! 19: white sand +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! +! soil type: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ! +!-------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! + bb = 4.050, 4.380, 4.900, 5.300, 5.300, 5.390, 7.120, 7.750, 5.390, 10.400, 10.400, 11.400, 5.390, 0.000, 4.050, 4.900, 11.400, 4.050, 4.050 + drysmc = 0.002, 0.035, 0.041, 0.034, 0.034, 0.050, 0.068, 0.060, 0.050, 0.070, 0.070, 0.068, 0.027, 0.000, 0.004, 0.065, 0.030, 0.006, 0.010 + hc = 1.470, 1.410, 1.340, 1.270, 1.270, 1.210, 1.180, 1.320, 1.210, 1.180, 1.150, 1.090, 1.210, 4.180, 2.030, 2.100, 1.410, 1.410, 1.470 + maxsmc = 0.395, 0.410, 0.435, 0.485, 0.485, 0.451, 0.420, 0.477, 0.451, 0.426, 0.492, 0.482, 0.451, 1.000, 0.200, 0.435, 0.468, 0.200, 0.339 + refsmc = 0.174, 0.179, 0.249, 0.369, 0.369, 0.314, 0.299, 0.357, 0.314, 0.316, 0.409, 0.400, 0.314, 1.000, 0.100, 0.249, 0.454, 0.170, 0.236 + satpsi = 0.121, 0.090, 0.218, 0.786, 0.786, 0.478, 0.299, 0.356, 0.478, 0.153, 0.490, 0.405, 0.478, 0.000, 0.121, 0.218, 0.468, 0.069, 0.069 + satdk = 1.76e-04, 1.56e-04, 3.47e-05, 7.20e-06, 7.20e-06, 6.95e-06, 6.30e-06, 1.70e-06, 6.95e-06, 2.17e-06, 1.03e-06, 1.28e-06, 6.95e-06, 0.00e+00, 1.41e-04, 3.47e-05, 9.74e-07, 1.41e-04, 1.76e-04 + satdw = 6.08e-07, 5.14e-06, 8.05e-06, 2.39e-05, 2.39e-05, 1.43e-05, 9.90e-06, 2.37e-05, 1.43e-05, 1.87e-05, 9.64e-06, 1.12e-05, 1.43e-05, 0.00e+00, 1.36e-04, 5.14e-06, 1.12e-05, 1.36e-04, 6.08e-07 + wltsmc = 0.033, 0.055, 0.095, 0.143, 0.143, 0.137, 0.148, 0.170, 0.137, 0.158, 0.190, 0.198, 0.117, 0.000, 0.006, 0.114, 0.030, 0.006, 0.060 + qtz = 0.920, 0.820, 0.600, 0.250, 0.100, 0.400, 0.600, 0.100, 0.400, 0.520, 0.100, 0.250, 0.050, 0.000, 0.600, 0.050, 0.600, 0.520, 0.920 + bvic = 0.050, 0.080, 0.090, 0.100, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + axaj = 0.009, 0.010, 0.009, 0.010, 0.012, 0.013, 0.014, 0.015, 0.016, 0.015, 0.016, 0.017, 0.012, 0.001, 0.017, 0.017, 0.017, 0.015, 0.009 + bxaj = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + xxaj = 0.050, 0.080, 0.090, 0.250, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + bdvic = 0.050, 0.080, 0.090, 0.100, 0.150, 0.180, 0.200, 0.220, 0.230, 0.250, 0.280, 0.300, 0.260, 0.000, 1.000, 1.000, 1.000, 0.350, 0.150 + bbvic = 1.000, 1.010, 1.020, 1.025, 1.000, 1.000, 1.032, 1.035, 1.040, 1.042, 1.045, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000 + gdvic = 0.050, 0.070, 0.130, 0.200, 0.170, 0.110, 0.260, 0.350, 0.260, 0.300, 0.380, 0.410, 0.500, 0.001, 0.010, 0.001, 0.001, 0.050, 0.020 + +/ + diff --git a/parm/templates/template.ufs.configure b/parm/templates/template.ufs.configure new file mode 100644 index 00000000..362ad5f2 --- /dev/null +++ b/parm/templates/template.ufs.configure @@ -0,0 +1,125 @@ +############################################# +#### UFS Run-Time Configuration File ###### +############################################# + +# ESMF # +logKindFlag: ESMF_LOGKIND_MULTI +globalResourceControl: true + +# EARTH # +EARTH_component_list: MED ATM LND +EARTH_attributes:: + Verbosity = 0 +:: + +# MED # +MED_model: cmeps +MED_petlist_bounds: 0 -1 +MED_omp_num_threads: 1 +MED_attributes:: + Verbosity = 1 + Diagnostic = 0 + ATM_model = datm + LND_model = noahmp + MED_model = cmeps + history_n = 6 + history_option = nhours + history_ymd = -999 + coupling_mode = ufs.nfrac.aoflux + history_tile_lnd = 96 + history_n_lnd_inst = 6 + history_option_lnd_inst = nhours + pio_rearranger = box +:: + +# ATM # +ATM_model: datm +ATM_petlist_bounds: 0 0 +ATM_omp_num_threads: 1 +ATM_attributes:: + Verbosity = 0 + Diagnostic = 0 +:: + +# LND # +LND_model: noahmp +LND_petlist_bounds: 1 6 +LND_omp_num_threads: 1 +LND_attributes:: + Verbosity = 1 + Diagnostic = 0 + mosaic_file = INPUT/C96_mosaic.nc + input_dir = INPUT/ + ic_type = custom + layout = 1:1 # 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 = 1 + precip_partition_option = 4 + 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 = 10800 + calc_snet = .true. +:: + +# cold +runSeq:: +@3600 + MED med_phases_prep_atm + MED -> ATM :remapMethod=redist + ATM + 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 + MED med_phases_history_write +@ +:: + +# Other Attributes # +DRIVER_attributes:: +:: + +ALLCOMP_attributes:: + ScalarFieldCount = 3 + ScalarFieldIdxGridNX = 1 + ScalarFieldIdxGridNY = 2 + ScalarFieldIdxNextSwCday = 3 # required for data atmosphere configurations + ScalarFieldName = cpl_scalars + start_type = continue + restart_dir = ./RESTART/ + case_name = ufs.cpld + restart_n = 12 + restart_option = nhours + restart_ymd = -999 + dbug_flag = 0 + stop_n = 24 + stop_option = nhours + stop_ymd = -999 + read_restart = .false. + mediator_present = true + 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/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index 746381a9..1f99a10b 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -35,30 +35,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then echo '************************************************' echo 'running the forecast model' - TEST_NAME=datm_cdeps_lnd_gswp3 - TEST_NAME_RST=datm_cdeps_lnd_gswp3_rst - PATHRT=${HOMElandda}/sorc/ufs_model.fd/tests - RT_COMPILER=${RT_COMPILER:-intel} - ATOL="1e-7" - - cp $PARMlandda/$TEST_NAME_RST ${PATHRT}/tests/$TEST_NAME_RST - source ${PATHRT}/rt_utils.sh - source ${PATHRT}/default_vars.sh - source ${PATHRT}/tests/$TEST_NAME_RST - source ${PATHRT}/atparse.bash - -# BL_DATE=20230816 - RTPWD=${RTPWD:-${FIXlandda}/test_base/${TEST_NAME}_intel} - INPUTDATA_ROOT=${INPUTDATA_ROOT:-${FIXlandda}/UFS_WM} - - echo "RTPWD= $RTPWD" - echo "INPUTDATA_ROOT= $INPUTDATA_ROOT" - - if [[ ! -d ${INPUTDATA_ROOT} ]] || [[ ! -d ${RTPWD} ]]; then - echo "Error: cannot find either folder for INPUTDATA_ROOT or RTPWD, please check!" - exit 1 - fi - # modify some env variables - reduce core usage export ATM_compute_tasks=0 export ATM_io_tasks=1 @@ -66,12 +42,11 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then export layout_x=1 export layout_y=1 - # FV3 executable: - if [[ $DATM_CDEPS = 'true' ]] || [[ $FV3 = 'true' ]] || [[ $S2S = 'true' ]]; then - if [[ $HAFS = 'false' ]] || [[ $FV3 = 'true' && $HAFS = 'true' ]]; then - atparse < ${PATHRT}/parm/${INPUT_NML:-input.nml.IN} > input.nml - fi - fi + cp ${PARMlandda}/templates/template.input.nml input.nml + cp ${PARMlandda}/templates/template.ufs.configure ufs.configure + cp ${PARMlandda}/templates/template.datm_in datm_in + cp ${PARMlandda}/templates/template.datm.streams datm.streams + cp ${PARMlandda}/templates/template.noahmptable.tbl noahmptable.tbl # Set model_configure cp ${PARMlandda}/templates/template.model_configure model_configure @@ -81,10 +56,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then sed -i -e "s/XXHH/${HH}/g" model_configure sed -i -e "s/XXFCSTHR/${FCSTHR}/g" model_configure - compute_petbounds_and_tasks - - atparse < ${PATHRT}/parm/${UFS_CONFIGURE:-ufs.configure} > ufs.configure - # set diag table if [[ "Q${DIAG_TABLE:-}" != Q ]] ; then cp ${PARMlandda}/templates/template.diag_table diag_table @@ -106,7 +77,7 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then # Set up the run directory mkdir -p RESTART INPUT cd INPUT - ln -nsf ${FIXlandda}/UFS_WM/DATM_GSWP3_input_data/* . + ln -nsf ${FIXlandda}/UFS_WM/DATM_input_data/${ATMOS_FORC}/* . cd - SUFFIX=${RT_SUFFIX} @@ -125,7 +96,7 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then elif [[ -e "${WARMSTART_DIR}/${rfile1}" ]]; then ln -nsf "${WARMSTART_DIR}/${rfile1}" RESTART/. else - ln -nsf ${FIXlandda}/restarts/gswp3/${rfile1} RESTART/. + ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile1} RESTART/. fi ls -1 "RESTART/${rfile1}">rpointer.cpl @@ -136,42 +107,34 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then elif [[ -e "${WARMSTART_DIR}/${rfile2}" ]]; then ln -nsf "${WARMSTART_DIR}/${rfile2}" RESTART/. else - ln -nsf ${FIXlandda}/restarts/gswp3/${rfile2} RESTART/. + ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile2} RESTART/. fi ls -1 "RESTART/${rfile2}">rpointer.atm cd INPUT - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile1.nc C96.initial.tile1.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile2.nc C96.initial.tile2.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile3.nc C96.initial.tile3.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile4.nc C96.initial.tile4.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile5.nc C96.initial.tile5.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C96_init_fields.tile6.nc C96.initial.tile6.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.maximum_snow_albedo.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.slope_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.soil_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.soil_color.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.substrate_temperature.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.vegetation_greenness.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/C96.vegetation_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile1.nc oro_data.tile1.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile2.nc oro_data.tile2.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile3.nc oro_data.tile3.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile4.nc oro_data.tile4.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile5.nc oro_data.tile5.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C96/oro_C96.mx100.tile6.nc oro_data.tile6.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_input_data/INPUT/C96_grid.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_input_data/INPUT/grid_spec.nc C96_mosaic.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile1.nc C${RES}.initial.tile1.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile2.nc C${RES}.initial.tile2.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile3.nc C${RES}.initial.tile3.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile4.nc C${RES}.initial.tile4.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile5.nc C${RES}.initial.tile5.nc + ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile6.nc C${RES}.initial.tile6.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.maximum_snow_albedo.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.slope_type.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.soil_type.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.soil_color.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.substrate_temperature.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.vegetation_greenness.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.vegetation_type.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile1.nc oro_data.tile1.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile2.nc oro_data.tile2.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile3.nc oro_data.tile3.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile4.nc oro_data.tile4.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile5.nc oro_data.tile5.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile6.nc oro_data.tile6.nc + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}_grid.tile*.nc . + ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiles/C${RES}/grid_spec.nc C${RES}_mosaic.nc cd - - if [[ $DATM_CDEPS = 'true' ]]; then - atparse < ${PATHRT}/parm/${DATM_IN_CONFIGURE:-datm_in.IN} > datm_in - atparse < ${PATHRT}/parm/${DATM_STREAM_CONFIGURE:-datm.streams.IN} > datm.streams - fi - - # NoahMP table file - cp ${PATHRT}/parm/noahmptable.tbl noahmptable.tbl - # start runs echo "Start ufs-cdeps-land model run with TASKS: ${TASKS}" export pgm="ufs_model" From 448a7e955221c6ce1069f52bf586b992f8320b18 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 12:27:32 -0500 Subject: [PATCH 03/18] change path for orog --- scripts/exlandda_analysis.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exlandda_analysis.sh b/scripts/exlandda_analysis.sh index 8f632798..532c4313 100755 --- a/scripts/exlandda_analysis.sh +++ b/scripts/exlandda_analysis.sh @@ -2,7 +2,7 @@ set -xue -TPATH=${FIXlandda}/orog_files/ +TPATH="${FIXlandda}/FV3_fix_tiles/C${RES}/" YYYY=${PDY:0:4} MM=${PDY:4:2} DD=${PDY:6:2} From 5a71cba42d5e65453fac510da8ee15b3b101db98 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 12:48:04 -0500 Subject: [PATCH 04/18] change path to orog --- parm/templates/template.jedi2ufs | 2 +- parm/templates/template.tile2vector | 2 +- parm/templates/template.ufs2jedi | 2 +- parm/templates/template.vector2tile | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/parm/templates/template.jedi2ufs b/parm/templates/template.jedi2ufs index c5459ec0..efc66308 100644 --- a/parm/templates/template.jedi2ufs +++ b/parm/templates/template.jedi2ufs @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/orog_files/" + tile_path = "FIXlandda/FV3_fix_tiled/CXXRES/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- diff --git a/parm/templates/template.tile2vector b/parm/templates/template.tile2vector index 28a8c9a5..8be9babd 100644 --- a/parm/templates/template.tile2vector +++ b/parm/templates/template.tile2vector @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/orog_files/" + tile_path = "FIXlandda/FV3_fix_tiled/CXXRES/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- diff --git a/parm/templates/template.ufs2jedi b/parm/templates/template.ufs2jedi index 1ac0360e..82576340 100644 --- a/parm/templates/template.ufs2jedi +++ b/parm/templates/template.ufs2jedi @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/orog_files/" + tile_path = "FIXlandda/FV3_fix_tiled/CXXRES/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- diff --git a/parm/templates/template.vector2tile b/parm/templates/template.vector2tile index 43f342e5..f9e9f685 100644 --- a/parm/templates/template.vector2tile +++ b/parm/templates/template.vector2tile @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/orog_files/" + tile_path = "FIXlandda/FV3_fix_tiled/C${RES}/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- From 43632cc9f3e7e77dec2e3c6d0187ac3d74f9295d Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 12:52:28 -0500 Subject: [PATCH 05/18] fix typo --- scripts/exlandda_analysis.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exlandda_analysis.sh b/scripts/exlandda_analysis.sh index 532c4313..dca74d70 100755 --- a/scripts/exlandda_analysis.sh +++ b/scripts/exlandda_analysis.sh @@ -2,7 +2,7 @@ set -xue -TPATH="${FIXlandda}/FV3_fix_tiles/C${RES}/" +TPATH="${FIXlandda}/FV3_fix_tiled/C${RES}" YYYY=${PDY:0:4} MM=${PDY:4:2} DD=${PDY:6:2} From e078691f35f6d7ae9a41f4d6dc5ff346a77d2571 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 12:59:39 -0500 Subject: [PATCH 06/18] add missing template --- parm/templates/template.fd_ufs.yaml | 1266 +++++++++++++++++++++++++++ scripts/exlandda_forecast.sh | 23 +- 2 files changed, 1273 insertions(+), 16 deletions(-) create mode 100644 parm/templates/template.fd_ufs.yaml diff --git a/parm/templates/template.fd_ufs.yaml b/parm/templates/template.fd_ufs.yaml new file mode 100644 index 00000000..c0189f0b --- /dev/null +++ b/parm/templates/template.fd_ufs.yaml @@ -0,0 +1,1266 @@ + field_dictionary: + version_number: 0.0.0 + institution: National ESPC, CSC & MCL Working Groups + source: automatically generated by the NUOPC Layer + description: Community-based dictionary for shared coupling fields + entries: + # + #----------------------------------- + # section: mediator calculation for atm/ocn flux calculation + #----------------------------------- + # + - standard_name: Faox_lat + alias: mean_laten_heat_flx_atm_into_ocn + canonical_units: W m-2 + description: mediator calculation - atm/ocn surface latent heat flux + # + - standard_name: Faox_lwup + alias: mean_up_lw_flx_ocn + canonical_units: W m-2 + description: mediator calculation - long wave radiation flux over the ocean + # + - standard_name: Faox_taux + alias: stress_on_air_ocn_zonal + canonical_units: N m-2 + description: mediator calculation + # + - standard_name: Faox_tauy + alias: stress_on_air_ocn_merid + canonical_units: N m-2 + description: mediator calculation + # + - standard_name: Foxx_lwnet + alias: mean_net_lw_flx + canonical_units: W m-2 + description: mediator calculation - atm/ocn net longwave flux + # + - standard_name: Foxx_sen + canonical_units: W m-2 + alias: mean_sensi_heat_flx + description: mediator calculation - atm/ocn surface sensible heat flux + # + - standard_name: Foxx_evap + canonical_units: kg m-2 s-1 + alias: mean_evap_rate + description: mediator calculation - atm/ocn specific humidity flux + # + - standard_name: Faox_evap + canonical_units: kg m-2 s-1 + description: mediator calculation - atm/ocn specific humidity flux + #----------------------------------- + # section: atmosphere export + #----------------------------------- + # + - standard_name: Faxa_bcph + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_ocph + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_dstdry + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_dstwet + canonical_units: kg m-2 s-1 + description: atmosphere export + # + #----------------------------------- + # section: atmosphere export + #----------------------------------- + # + - standard_name: Faxa_swdn + alias: inst_down_sw_flx + canonical_units: W m-2 + description: atmosphere export - mean downward SW heat flux + # + - standard_name: Faxa_lwdn + alias: inst_down_lw_flx + canonical_units: W m-2 + description: atmosphere export - mean downward LW heat flux + # + - standard_name: Faxa_rain + alias: inst_prec_rate + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_rainc + alias: inst_prec_rate_conv + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_rainl + alias: inst_prec_rate_large + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_snow + alias: inst_fprec_rate + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_snowc + alias: inst_fprec_rate_conv + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_snowl + alias: inst_fprec_rate_large + canonical_units: kg m-2 s-1 + description: atmosphere export + # + - standard_name: Faxa_swnet + alias: inst_net_sw_flx + canonical_units: W m-2 + description: atmosphere export + # + - standard_name: Faxa_swndf + alias: inst_down_sw_ir_dif_flx + canonical_units: W m-2 + description: atmosphere export - mean surface downward nir diffuse flux + # + - standard_name: Faxa_swndr + alias: inst_down_sw_ir_dir_flx + canonical_units: W m-2 + description: atmosphere export - mean surface downward nir direct flux + # + - standard_name: Faxa_swvdf + alias: inst_down_sw_vis_dif_flx + canonical_units: W m-2 + description: atmosphere export - mean surface downward uv+vis diffuse flux + # + - standard_name: Faxa_swvdr + alias: inst_down_sw_vis_dir_flx + canonical_units: W m-2 + description: atmosphere export - mean surface downward uv+visvdirect flux + # + - standard_name: Sa_dens + alias: air_density_height_lowest + canonical_units: kg m-3 + description: atmosphere export- density at the lowest model layer + # + - standard_name: Sa_pbot + alias: inst_pres_height_lowest + canonical_units: Pa + description: atmosphere export - pressure at lowest model layer + # + - standard_name: Sa_prsl + alias: inst_pres_height_lowest_from_phys + canonical_units: Pa + description: atmosphere export - pressure at lowest model layer + # + - standard_name: Sa_pslv + alias: inst_pres_height_surface + canonical_units: Pa + description: atmosphere export - instantaneous pressure land and sea surface + # + - standard_name: Sa_ptem + canonical_units: K + description: atmosphere export - bottom layer potential temperature + # + - standard_name: Sa_shum + alias: inst_spec_humid_height_lowest + canonical_units: kg kg-1 + description: atmosphere export - bottom layer specific humidity + # + - standard_name: Sa_qa + alias: inst_spec_humid_height_lowest_from_phys + canonical_units: kg kg-1 + description: atmosphere export - bottom layer specific humidity + # + - standard_name: Sa_tbot + alias: inst_temp_height_lowest + canonical_units: K + description: atmosphere export - bottom layer temperature + # + - standard_name: Sa_tskn + alias: inst_temp_height_surface + - standard_name: Sa_tskn + alias: inst_temp_skin_temperature + canonical_units: K + description: atmosphere export - sea surface skin temperature + # + - standard_name: Sa_ta + alias: inst_temp_height_lowest_from_phys + canonical_units: K + description: atmosphere export - bottom layer temperature + # + - standard_name: Sa_u + alias: inst_zonal_wind_height_lowest + canonical_units: m s-1 + description: atmosphere export - bottom layer zonal wind + # + - standard_name: Sa_v + alias: inst_merid_wind_height_lowest + canonical_units: m s-1 + description: atmosphere export - bottom layer meridional wind + # + - standard_name: Sa_wspd + alias: inst_wind_speed_height_lowest + canonical_units: m s-1 + description: atmosphere export - bottom layer wind speed + # + - standard_name: Sa_z + alias: inst_height_lowest + canonical_units: m + description: atmosphere export - bottom layer height + # + - standard_name: Sa_topo + alias: inst_surface_height + canonical_units: m + description: atmosphere export - topographic height + # + - standard_name: Faxa_taux + alias: inst_zonal_moment_flx + - standard_name: Faxa_taux + alias: inst_zonal_moment_flx_atm + canonical_units: N m-2 + description: atmosphere export- zonal component of momentum flux + # + - standard_name: Faxa_tauy + alias: inst_merid_moment_flx + - standard_name: Faxa_tauy + alias: inst_merid_moment_flx_atm + canonical_units: N m-2 + description: atmosphere export - meridional component of momentum flux + # + - standard_name: Faxa_lwnet + canonical_units: W m-2 + alias: inst_net_lw_flx + description: atmosphere export - mean net longwave flux from atm + # + - standard_name: Faxa_sen + canonical_units: W m-2 + alias: inst_sensi_heat_flx + description: atmosphere export - sensible heat flux + # + - standard_name : Faxa_evap + canonical_units: kg m-2 s-1 + alias: inst_evap_rate + description: atmosphere export - latent heat flux conversion + # + - standard_name: Faxx_evap + canonical_units: kg m-2 s-1 + description: atmosphere import + # + - standard_name: Faxa_lat + alias: inst_laten_heat_flx + canonical_units: W m-2 + description: atmosphere export - latent heat flux + # + - standard_name: Faxx_lat + alias: mean_laten_heat_flx + canonical_units: W m-2 + description: atmosphere import + # + - standard_name: Faxx_lwup + alias: mean_up_lw_flx + canonical_units: W m-2 + description: atmosphere import - merged ocn/ice flux + # + - standard_name: Faxx_sen + alias: mean_sensi_heat_flx + canonical_units: W m-2 + description: atmosphere import + # + - standard_name: Faxx_taux + alias: mean_zonal_moment_flx + canonical_units: N m-2 + description: atmosphere import - zonal component of momentum flux + # + - standard_name: Faxx_tauy + alias: mean_merid_moment_flx + canonical_units: N m-2 + description: atmosphere import - meridional component of momentum flux + # + - standard_name: Sa_ofrac + alias: openwater_frac_in_atm + canonical_units: 1 + description: atm export to mediator - open water ocean fraction (varies with time) + # + - standard_name: Sa_u10m + alias: inst_zonal_wind_height10m + canonical_units: m s-1 + description: atmosphere export - zonal wind height 10m + - standard_name: Sa_u10m + alias: eastward_wind_at_10m_height + # + - standard_name: Sa_v10m + alias: inst_merid_wind_height10m + canonical_units: m s-1 + description: atmosphere export - meridional wind height 10m + - standard_name: Sa_v10m + alias: northward_wind_at_10m_height + # + - standard_name: Sa_wspd10m + alias: inst_wind_speed_height10m + canonical_units: m s-1 + description: atmosphere export - wind speed height 10m + # + - standard_name: Sa_t2m + alias: inst_temp_height2m + canonical_units: K + description: atmosphere export - temperature height 2m + # + - standard_name: Sa_q2m + alias: inst_spec_humid_height2m + canonical_units: kg kg -1 + description: atmosphere export - specifc humidity height 2m + # + - standard_name: canopy_moisture_storage + canonical_units: m + description: canopy moisture content + # + - standard_name: inst_aerodynamic_conductance + canonical_units: m + description: aerodynamic conductance + # + - standard_name: inst_canopy_resistance + canonical_units: s m-1 + description: canopy aerodynamic resistance + # + - standard_name: leaf_area_index + canonical_units: 1 + description: leaf area index + # + - standard_name: temperature_of_soil_layer + canonical_units: K + description: temperature in soil layer + # + - standard_name: height + canonical_units: m + description: orography + # + - standard_name: Sa_exner + alias: inst_exner_function_height_lowest + canonical_units: 1 + description: dimensionless exner function at surface adjacent layer + # + - standard_name: Sa_ustar + alias: surface_friction_velocity + canonical_units: m s-1 + description: surface friction velocity + # + #----------------------------------- + # section: sea-ice export + #----------------------------------- + # + - standard_name: Faii_evap + alias: evap_rate_atm_into_ice + canonical_units: kg m-2 s-1 + description: sea-ice export + # + - standard_name: Faii_lat + alias: laten_heat_flx_atm_into_ice + canonical_units: W m-2 + description: sea-ice export to atm - atm/ice latent heat flux + # + - standard_name: Faii_sen + alias: sensi_heat_flx_atm_into_ice + canonical_units: W m-2 + description: sea-ice export to atm - atm/ice sensible heat flux + # + - standard_name: Faii_lwup + alias: lwup_flx_ice + canonical_units: W m-2 + description: sea-ice export - outgoing logwave radiation + # + - standard_name: Faii_swnet + canonical_units: W m-2 + description: sea-ice export to atm + # + - standard_name: Faii_taux + alias: stress_on_air_ice_zonal + canonical_units: N m-2 + description: sea-ice export to atm - air ice zonal stress + # + - standard_name: Faii_tauy + alias: stress_on_air_ice_merid + canonical_units: N m-2 + description: sea-ice export - air ice meridional stress + # + - standard_name: Fioi_bcphi + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - hydrophilic black carbon flux to ocean + # + - standard_name: Fioi_bcpho + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - hydrophobic black carbon flux to ocean + # + - standard_name: Fioi_flxdst + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - dust aerosol flux to ocean + # + - standard_name: Fioi_melth + alias: net_heat_flx_to_ocn + canonical_units: W m-2 + description: sea-ice export to ocean - net heat flux to ocean + # + - standard_name: Fioi_meltw + alias: mean_fresh_water_to_ocean_rate + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - fresh water to ocean (h2o flux from melting) + # + - standard_name: Fioi_meltw_wiso + alias: mean_fresh_water_to_ocean_rate_wiso + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - fresh water to ocean (h2o flux from melting) for 16O, 18O, HDO + # + - standard_name: Fioi_salt + alias: mean_salt_rate + canonical_units: kg m-2 s-1 + description: sea-ice export to ocean - salt to ocean (salt flux from melting) + # + - standard_name: Fioi_swpen + alias: mean_sw_pen_to_ocn + canonical_units: W m-2 + description: sea-ice export to ocean - flux of shortwave through ice to ocean + # + - standard_name: Fioi_swpen_vdr + alias: mean_sw_pen_to_ocn_vis_dir_flx + canonical_units: W m-2 + description: sea-ice export to ocean - flux of vis dir shortwave through ice to ocean + # + - standard_name: Fioi_swpen_vdf + alias: mean_sw_pen_to_ocn_vis_dif_flx + canonical_units: W m-2 + description: sea-ice export to ocean - flux of vif dir shortwave through ice to ocean + # + - standard_name: Fioi_swpen_idr + alias: mean_sw_pen_to_ocn_ir_dir_flx + canonical_units: W m-2 + description: sea-ice export to ocean - flux of ir dir shortwave through ice to ocean + # + - standard_name: Fioi_swpen_idf + alias: mean_sw_pen_to_ocn_ir_dif_flx + canonical_units: W m-2 + description: sea-ice export to ocean - flux of ir dif shortwave through ice to ocean + # + - standard_name: Fioi_taux + alias: stress_on_ocn_ice_zonal + canonical_units: N m-2 + description: sea-ice export to ocean - ice ocean zonal stress + # + - standard_name: Fioi_tauy + alias: stress_on_ocn_ice_merid + canonical_units: N m-2 + description: sea-ice export to ocean - ice ocean meridional stress + # + - standard_name: Si_anidf + alias: inst_ice_ir_dif_albedo + canonical_units: 1 + description: sea-ice export to atm + # + - standard_name: Si_anidr + alias: inst_ice_ir_dir_albedo + canonical_units: 1 + description: sea-ice export to atm + # + - standard_name: Si_avsdf + alias: inst_ice_vis_dif_albedo + canonical_units: 1 + description: sea-ice export to atm + # + - standard_name: Si_avsdr + alias: inst_ice_vis_dir_albedo + canonical_units: 1 + description: sea-ice export to atm + # + - standard_name: Si_ifrac + alias: ice_fraction + canonical_units: 1 + description: sea-ice export to atm - ice fraction (varies with time) + # + - standard_name: Si_imask + alias: ice_mask + canonical_units: 1 + description: sea-ice export - ice mask + # + - standard_name: Si_qref + canonical_units: kg kg-1 + description: sea-ice export to atm + # + - standard_name: Si_t + alias: sea_ice_surface_temperature + canonical_units: K + description: sea-ice export + # + - standard_name: Si_tref + canonical_units: K + description: sea-ice export + # + - standard_name: Si_u10 + canonical_units: m/s + description: sea-ice export + # + - standard_name: Si_vice + alias: sea_ice_volume + canonical_units: m + description: sea-ice export - volume of ice per unit area + # + - standard_name: Si_snowh + canonical_units: m + description: sea-ice export - surface_snow_water_equivalent + # + - standard_name: Si_vsno + alias: snow_volume_on_sea_ice + canonical_units: m + description: sea-ice export - volume of snow per unit area + # + - standard_name: Si_thick + canonical_units: m + description: sea-ice export - ice thickness + # + - standard_name: Si_floediam + canonical_units: m + description: sea-ice export - ice floe diameter + # + #----------------------------------- + # section: ocean export to mediator + #----------------------------------- + # + - standard_name: Fioo_q + alias: freezing_melting_potential + canonical_units: W m-2 + description: ocean export + # + - standard_name: So_bldepth + alias: mixed_layer_depth + canonical_units: m + description: ocean export + # + - standard_name: So_h + alias: sea_surface_height_above_sea_level + canonical_units: m + description: ocean export + - standard_name: So_h + alias: seahgt + # + - standard_name: So_dhdx + alias: sea_surface_slope_zonal + canonical_units: m m-1 + description: ocean export + # + - standard_name: So_dhdy + alias: sea_surface_slope_merid + canonical_units: m m-1 + description: ocean export + # + - standard_name: So_duu10n + canonical_units: m2 s-2 + description: ocean export + # + - standard_name: So_fswpen + canonical_units: 1 + description: ocean export + # + - standard_name: So_ofrac + canonical_units: 1 + description: ocean export + # + - standard_name: So_omask + alias: ocean_mask + canonical_units: 1 + description: ocean export + # + - standard_name: So_qref + canonical_units: kg kg-1 + description: ocean export + # + - standard_name: So_re + canonical_units: 1 + description: ocean export + # + - standard_name: So_s + alias: s_surf + canonical_units: g kg-1 + description: ocean export + # + - standard_name: So_ssq + canonical_units: kg kg-1 + description: ocean export + # + - standard_name: So_t + alias: sea_surface_temperature + canonical_units: K + description: ocean export + # + - standard_name: So_tref + canonical_units: K + description: ocean export + # + - standard_name: So_u + alias: ocn_current_zonal + canonical_units: m s-1 + description: ocean export + # + - standard_name: So_u10 + canonical_units: m + description: ocean export + # + - standard_name: So_ustar + canonical_units: m s-1 + description: ocean export + # + - standard_name: So_v + alias: ocn_current_merid + canonical_units: m s-1 + description: ocean export + # + #----------------------------------- + # section: ocean import + #----------------------------------- + # + - standard_name: Foxx_hrain + canonical_units: W m-2 + description: to ocn heat content of rain + # + - standard_name: Foxx_hsnow + canonical_units: W m-2 + description: to ocn heat content of snow + # + - standard_name: Foxx_hevap + canonical_units: W m-2 + description: to ocn heat content of evaporation + # + - standard_name: Foxx_hcond + canonical_units: W m-2 + description: to ocn heat content of condensation + # + - standard_name: Foxx_hrofl + canonical_units: W m-2 + description: to ocn heat content of liquid runoff + # + - standard_name: Foxx_hrofi + canonical_units: W m-2 + description: to ocn heat content of ice runoff + # + - standard_name: Foxx_rofi + canonical_units: kg m-2 s-1 + description: ocean import - water flux due to runoff (frozen) + # + - standard_name: Foxx_rofl + canonical_units: kg m-2 s-1 + description: ocean import - water flux due to runoff (liquid) + # + - standard_name: Foxx_swnet + alias: mean_net_sw_flx + canonical_units: W m-2 + description: ocean import - net shortwave radiation to ocean + # + - standard_name: Foxx_swnet_vdr + alias: mean_net_sw_vis_dir_flx + canonical_units: W m-2 + description: ocean import - net shortwave visible direct radiation to ocean + # + - standard_name: Foxx_swnet_vdf + alias: mean_net_sw_vis_dif_flx + canonical_units: W m-2 + description: ocean import - net shortwave visible diffuse radiation to ocean + # + - standard_name: Foxx_swnet_idr + alias: mean_net_sw_ir_dir_flx + canonical_units: W m-2 + description: ocean import - net shortwave ir direct radiation to ocean + # + - standard_name: Foxx_swnet_idf + alias: mean_net_sw_ir_dif_flx + canonical_units: W m-2 + description: ocean import - net shortwave ir diffuse radiation to ocean + # + - standard_name: Foxx_sen + alias: mean_sensi_heat_flx + canonical_units: W m-2 + description: ocean import - sensible heat flux into ocean + # + - standard_name: Foxx_lat + canonical_units: W m-2 + description: ocean import - latent heat flux into ocean + # + - standard_name: Foxx_taux + alias: mean_zonal_moment_flx + canonical_units: N m-2 + description: ocean import - zonal surface stress to ocean + # + - standard_name: Foxx_tauy + alias: mean_merid_moment_flx + canonical_units: N m-2 + description: ocean import - meridional surface stress to ocean + # + #----------------------------------- + # mediator fields + #----------------------------------- + # + - standard_name: cpl_scalars + canonical_units: unitless + # + - standard_name: frac + canonical_units: 1 + # + - standard_name: mask + canonical_units: 1 + # + #----------------------------------- + # fields to use fluxes from mediator + #----------------------------------- + # + - standard_name: Faox_lat + alias: laten_heat_flx_atm_into_ocn + canonical_units: W m-2 + description: mediator export - atm/ocn surface latent heat flux + # + - standard_name: Faox_sen + alias: sensi_heat_flx_atm_into_ocn + canonical_units: W m-2 + description: mediator export - atm/ocn surface sensible heat flux + # + - standard_name: Faox_lwup + alias: lwup_flx_ocn + canonical_units: W m-2 + description: mediator export - long wave radiation flux over the ocean + # + - standard_name: Faox_taux + alias: stress_on_air_ocn_zonal + canonical_units: N m-2 + description: mediator export + # + - standard_name: Faox_tauy + alias: stress_on_air_ocn_merid + canonical_units: N m-2 + description: mediator export + # + #----------------------------------- + # section: atmosphere fields that need to be defined but are not used + #----------------------------------- + # + - standard_name: mean_prec_rate + canonical_units: kg m-2 s-1 + - standard_name: mean_fprec_rate + canonical_units: kg m-2 s-1 + - standard_name: mean_prec_rate_conv + canonical_units: kg m-2 s-1 + - standard_name: mean_down_lw_flx + canonical_units: W m-2 + - standard_name: inst_net_lw_flx + canonical_units: W m-2 + - standard_name: mean_down_sw_flx + canonical_units: W m-2 + - standard_name: mean_net_sw_flx + canonical_units: W m-2 + - standard_name: inst_net_sw_ir_dir_flx + canonical_units: W m-2 + - standard_name: inst_net_sw_ir_dif_flx + canonical_units: W m-2 + - standard_name: inst_net_sw_vis_dir_flx + canonical_units: W m-2 + - standard_name: inst_net_sw_vis_dif_flx + canonical_units: W m-2 + - standard_name: mean_down_sw_ir_dif_flx + canonical_units: W m-2 + - standard_name: mean_down_sw_ir_dir_flx + canonical_units: W m-2 + - standard_name: mean_down_sw_vis_dif_flx + canonical_units: W m-2 + - standard_name: mean_down_sw_vis_dir_flx + canonical_units: W m-2 + - standard_name: inst_surface_height + canonical_units: m + - standard_name: mean_zonal_moment_flx_atm + canonical_units: N m-2 + - standard_name: mean_merid_moment_flx_atm + canonical_units: N m-2 + - standard_name: inst_zonal_moment_flx_atm + canonical_units: N m-2 + - standard_name: inst_merid_moment_flx_atm + canonical_units: N m-2 + - standard_name: inst_sensi_heat_flx + canonical_units: N m-2 + - standard_name: inst_laten_heat_flx + canonical_units: N m-2 + - standard_name: inst_evap_rate + canonical_units: kg m-2 s-1 + - standard_name: inst_tracer_mass_frac + canonical_units: 1 + - standard_name: inst_tracer_up_surface_flx + canonical_units: kg m-2 s-1 + - standard_name: inst_tracer_down_surface_flx + canonical_units: kg m-2 s-1 + - standard_name: inst_tracer_clmn_mass_dens + canonical_units: g m-2 + - standard_name: inst_tracer_anth_biom_flx + canonical_units: ug m-2 s-1 + description: atmosphere export + - standard_name: inst_pres_interface + canonical_units: Pa + - standard_name: inst_pres_levels + canonical_units: Pa + - standard_name: inst_geop_interface + canonical_units: tbd + - standard_name: inst_geop_levels + canonical_units: tbd + - standard_name: inst_temp_interface + canonical_units: K + - standard_name: inst_temp_levels + canonical_units: K + - standard_name: inst_zonal_wind_levels + canonical_units: m s-1 + - standard_name: inst_merid_wind_levels + canonical_units: m s-1 + - standard_name: inst_omega_levels + canonical_units: tbd + - standard_name: inst_tracer_mass_frac + canonical_units: 1 + - standard_name: inst_soil_moisture_content + canonical_units: tbd + - standard_name: soil_type + canonical_units: tbd + - standard_name: inst_pbl_height + canonical_units: tbd + - standard_name: surface_cell_area + canonical_units: tbd + - standard_name: inst_convective_rainfall_amount + canonical_units: tbd + - standard_name: inst_spec_humid_conv_tendency_levels + canonical_units: tbd + - standard_name: inst_exchange_coefficient_heat_levels + canonical_units: tbd + - standard_name: inst_friction_velocity + canonical_units: tbd + - standard_name: inst_rainfall_amount + canonical_units: tbd + - standard_name: inst_land_sea_mask + canonical_units: tbd + - standard_name: inst_temp_height_surface + canonical_units: tbd + - standard_name: inst_up_sensi_heat_flx + canonical_units: tbd + - standard_name: inst_lwe_snow_thickness + canonical_units: tbd + - standard_name: vegetation_type + canonical_units: tbd + - standard_name: inst_vegetation_area_frac + canonical_units: tbd + - standard_name: inst_surface_roughness + canonical_units: tbd + - standard_name: inst_laten_heat_flx + canonical_units: W m-2 + - standard_name: inst_sensi_heat_flx + canonical_units: W m-2 + - standard_name: land_mask + canonical_units: 1 + - standard_name: inst_cloud_frac_levels + canonical_units: 1 + - standard_name: inst_ice_nonconv_tendency_levels + canonical_units: kg m-2 s-1 + - standard_name: inst_liq_nonconv_tendency_levels + canonical_units: kg m-2 s-1 + - standard_name: inst_surface_soil_wetness + canonical_units: 1 + - standard_name: lake_fraction + canonical_units: 1 + - standard_name: ice_fraction_in_atm + alias: sea_ice_area_fraction + canonical_units: 1 + - standard_name: ocean_fraction + canonical_units: 1 + - standard_name: surface_snow_area_fraction + canonical_units: 1 + # + #----------------------------------- + # WW3 import + #----------------------------------- + # + - standard_name: sea_surface_height_above_sea_level + canonical_units: m + description: ww3 import + # + - standard_name: sea_surface_salinity + alias: s_surf + canonical_units: g kg-1 + description: ww3 import + # + - standard_name: surface_eastward_sea_water_velocity + alias: ocn_current_zonal + canonical_units: m s-1 + description: ww3 import + # + - standard_name: surface_northward_sea_water_velocity + alias: ocn_current_merid + canonical_units: m s-1 + description: ww3 import + # + - standard_name: eastward_wind_at_10m_height + alias: inst_zonal_wind_height10m + canonical_units: m s-1 + description: ww3 import + # + - standard_name: northward_wind_at_10m_height + alias: inst_merid_wind_height10m + canonical_units: m s-1 + description: ww3 import + # + - standard_name: sea_ice_concentration + alias: ice_fraction + canonical_units: 1 + description: ww3 import + # + #----------------------------------- + # WW3 export + #----------------------------------- + # + - standard_name: Sw_z0 + alias: wave_z0_roughness_length + canonical_units: 1 + description: ww3 export + - standard_name: Sw_z0 + alias: z0rlen + # + - standard_name: Sw_pstokes_x + alias: eastward_partitioned_stokes_drift_current + canonical_units: m s-1 + description: ww3 export partitioned drift components using ungridded dimension + # + - standard_name: Sw_pstokes_y + alias: northward_partitioned_stokes_drift_current + canonical_units: m s-1 + description: ww3 export partitioned drift components using ungridded dimension + # + - standard_name: Sw_elevation_spectrum + alias: wave_elevation_spectrum + canonical_units: m2/s + description: wave elevation spectrum + # + # remaining fields are unused but required to be present + # + - standard_name: Sw_ch + alias: wave_induced_charnock_parameter + canonical_units: 1 + description: ww3 export + - standard_name: Sw_ch + alias: charno + # + - standard_name: eastward_stokes_drift_current + alias: uscurr + canonical_units: m s-1 + description: ww3 export spectrum of drift components + # + - standard_name: northward_stokes_drift_current + alias: vscurr + canonical_units: m s-1 + description: ww3 export spectrum of drift components + # + - standard_name: Sw_ustokes + alias: eastward_surface_stokes_drift_current + canonical_units: m s-1 + description: ww3 export surface drift components + - standard_name: Sw_ustokes + alias: ussx + # + - standard_name: Sw_vstokes + alias: northward_surface_stokes_drift_current + canonical_units: m s-1 + description: ww3 export using surface drift components + - standard_name: Sw_vstokes + alias: ussy + # + - standard_name: Sw_wbcuru + alias: eastward_wave_bottom_current + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_wbcuru + alias: wbcuru + # + - standard_name: Sw_wbcurv + alias: northward_wave_bottom_current + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_wbcurv + alias: wbcurv + # + - standard_name: Sw_wbcurp + alias: wave_bottom_current_period + canonical_units: s + description: ww3 export + - standard_name: Sw_wbcurp + alias: wbcurp + # + - standard_name: Sw_wavsuu + alias: eastward_wave_radiation_stress + canonical_units: N m-1 + description: ww3 export + - standard_name: Sw_wavsuu + alias: wavsuu + # + - standard_name: Sw_wavsuv + alias: eastward_northward_wave_radiation_stress + canonical_units: N m-1 + description: ww3 export + - standard_name: Sw_wavsuv + alias: wavsuv + # + - standard_name: Sw_wavsvv + alias: northward_wave_radiation_stress + canonical_units: Pa + description: ww3 export + - standard_name: Sw_wavsvv + alias: wavsvv + # + - standard_name: Sw_ustokes1 + alias: eastward_partitioned_stokes_drift_1 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_ustokes1 + alias: x1pstk + # + - standard_name: Sw_ustokes2 + alias: eastward_partitioned_stokes_drift_2 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_ustokes2 + alias: x2pstk + # + - standard_name: Sw_ustokes3 + alias: eastward_partitioned_stokes_drift_3 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_ustokes3 + alias: x3pstk + # + - standard_name: Sw_vstokes1 + alias: northward_partitioned_stokes_drift_1 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_vstokes1 + alias: y1pstk + # + - standard_name: Sw_vstokes2 + alias: northward_partitioned_stokes_drift_2 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_vstokes2 + alias: y2pstk + # + - standard_name: Sw_vstokes3 + alias: northward_partitioned_stokes_drift_3 + canonical_units: m s-1 + description: ww3 export + - standard_name: Sw_vstokes3 + alias: y3pstk + # + #----------------------------------- + # section: FV3 atm export/import to/from JEDI + #----------------------------------- + # + - standard_name: u + canonical_units: m s-1 + alias: u_component_of_native_D_grid_wind + # + - standard_name: v + canonical_units: m s-1 + alias: v_component_of_native_D_grid_wind + # + - standard_name: ua + canonical_units: m s-1 + alias: eastward_wind + # + - standard_name: va + canonical_units: m s-1 + alias: northward_wind + # + - standard_name: t + canonical_units: K + alias: air_temperature + # + - standard_name: delp + canonical_units: Pa + alias: air_pressure_thickness + # + - standard_name: ps + canonical_units: Pa + alias: surface_pressure + # + - standard_name: sphum + canonical_units: kg kg-1 + alias: specific_humidity + # + - standard_name: ice_wat + canonical_units: kg kg-1 + alias: cloud_liquid_ice + # + - standard_name: liq_wat + canonical_units: kg kg-1 + alias: cloud_liquid_water + # + - standard_name: rainwat + canonical_units: kg kg-1 + alias: rain_water + # + - standard_name: snowwat + canonical_units: kg kg-1 + alias: snow_water + # + - standard_name: graupel + canonical_units: kg kg-1 + alias: graupel + # + - standard_name: o3mr + canonical_units: kg kg-1 + alias: ozone_mass_mixing_ratio + # + - standard_name: phis + canonical_units: m2 s-2 + alias: sfc_geopotential_height_times_grav + # + - standard_name: u_srf + canonical_units: m s-1 + alias: surface_eastward_wind + # + - standard_name: v_srf + canonical_units: m s-1 + alias: surface_northward_wind + # + # + - standard_name: t2m + canonical_units: K + alias: surface_temperature + # + - standard_name: slmsk + canonical_units: flag + description: landmask sea/land/ice=0/1/2 + # + - standard_name: weasd + canonical_units: mm + description: water equiv of acc snow depth over land and sea ice + alias: sheleg + # + - standard_name: tsea + canonical_units: K + description: surface skin temperature + # + - standard_name: vtype + canonical_units: index + description: vegetation type + # + - standard_name: stype + canonical_units: index + description: soil type + # + - standard_name: Sa_vfrac + canonical_units: frac + description: areal fractional cover of green vegetation + - standard_name: Sa_vfrac + alias: vfrac + # + - standard_name: stc + canonical_units: K + description: soil temperature content + # + - standard_name: smc + canonical_units: m3 m-3 + description: soil moisture content + # + - standard_name: snwdph + canonical_units: mm + description: snow depth in mm + # + - standard_name: f10m + canonical_units: ratio + description: fm at 10m - Ratio of sigma level 1 wind and 10m wind + # + - standard_name: Sa_zorl + canonical_units: cm + description: composite surface roughness in cm + - standard_name: Sa_zorl + alias: zorl + # + - standard_name: t2m + canonical_units: K + description: two meter temperature + # + #----------------------------------- + # section: land export + #----------------------------------- + # + - standard_name: Sl_lfrac + alias: land_fraction + canonical_units: 1 + description: land export + # + - standard_name: Sl_lfrin + canonical_units: 1 + description: land export + # + - standard_name: Sl_t + canonical_units: K + description: land export + # + - standard_name: inst_tracer_diag_aod + canonical_units: 1 + description: AOD + # + - standard_name: Sl_sfrac + alias: inst_snow_area_fraction_lnd + canonical_units: 1 + description: land export + # + - standard_name: Sl_tref + alias: inst_temp_height2m_lnd + canonical_units: K + description: mediator export to glc - no levation classes + # + - standard_name: Sl_qref + alias: inst_spec_humid_height2m_lnd + canonical_units: kg kg-1 + description: land export + # + - standard_name: Sl_q + alias: inst_spec_humid_lnd + canonical_units: kg kg-1 + description: land export + # + - standard_name: Fall_lat + alias: inst_laten_heat_flx_lnd + canonical_units: kg kg-1 m s-1 + description: land export to atm - atm/lnd latent heat flux + # + - standard_name: Fall_sen + alias: inst_sensi_heat_flx_lnd + canonical_units: K m s-1 + description: land export to atm - atm/lnd sensible heat flux + # + - standard_name: Fall_evap + alias: inst_potential_laten_heat_flx_lnd + canonical_units: W m-2 + description: land export + # + - standard_name: Fall_gflx + alias: inst_upward_heat_flux_lnd + canonical_units: W m-2 + description: land export + # + - standard_name: Fall_roff + alias: inst_runoff_rate_lnd + canonical_units: kg m-2 s-1 + description: land export + # + - standard_name: Fall_soff + alias: inst_subsurface_runoff_rate_lnd + canonical_units: kg m-2 s-1 + description: land export + # + - standard_name: Sl_cmm + alias: inst_drag_wind_speed_for_momentum + canonical_units: m s-1 + description: land export + # + - standard_name: Sl_chh + alias: inst_drag_mass_flux_for_heat_and_moisture + canonical_units: kg m-2 s-1 + description: land export + # + - standard_name: Sl_zvfun + alias: inst_func_of_roughness_length_and_vfrac + canonical_units: 1 + description: land export diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index 1f99a10b..3664eb0a 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -47,6 +47,7 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then cp ${PARMlandda}/templates/template.datm_in datm_in cp ${PARMlandda}/templates/template.datm.streams datm.streams cp ${PARMlandda}/templates/template.noahmptable.tbl noahmptable.tbl + cp ${PARMlandda}/templates/template.fd_ufs.yaml fd_ufs.yaml # Set model_configure cp ${PARMlandda}/templates/template.model_configure model_configure @@ -57,22 +58,12 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then sed -i -e "s/XXFCSTHR/${FCSTHR}/g" model_configure # set diag table - if [[ "Q${DIAG_TABLE:-}" != Q ]] ; then - cp ${PARMlandda}/templates/template.diag_table diag_table - sed -i -e "s/XXYYYYMMDD/${YYYYMMDD}/g" diag_table - sed -i -e "s/XXYYYY/${YYYY}/g" diag_table - sed -i -e "s/XXMM/${MM}/g" diag_table - sed -i -e "s/XXDD/${DD}/g" diag_table - sed -i -e "s/XXHH/${HH}/g" diag_table - fi - - # Field table - if [[ "Q${FIELD_TABLE:-}" != Q ]] ; then - cp ${PATHRT}/parm/field_table/${FIELD_TABLE} field_table - fi - - # Field Dictionary - cp ${PATHRT}/parm/fd_ufs.yaml fd_ufs.yaml + cp ${PARMlandda}/templates/template.diag_table diag_table + sed -i -e "s/XXYYYYMMDD/${YYYYMMDD}/g" diag_table + sed -i -e "s/XXYYYY/${YYYY}/g" diag_table + sed -i -e "s/XXMM/${MM}/g" diag_table + sed -i -e "s/XXDD/${DD}/g" diag_table + sed -i -e "s/XXHH/${HH}/g" diag_table # Set up the run directory mkdir -p RESTART INPUT From 2c229342d7761145f5c61402784266631b7ea18b Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Wed, 26 Jun 2024 13:16:29 -0500 Subject: [PATCH 07/18] fix missing changes --- parm/land_analysis_hera.yaml | 4 +++- parm/land_analysis_orion.yaml | 4 +++- scripts/exlandda_analysis.sh | 4 ++-- scripts/exlandda_forecast.sh | 6 ++---- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/parm/land_analysis_hera.yaml b/parm/land_analysis_hera.yaml index 0ff505f6..27de9212 100644 --- a/parm/land_analysis_hera.yaml +++ b/parm/land_analysis_hera.yaml @@ -143,7 +143,7 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" SNOWDEPTHVAR: "&SNOWDEPTHVAR;" - NPROC_JEDI: "&NPROCS_ANALYSIS;" + NPROCS_ANALYSIS: "&NPROCS_ANALYSIS;" JEDI_INSTALL: "&JEDI_INSTALL;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "analysis" "&HOMElandda;" "&MACHINE;"' @@ -227,6 +227,7 @@ workflow: ACCOUNT: "&ACCOUNT;" EXP_NAME: "&EXP_NAME;" ATMOS_FORC: "&FORCING;" + RES: "&RES;" WARMSTART_DIR: "&WARMSTART_DIR;" model_ver: "&model_ver;" HOMElandda: "&HOMElandda;" @@ -238,6 +239,7 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" FCSTHR: "&FCSTHR;" + NPROCS_FORECAST: "&NPROCS_FORECAST;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "forecast" "&HOMElandda;" "&MACHINE;"' jobname: forecast diff --git a/parm/land_analysis_orion.yaml b/parm/land_analysis_orion.yaml index 3be2ffe4..bf1ea44f 100644 --- a/parm/land_analysis_orion.yaml +++ b/parm/land_analysis_orion.yaml @@ -143,7 +143,7 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" SNOWDEPTHVAR: "&SNOWDEPTHVAR;" - NPROC_JEDI: "&NPROCS_ANALYSIS;" + NPROCS_ANALYSIS: "&NPROCS_ANALYSIS;" JEDI_INSTALL: "&JEDI_INSTALL;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "analysis" "&HOMElandda;" "&MACHINE;"' @@ -227,6 +227,7 @@ workflow: ACCOUNT: "&ACCOUNT;" EXP_NAME: "&EXP_NAME;" ATMOS_FORC: "&FORCING;" + RES: "&RES;" WARMSTART_DIR: "&WARMSTART_DIR;" model_ver: "&model_ver;" HOMElandda: "&HOMElandda;" @@ -238,6 +239,7 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" FCSTHR: "&FCSTHR;" + NPROCS_FORECAST: "&NPROCS_FORECAST;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "forecast" "&HOMElandda;" "&MACHINE;"' jobname: forecast diff --git a/scripts/exlandda_analysis.sh b/scripts/exlandda_analysis.sh index dca74d70..a66c307c 100755 --- a/scripts/exlandda_analysis.sh +++ b/scripts/exlandda_analysis.sh @@ -182,7 +182,7 @@ echo 'do_landDA: calling fv3-jedi' if [[ $do_DA == "YES" ]]; then export pgm="fv3jedi_letkf.x" . prep_step - ${RUN_CMD} -n $NPROC_JEDI ${JEDI_EXECDIR}/$pgm letkf_land.yaml >>$pgmout 2>errfile + ${RUN_CMD} -n ${NPROCS_ANALYSIS} ${JEDI_EXECDIR}/$pgm letkf_land.yaml >>$pgmout 2>errfile export err=$?; err_chk cp errfile errfile_jedi_letkf if [[ $err != 0 ]]; then @@ -193,7 +193,7 @@ fi if [[ $do_HOFX == "YES" ]]; then export pgm="fv3jedi_letkf.x" . prep_step - ${RUN_CMD} -n $NPROC_JEDI ${JEDI_EXECDIR}/$pgm hofx_land.yaml >>$pgmout 2>errfile + ${RUN_CMD} -n ${NPROCS_ANALYSIS} ${JEDI_EXECDIR}/$pgm hofx_land.yaml >>$pgmout 2>errfile export err=$?; err_chk cp errfile errfile_jedi_hofx if [[ $err != 0 ]]; then diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index 3664eb0a..0fbde085 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -71,8 +71,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then ln -nsf ${FIXlandda}/UFS_WM/DATM_input_data/${ATMOS_FORC}/* . cd - - SUFFIX=${RT_SUFFIX} - # Retrieve input files for restart # NoahMP restart files for itile in {1..6} @@ -127,10 +125,10 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then cd - # start runs - echo "Start ufs-cdeps-land model run with TASKS: ${TASKS}" + echo "Start ufs-cdeps-land model run with TASKS: ${NPROCS_FORECAST}" export pgm="ufs_model" . prep_step - ${RUN_CMD} -n ${TASKS} ${EXEClandda}/$pgm >>$pgmout 2>errfile + ${RUN_CMD} -n ${NPROCS_FORECAST} ${EXEClandda}/$pgm >>$pgmout 2>errfile export err=$?; err_chk cp errfile errfile_ufs_model if [[ $err != 0 ]]; then From 17f5d0d6d408e938c9c9457358dc51353d403669 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 05:45:54 -0500 Subject: [PATCH 08/18] fix typo in path --- scripts/exlandda_forecast.sh | 45 +++++++++++++++--------------------- 1 file changed, 19 insertions(+), 26 deletions(-) diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index 0fbde085..b7583ad7 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -66,12 +66,8 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then sed -i -e "s/XXHH/${HH}/g" diag_table # Set up the run directory - mkdir -p RESTART INPUT - cd INPUT - ln -nsf ${FIXlandda}/UFS_WM/DATM_input_data/${ATMOS_FORC}/* . - cd - + mkdir -p RESTART - # Retrieve input files for restart # NoahMP restart files for itile in {1..6} do @@ -100,28 +96,25 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then fi ls -1 "RESTART/${rfile2}">rpointer.atm + mkdir -p INPUT cd INPUT - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile1.nc C${RES}.initial.tile1.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile2.nc C${RES}.initial.tile2.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile3.nc C${RES}.initial.tile3.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile4.nc C${RES}.initial.tile4.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile5.nc C${RES}.initial.tile5.nc - ln -nsf ${FIXlandda}/UFS_WM/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile6.nc C${RES}.initial.tile6.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.maximum_snow_albedo.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.slope_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.soil_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.soil_color.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.substrate_temperature.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.vegetation_greenness.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}.vegetation_type.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile1.nc oro_data.tile1.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile2.nc oro_data.tile2.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile3.nc oro_data.tile3.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile4.nc oro_data.tile4.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile5.nc oro_data.tile5.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile6.nc oro_data.tile6.nc - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiled/C${RES}/C${RES}_grid.tile*.nc . - ln -nsf ${FIXlandda}/UFS_WM/FV3_fix_tiles/C${RES}/grid_spec.nc C${RES}_mosaic.nc + + ln -nsf ${FIXlandda}/DATM_input_data/${ATMOS_FORC}/* . + for itile in {1..6} + do + ln -nsf ${FIXlandda}/NOAHMP_IC/ufs-land_C${RES}_init_fields.tile${itile}.nc C${RES}.initial.tile${itile}.nc + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.maximum_snow_albedo.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.slope_type.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.soil_type.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.soil_color.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.substrate_temperature.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.vegetation_greenness.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}.vegetation_type.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/oro_C${RES}.mx100.tile${itile}.nc oro_data.tile${itile}.nc + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}_grid.tile${itile}.nc . + ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/grid_spec.nc C${RES}_mosaic.nc + done + cd - # start runs From 210d891db804f7911f905bfa95a096b29057f144 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 05:49:07 -0500 Subject: [PATCH 09/18] fix typo in template --- parm/templates/template.vector2tile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/templates/template.vector2tile b/parm/templates/template.vector2tile index f9e9f685..8532e5f0 100644 --- a/parm/templates/template.vector2tile +++ b/parm/templates/template.vector2tile @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/FV3_fix_tiled/C${RES}/" + tile_path = "FIXlandda/FV3_fix_tiled/XXRES/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- From 405df8e78b2bdfa4d782485c61a4ec7cd429fe8c Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 05:50:37 -0500 Subject: [PATCH 10/18] fix typo --- parm/templates/template.vector2tile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/templates/template.vector2tile b/parm/templates/template.vector2tile index 8532e5f0..25430d49 100644 --- a/parm/templates/template.vector2tile +++ b/parm/templates/template.vector2tile @@ -9,7 +9,7 @@ ! FV3 resolution and path to oro files for restart/perturbation conversion tile_size = XXRES - tile_path = "FIXlandda/FV3_fix_tiled/XXRES/" + tile_path = "FIXlandda/FV3_fix_tiled/CXXRES/" tile_fstub = "XXTSTUB" !------------------- only restart conversion ------------------- From 87bdf79a1f6667c32b43d7fa84eb5752d5b539e5 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 06:44:21 -0500 Subject: [PATCH 11/18] change back uwm hash --- sorc/ufs_model.fd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/ufs_model.fd b/sorc/ufs_model.fd index e784814d..24f5a415 160000 --- a/sorc/ufs_model.fd +++ b/sorc/ufs_model.fd @@ -1 +1 @@ -Subproject commit e784814dfce3fb01e82be6d3949f9811860041d7 +Subproject commit 24f5a415173e625606a65b90163464adcf2770c6 From 95052a58f6e6d2bb60d85ffc3bb9fd074c595720 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 09:53:52 -0500 Subject: [PATCH 12/18] update forecast script --- parm/datm_cdeps_lnd_gswp3_rst | 62 ++++++++++++++ parm/templates/template.datm.streams | 4 +- parm/templates/template.fd_ufs.yaml | 119 ++++---------------------- parm/templates/template.ufs.configure | 1 - scripts/exlandda_forecast.sh | 25 +++++- 5 files changed, 103 insertions(+), 108 deletions(-) create mode 100644 parm/datm_cdeps_lnd_gswp3_rst diff --git a/parm/datm_cdeps_lnd_gswp3_rst b/parm/datm_cdeps_lnd_gswp3_rst new file mode 100644 index 00000000..aeeeb00e --- /dev/null +++ b/parm/datm_cdeps_lnd_gswp3_rst @@ -0,0 +1,62 @@ +# +# DATM_CDEPS_NOAHMP_GSWP test +# + +export TEST_DESCR="DATM_CDEPS_NOAHMP_GSWP3_RST - control restart" + +export CNTL_DIR="datm_cdeps_lnd_gswp3" + +export LIST_FILES="ufs.cpld.lnd.out.2000-01-02-00000.tile1.nc \ + ufs.cpld.lnd.out.2000-01-02-00000.tile2.nc \ + ufs.cpld.lnd.out.2000-01-02-00000.tile3.nc \ + ufs.cpld.lnd.out.2000-01-02-00000.tile4.nc \ + ufs.cpld.lnd.out.2000-01-02-00000.tile5.nc \ + ufs.cpld.lnd.out.2000-01-02-00000.tile6.nc" + +export_datm_cdeps + +export SYEAR=2000 +export SMONTH=01 +export SDAY=03 +export SHOUR=00 +export FHMAX=24 +export FHROT=0 + +export DATM_IN_CONFIGURE=datm_in.IN +export MESH_ATM=fv1.9x2.5_141008_ESMFmesh.nc +export atm_datamode=CLMNCEP +export ATM_NX_GLB=144 +export ATM_NY_GLB=96 + +export DATM_STREAM_CONFIGURE=datm.streams.multi.IN +export MESH_ATM_DATA="INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc" +export MESH_ATM_TOPO="INPUT/topodata_0.9x1.SCRIP.210520_ESMFmesh.nc" +export SDATE=1999 +export EDATE=2000 +export DATA_ATM01="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.2000-01.nc\"" +export DATA_ATM02="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.2000-01.nc\"" +export DATA_ATM03="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.2000-01.nc\"" +export DATA_ATM04="\"INPUT/topodata_0.9x1.25_USGS_070110_stream_c151201.nc\"" + +export UFS_CONFIGURE="ufs.configure.atm_lnd.IN" +export med_model="cmeps" +export atm_model="datm" +export lnd_model="noahmp" +export CPLMODE="ufs.nfrac.aoflux" +export RUNTYPE="continue" +export READRESTART=.false. +export ATM_compute_tasks=144 +export OCN_tasks=0 +export ICE_tasks=0 +export LND_tasks=144 +export lnd_ic_type='custom' +export CALC_SNET=.true. +export layout_x=3 +export layout_y=8 +export mosaic_file="INPUT/C96_mosaic.nc" +export coupling_interval_sec=3600 +export TOPOEDITS="" +export WARM_START=.true. + +export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%05d" $(( (${FHROT}+ ${SHOUR})*3600 )))" +export FV3_RUN="lnd_datm_cdeps_gswp.IN noahmp_run.IN" diff --git a/parm/templates/template.datm.streams b/parm/templates/template.datm.streams index feeacb26..6ab531f7 100644 --- a/parm/templates/template.datm.streams +++ b/parm/templates/template.datm.streams @@ -6,7 +6,7 @@ tInterpAlgo01: coszen readMode01: single dtlimit01: 1.5 stream_offset01: 0 -yearFirst01: 1999 +yearFirst01: 1999 yearLast01: 2000 yearAlign01: 1999 stream_vectors01: null @@ -32,7 +32,7 @@ stream_data_variables02: "PRECTmms Faxa_precn" taxmode03: limit mapalgo03: bilinear -tInterpAlgo03: linear +tInterpAlgo03: linear readMode03: single dtlimit03: 1.5 stream_offset03: 0 diff --git a/parm/templates/template.fd_ufs.yaml b/parm/templates/template.fd_ufs.yaml index c0189f0b..5c1e88b2 100644 --- a/parm/templates/template.fd_ufs.yaml +++ b/parm/templates/template.fd_ufs.yaml @@ -92,7 +92,6 @@ description: atmosphere export # - standard_name: Faxa_rainl - alias: inst_prec_rate_large canonical_units: kg m-2 s-1 description: atmosphere export # @@ -102,12 +101,10 @@ description: atmosphere export # - standard_name: Faxa_snowc - alias: inst_fprec_rate_conv canonical_units: kg m-2 s-1 description: atmosphere export # - standard_name: Faxa_snowl - alias: inst_fprec_rate_large canonical_units: kg m-2 s-1 description: atmosphere export # @@ -197,6 +194,16 @@ canonical_units: m s-1 description: atmosphere export - bottom layer meridional wind # + - standard_name: Sa_ua + alias: inst_zonal_wind_height_lowest_from_phys + canonical_units: m s-1 + description: atmosphere export - bottom layer zonal wind + # + - standard_name: Sa_va + alias: inst_merid_wind_height_lowest_from_phys + canonical_units: m s-1 + description: atmosphere export - bottom layer meridional wind + # - standard_name: Sa_wspd alias: inst_wind_speed_height_lowest canonical_units: m s-1 @@ -1055,76 +1062,43 @@ # - standard_name: u canonical_units: m s-1 - alias: u_component_of_native_D_grid_wind # - standard_name: v canonical_units: m s-1 - alias: v_component_of_native_D_grid_wind # - standard_name: ua canonical_units: m s-1 - alias: eastward_wind # - standard_name: va canonical_units: m s-1 - alias: northward_wind # - standard_name: t canonical_units: K - alias: air_temperature # - standard_name: delp canonical_units: Pa - alias: air_pressure_thickness - # - - standard_name: ps - canonical_units: Pa - alias: surface_pressure # - standard_name: sphum canonical_units: kg kg-1 - alias: specific_humidity # - standard_name: ice_wat canonical_units: kg kg-1 - alias: cloud_liquid_ice # - standard_name: liq_wat canonical_units: kg kg-1 - alias: cloud_liquid_water - # - - standard_name: rainwat - canonical_units: kg kg-1 - alias: rain_water - # - - standard_name: snowwat - canonical_units: kg kg-1 - alias: snow_water - # - - standard_name: graupel - canonical_units: kg kg-1 - alias: graupel # - standard_name: o3mr canonical_units: kg kg-1 - alias: ozone_mass_mixing_ratio # - standard_name: phis canonical_units: m2 s-2 - alias: sfc_geopotential_height_times_grav # - standard_name: u_srf canonical_units: m s-1 - alias: surface_eastward_wind # - standard_name: v_srf canonical_units: m s-1 - alias: surface_northward_wind - # # - - standard_name: t2m - canonical_units: K - alias: surface_temperature # - standard_name: slmsk canonical_units: flag @@ -1133,7 +1107,6 @@ - standard_name: weasd canonical_units: mm description: water equiv of acc snow depth over land and sea ice - alias: sheleg # - standard_name: tsea canonical_units: K @@ -1147,11 +1120,9 @@ canonical_units: index description: soil type # - - standard_name: Sa_vfrac + - standard_name: vfrac canonical_units: frac description: areal fractional cover of green vegetation - - standard_name: Sa_vfrac - alias: vfrac # - standard_name: stc canonical_units: K @@ -1169,11 +1140,9 @@ canonical_units: ratio description: fm at 10m - Ratio of sigma level 1 wind and 10m wind # - - standard_name: Sa_zorl + - standard_name: zorl canonical_units: cm description: composite surface roughness in cm - - standard_name: Sa_zorl - alias: zorl # - standard_name: t2m canonical_units: K @@ -1184,7 +1153,6 @@ #----------------------------------- # - standard_name: Sl_lfrac - alias: land_fraction canonical_units: 1 description: land export # @@ -1200,67 +1168,12 @@ canonical_units: 1 description: AOD # - - standard_name: Sl_sfrac - alias: inst_snow_area_fraction_lnd - canonical_units: 1 - description: land export - # - - standard_name: Sl_tref - alias: inst_temp_height2m_lnd - canonical_units: K - description: mediator export to glc - no levation classes - # - - standard_name: Sl_qref - alias: inst_spec_humid_height2m_lnd - canonical_units: kg kg-1 - description: land export - # - - standard_name: Sl_q - alias: inst_spec_humid_lnd - canonical_units: kg kg-1 - description: land export - # - standard_name: Fall_lat - alias: inst_laten_heat_flx_lnd - canonical_units: kg kg-1 m s-1 + alias: mean_laten_heat_flx_lnd_to_atm + canonical_units: W m-2 description: land export to atm - atm/lnd latent heat flux # - standard_name: Fall_sen - alias: inst_sensi_heat_flx_lnd - canonical_units: K m s-1 - description: land export to atm - atm/lnd sensible heat flux - # - - standard_name: Fall_evap - alias: inst_potential_laten_heat_flx_lnd + alias: mean_sensi_heat_flx_lnd_to_atm canonical_units: W m-2 - description: land export - # - - standard_name: Fall_gflx - alias: inst_upward_heat_flux_lnd - canonical_units: W m-2 - description: land export - # - - standard_name: Fall_roff - alias: inst_runoff_rate_lnd - canonical_units: kg m-2 s-1 - description: land export - # - - standard_name: Fall_soff - alias: inst_subsurface_runoff_rate_lnd - canonical_units: kg m-2 s-1 - description: land export - # - - standard_name: Sl_cmm - alias: inst_drag_wind_speed_for_momentum - canonical_units: m s-1 - description: land export - # - - standard_name: Sl_chh - alias: inst_drag_mass_flux_for_heat_and_moisture - canonical_units: kg m-2 s-1 - description: land export - # - - standard_name: Sl_zvfun - alias: inst_func_of_roughness_length_and_vfrac - canonical_units: 1 - description: land export + description: land export to atm - atm/lnd sensible heat flux diff --git a/parm/templates/template.ufs.configure b/parm/templates/template.ufs.configure index 362ad5f2..e9894a1f 100644 --- a/parm/templates/template.ufs.configure +++ b/parm/templates/template.ufs.configure @@ -122,4 +122,3 @@ ALLCOMP_attributes:: orb_mvelp = 1.e36 orb_obliq = 1.e36 :: - diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index b7583ad7..007c247a 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -35,6 +35,29 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then echo '************************************************' echo 'running the forecast model' + TEST_NAME=datm_cdeps_lnd_gswp3 + TEST_NAME_RST=datm_cdeps_lnd_gswp3_rst + PATHRT=${HOMElandda}/sorc/ufs_model.fd/tests + RT_COMPILER=${RT_COMPILER:-intel} + ATOL="1e-7" + + cp $PARMlandda/$TEST_NAME_RST ${PATHRT}/tests/$TEST_NAME_RST + source ${PATHRT}/rt_utils.sh + source ${PATHRT}/default_vars.sh + source ${PATHRT}/tests/$TEST_NAME_RST + source ${PATHRT}/atparse.bash + +# RTPWD=${RTPWD:-${FIXlandda}/test_base/${TEST_NAME}_intel} +# INPUTDATA_ROOT=${INPUTDATA_ROOT:-${FIXlandda}/UFS_WM} + +# echo "RTPWD= $RTPWD" +# echo "INPUTDATA_ROOT= $INPUTDATA_ROOT" + +# if [[ ! -d ${INPUTDATA_ROOT} ]] || [[ ! -d ${RTPWD} ]]; then +# echo "Error: cannot find either folder for INPUTDATA_ROOT or RTPWD, please check!" +# exit 1 +# fi + # modify some env variables - reduce core usage export ATM_compute_tasks=0 export ATM_io_tasks=1 @@ -98,7 +121,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then mkdir -p INPUT cd INPUT - ln -nsf ${FIXlandda}/DATM_input_data/${ATMOS_FORC}/* . for itile in {1..6} do @@ -114,7 +136,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/C${RES}_grid.tile${itile}.nc . ln -nsf ${FIXlandda}/FV3_fix_tiled/C${RES}/grid_spec.nc C${RES}_mosaic.nc done - cd - # start runs From d3da708f7ab438d61437da422bf6bfd15f0a6eaa Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 10:24:08 -0500 Subject: [PATCH 13/18] update script and remove unnecessary file --- parm/datm_cdeps_lnd_gswp3_rst | 62 ----------------------------------- scripts/exlandda_forecast.sh | 19 ----------- 2 files changed, 81 deletions(-) delete mode 100644 parm/datm_cdeps_lnd_gswp3_rst diff --git a/parm/datm_cdeps_lnd_gswp3_rst b/parm/datm_cdeps_lnd_gswp3_rst deleted file mode 100644 index aeeeb00e..00000000 --- a/parm/datm_cdeps_lnd_gswp3_rst +++ /dev/null @@ -1,62 +0,0 @@ -# -# DATM_CDEPS_NOAHMP_GSWP test -# - -export TEST_DESCR="DATM_CDEPS_NOAHMP_GSWP3_RST - control restart" - -export CNTL_DIR="datm_cdeps_lnd_gswp3" - -export LIST_FILES="ufs.cpld.lnd.out.2000-01-02-00000.tile1.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile2.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile3.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile4.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile5.nc \ - ufs.cpld.lnd.out.2000-01-02-00000.tile6.nc" - -export_datm_cdeps - -export SYEAR=2000 -export SMONTH=01 -export SDAY=03 -export SHOUR=00 -export FHMAX=24 -export FHROT=0 - -export DATM_IN_CONFIGURE=datm_in.IN -export MESH_ATM=fv1.9x2.5_141008_ESMFmesh.nc -export atm_datamode=CLMNCEP -export ATM_NX_GLB=144 -export ATM_NY_GLB=96 - -export DATM_STREAM_CONFIGURE=datm.streams.multi.IN -export MESH_ATM_DATA="INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.SCRIP.210520_ESMFmesh.nc" -export MESH_ATM_TOPO="INPUT/topodata_0.9x1.SCRIP.210520_ESMFmesh.nc" -export SDATE=1999 -export EDATE=2000 -export DATA_ATM01="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Solr.2000-01.nc\"" -export DATA_ATM02="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.Prec.2000-01.nc\"" -export DATA_ATM03="\"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.1999-12.nc\" \"INPUT/clmforc.GSWP3.c2011.0.5x0.5.TPQWL.2000-01.nc\"" -export DATA_ATM04="\"INPUT/topodata_0.9x1.25_USGS_070110_stream_c151201.nc\"" - -export UFS_CONFIGURE="ufs.configure.atm_lnd.IN" -export med_model="cmeps" -export atm_model="datm" -export lnd_model="noahmp" -export CPLMODE="ufs.nfrac.aoflux" -export RUNTYPE="continue" -export READRESTART=.false. -export ATM_compute_tasks=144 -export OCN_tasks=0 -export ICE_tasks=0 -export LND_tasks=144 -export lnd_ic_type='custom' -export CALC_SNET=.true. -export layout_x=3 -export layout_y=8 -export mosaic_file="INPUT/C96_mosaic.nc" -export coupling_interval_sec=3600 -export TOPOEDITS="" -export WARM_START=.true. - -export RESTART_FILE_SUFFIX_SECS="${SYEAR}-${SMONTH}-${SDAY}-$(printf "%05d" $(( (${FHROT}+ ${SHOUR})*3600 )))" -export FV3_RUN="lnd_datm_cdeps_gswp.IN noahmp_run.IN" diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index 007c247a..ea742797 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -35,28 +35,9 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then echo '************************************************' echo 'running the forecast model' - TEST_NAME=datm_cdeps_lnd_gswp3 - TEST_NAME_RST=datm_cdeps_lnd_gswp3_rst PATHRT=${HOMElandda}/sorc/ufs_model.fd/tests - RT_COMPILER=${RT_COMPILER:-intel} - ATOL="1e-7" - - cp $PARMlandda/$TEST_NAME_RST ${PATHRT}/tests/$TEST_NAME_RST source ${PATHRT}/rt_utils.sh source ${PATHRT}/default_vars.sh - source ${PATHRT}/tests/$TEST_NAME_RST - source ${PATHRT}/atparse.bash - -# RTPWD=${RTPWD:-${FIXlandda}/test_base/${TEST_NAME}_intel} -# INPUTDATA_ROOT=${INPUTDATA_ROOT:-${FIXlandda}/UFS_WM} - -# echo "RTPWD= $RTPWD" -# echo "INPUTDATA_ROOT= $INPUTDATA_ROOT" - -# if [[ ! -d ${INPUTDATA_ROOT} ]] || [[ ! -d ${RTPWD} ]]; then -# echo "Error: cannot find either folder for INPUTDATA_ROOT or RTPWD, please check!" -# exit 1 -# fi # modify some env variables - reduce core usage export ATM_compute_tasks=0 From 0f1606394a6d5223711bc0c0baba664057131791 Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 10:36:02 -0500 Subject: [PATCH 14/18] clean up script --- scripts/exlandda_forecast.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index ea742797..c6a56d00 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -2,8 +2,6 @@ set -xue -MACHINE_ID=${MACHINE} - YYYY=${PDY:0:4} MM=${PDY:4:2} DD=${PDY:6:2} @@ -35,10 +33,6 @@ if [[ ${ATMOS_FORC} == "gswp3" ]]; then echo '************************************************' echo 'running the forecast model' - PATHRT=${HOMElandda}/sorc/ufs_model.fd/tests - source ${PATHRT}/rt_utils.sh - source ${PATHRT}/default_vars.sh - # modify some env variables - reduce core usage export ATM_compute_tasks=0 export ATM_io_tasks=1 From ec5361654bacfe3ec6036b1a03c919857c89ce70 Mon Sep 17 00:00:00 2001 From: "Chan-hoo.Jeon" Date: Thu, 27 Jun 2024 17:27:14 +0000 Subject: [PATCH 15/18] update path for ctest --- sorc/test/retrieve_data.sh | 22 +++++++++++----------- sorc/test/run_ufs_datm_lnd.sh | 10 +++++++++- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/sorc/test/retrieve_data.sh b/sorc/test/retrieve_data.sh index b45b028c..68ad5026 100755 --- a/sorc/test/retrieve_data.sh +++ b/sorc/test/retrieve_data.sh @@ -23,7 +23,7 @@ export PATH=${HOME}/.local/bin:${PATH} # set envs DATA_ROOT=${project_source_dir}/../fix -INPUTDATA_ROOT=${DATA_ROOT}/UFS_WM +INPUTDATA_ROOT=${DATA_ROOT} [[ ! -d ${INPUTDATA_ROOT} ]] && mkdir -p ${INPUTDATA_ROOT} RTPWD=${DATA_ROOT}/test_base @@ -38,11 +38,11 @@ aws s3 sync --no-sign-request ${AWS_URL}/test_base/datm_cdeps_lnd_gswp3_intel . cd ${project_source_dir} # DATM data -DES_DIR=${INPUTDATA_ROOT}/DATM_GSWP3_input_data +DES_DIR=${INPUTDATA_ROOT}/DATM_input_data/gswp3 [[ ! -d ${DES_DIR} ]] && mkdir -p ${DES_DIR} echo ${DES_DIR} cd $DES_DIR -aws s3 sync --no-sign-request ${SRC_DIR}/DATM_GSWP3_input_data . +aws s3 sync --no-sign-request ${SRC_DIR}/DATM_input_data/gswp3 . cd ${project_source_dir} # fixed data @@ -53,17 +53,17 @@ cd $DES_DIR aws s3 sync --no-sign-request ${AWS_URL}/FV3_fix_tiled/C96 . # input data -DES_DIR=${INPUTDATA_ROOT}/FV3_input_data/INPUT +DES_DIR=${INPUTDATA_ROOT}/FV3_fix_tiled/C96 [[ ! -d ${DES_DIR} ]] && mkdir -p ${DES_DIR} echo ${DES_DIR} cd $DES_DIR -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile1.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile2.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile3.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile4.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile5.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/C96_grid.tile6.nc . -aws s3 cp --no-sign-request ${SRC_DIR}/FV3_input_data/INPUT/grid_spec.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile1.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile2.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile3.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile4.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile5.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/C96_grid.tile6.nc . +aws s3 cp --no-sign-request ${SRC_DIR}/FV3_fix_tiled/C96/grid_spec.nc . cd ${project_source_dir} # NOAHMP ICs diff --git a/sorc/test/run_ufs_datm_lnd.sh b/sorc/test/run_ufs_datm_lnd.sh index 7c13afcd..52b35466 100755 --- a/sorc/test/run_ufs_datm_lnd.sh +++ b/sorc/test/run_ufs_datm_lnd.sh @@ -14,7 +14,15 @@ MACHINE_ID=${MACHINE_ID:-hera} TEST_NAME=datm_cdeps_lnd_gswp3 PATHRT=${project_source_dir}/ufs_model.fd/tests FIXdir=${project_source_dir}/../fix -INPUTDATA_ROOT=${FIXdir}/UFS_WM +if [[ "${MACHINE_ID}" == "hera" ]]; then + INPUTDATA_ROOT="/scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +elif [[ "${MACHINE_ID}" == "orion" ]] || [[ "${MACHINE_ID}" == "hercules" ]]; then + INPUTDATA_ROOT="/work/noaa/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +else + echo "WARNING: input data path is not specified for this machine." + INPUTDATA_ROOT=${FIXdir} +fi + RT_COMPILER=${RT_COMPILER:-intel} ATOL="1e-7" source ${PATHRT}/detect_machine.sh From 87554b5e846ea1f86e44a81a5415d5aa47d5303b Mon Sep 17 00:00:00 2001 From: "Chan-hoo.Jeon" Date: Thu, 27 Jun 2024 23:00:39 +0000 Subject: [PATCH 16/18] fix path to orog in ctest --- sorc/test/runtime_vars.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorc/test/runtime_vars.sh b/sorc/test/runtime_vars.sh index 2d7927d5..68710d04 100755 --- a/sorc/test/runtime_vars.sh +++ b/sorc/test/runtime_vars.sh @@ -51,7 +51,7 @@ export PYTHON_EXEC=${PYTHON_EXEC:-`which python`} # configurations export RES=96 export atmos_forc=era5 -export TPATH="$FIXlandda/orog_files/" +export TPATH="$FIXlandda/FV3_fix_tiled/C${RES}/" export TSTUB="oro_C${RES}.mx100" export GFSv17=NO export OBS_TYPES=("GHCN") From 8796c8b52a65f848b2a1ffbcf5403039a9897eed Mon Sep 17 00:00:00 2001 From: Chan-Hoo Jeon Date: Thu, 27 Jun 2024 18:25:10 -0500 Subject: [PATCH 17/18] fix machine detect issue on ctest --- sorc/test/run_ufs_datm_lnd.sh | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/sorc/test/run_ufs_datm_lnd.sh b/sorc/test/run_ufs_datm_lnd.sh index 52b35466..9014859b 100755 --- a/sorc/test/run_ufs_datm_lnd.sh +++ b/sorc/test/run_ufs_datm_lnd.sh @@ -10,18 +10,9 @@ echo ${project_binary_dir} echo ${project_source_dir} # -MACHINE_ID=${MACHINE_ID:-hera} TEST_NAME=datm_cdeps_lnd_gswp3 PATHRT=${project_source_dir}/ufs_model.fd/tests FIXdir=${project_source_dir}/../fix -if [[ "${MACHINE_ID}" == "hera" ]]; then - INPUTDATA_ROOT="/scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" -elif [[ "${MACHINE_ID}" == "orion" ]] || [[ "${MACHINE_ID}" == "hercules" ]]; then - INPUTDATA_ROOT="/work/noaa/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" -else - echo "WARNING: input data path is not specified for this machine." - INPUTDATA_ROOT=${FIXdir} -fi RT_COMPILER=${RT_COMPILER:-intel} ATOL="1e-7" @@ -31,6 +22,16 @@ source ${PATHRT}/default_vars.sh source ${PATHRT}/tests/$TEST_NAME source ${PATHRT}/atparse.bash +MACHINE_ID=${MACHINE_ID:-hera} +if [[ "${MACHINE_ID}" == "hera" ]]; then + INPUTDATA_ROOT="/scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +elif [[ "${MACHINE_ID}" == "orion" ]] || [[ "${MACHINE_ID}" == "hercules" ]]; then + INPUTDATA_ROOT="/work/noaa/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +else + echo "WARNING: input data path is not specified for this machine." + INPUTDATA_ROOT=${FIXdir} +fi + RTPWD=${RTPWD:-$FIXdir/test_base/${TEST_NAME}_${RT_COMPILER}} if [[ ! -d ${RTPWD} ]]; then From 0f34a23d0c5bf950f6a4b58204a9a7bf664421f6 Mon Sep 17 00:00:00 2001 From: "Chan-hoo.Jeon" Date: Thu, 27 Jun 2024 23:40:28 +0000 Subject: [PATCH 18/18] fix machine detect on ctest --- sorc/test/run_ufs_datm_lnd.sh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sorc/test/run_ufs_datm_lnd.sh b/sorc/test/run_ufs_datm_lnd.sh index 9014859b..d417beb7 100755 --- a/sorc/test/run_ufs_datm_lnd.sh +++ b/sorc/test/run_ufs_datm_lnd.sh @@ -14,6 +14,16 @@ TEST_NAME=datm_cdeps_lnd_gswp3 PATHRT=${project_source_dir}/ufs_model.fd/tests FIXdir=${project_source_dir}/../fix +source ${project_source_dir}/../parm/detect_platform.sh +if [[ "${PLATFORM}" == "hera" ]]; then + INPUTDATA_ROOT="/scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +elif [[ "${PLATFORM}" == "orion" ]] || [[ "${PLATFORM}" == "hercules" ]]; then + INPUTDATA_ROOT="/work/noaa/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" +else + echo "WARNING: input data path is not specified for this machine." + INPUTDATA_ROOT=${FIXdir} +fi +MACHINE_ID=${PLATFORM} RT_COMPILER=${RT_COMPILER:-intel} ATOL="1e-7" source ${PATHRT}/detect_machine.sh @@ -22,16 +32,6 @@ source ${PATHRT}/default_vars.sh source ${PATHRT}/tests/$TEST_NAME source ${PATHRT}/atparse.bash -MACHINE_ID=${MACHINE_ID:-hera} -if [[ "${MACHINE_ID}" == "hera" ]]; then - INPUTDATA_ROOT="/scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" -elif [[ "${MACHINE_ID}" == "orion" ]] || [[ "${MACHINE_ID}" == "hercules" ]]; then - INPUTDATA_ROOT="/work/noaa/epic/UFS-WM_RT/NEMSfv3gfs/input-data-20240501" -else - echo "WARNING: input data path is not specified for this machine." - INPUTDATA_ROOT=${FIXdir} -fi - RTPWD=${RTPWD:-$FIXdir/test_base/${TEST_NAME}_${RT_COMPILER}} if [[ ! -d ${RTPWD} ]]; then