diff --git a/modulefiles/build_hera_intel.lua b/modulefiles/build_hera_intel.lua index 4581cc34..a4a9d938 100644 --- a/modulefiles/build_hera_intel.lua +++ b/modulefiles/build_hera_intel.lua @@ -31,6 +31,7 @@ load(pathJoin("sp", sp_ver)) load(pathJoin("w3emc", w3emc_ver)) load(pathJoin("gftl-shared", gftl_shared_ver)) load(pathJoin("mapl", mapl_ver)) +load(pathJoin("scotch", scotch_ver)) load(pathJoin("prod_util", prod_util_ver)) load(pathJoin("ufs-pyenv", ufs_pyenv_ver)) diff --git a/modulefiles/build_hercules_intel.lua b/modulefiles/build_hercules_intel.lua index 1ab618d7..b9bcd753 100644 --- a/modulefiles/build_hercules_intel.lua +++ b/modulefiles/build_hercules_intel.lua @@ -31,6 +31,7 @@ load(pathJoin("sp", sp_ver)) load(pathJoin("w3emc", w3emc_ver)) load(pathJoin("gftl-shared", gftl_shared_ver)) load(pathJoin("mapl", mapl_ver)) +load(pathJoin("scotch", scotch_ver)) load(pathJoin("prod_util", prod_util_ver)) load(pathJoin("ufs-pyenv", ufs_pyenv_ver)) @@ -43,4 +44,4 @@ setenv("FC", "mpiifort") setenv("CMAKE_Platform", "hercules.intel") setenv("EPICHOME", "/work/noaa/epic/UFS_Land-DA_Dev") -setenv("JEDI_INSTALL", "/work2/noaa/epic/UFS_Land-DA_Dev/jedi_v7_hercules") +setenv("JEDI_INSTALL", "/work/noaa/epic/UFS_Land-DA_Dev/jedi_v7_hercules") diff --git a/modulefiles/build_orion_intel.lua b/modulefiles/build_orion_intel.lua index 54e5b2e7..2d95b862 100644 --- a/modulefiles/build_orion_intel.lua +++ b/modulefiles/build_orion_intel.lua @@ -31,6 +31,7 @@ load(pathJoin("sp", sp_ver)) load(pathJoin("w3emc", w3emc_ver)) load(pathJoin("gftl-shared", gftl_shared_ver)) load(pathJoin("mapl", mapl_ver)) +load(pathJoin("scotch", scotch_ver)) load(pathJoin("prod_util", prod_util_ver)) load(pathJoin("ufs-pyenv", ufs_pyenv_ver)) diff --git a/modulefiles/tasks/hera/task.plot_stats.lua b/modulefiles/tasks/hera/task.plot_stats.lua index 92f6efa8..1b1dd4e0 100644 --- a/modulefiles/tasks/hera/task.plot_stats.lua +++ b/modulefiles/tasks/hera/task.plot_stats.lua @@ -1,4 +1,4 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) +prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack_unienv")) load(pathJoin("stack-intel", stack_intel_ver)) load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) diff --git a/modulefiles/tasks/hercules b/modulefiles/tasks/hercules new file mode 120000 index 00000000..aba3ff20 --- /dev/null +++ b/modulefiles/tasks/hercules @@ -0,0 +1 @@ +hera \ No newline at end of file diff --git a/modulefiles/tasks/hercules/task.analysis.lua b/modulefiles/tasks/hercules/task.analysis.lua deleted file mode 100644 index 84d59acd..00000000 --- a/modulefiles/tasks/hercules/task.analysis.lua +++ /dev/null @@ -1,10 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/hercules/task.forecast.lua b/modulefiles/tasks/hercules/task.forecast.lua deleted file mode 100644 index cd767192..00000000 --- a/modulefiles/tasks/hercules/task.forecast.lua +++ /dev/null @@ -1,28 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("jasper", jasper_ver)) -load(pathJoin("zlib", zlib_ver)) -load(pathJoin("libpng", libpng_ver)) -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("parallelio", parallelio_ver)) -load(pathJoin("esmf", esmf_ver)) -load(pathJoin("fms",fms_ver)) -load(pathJoin("bacio", bacio_ver)) -load(pathJoin("crtm", crtm_ver)) -load(pathJoin("g2", g2_ver)) -load(pathJoin("g2tmpl", g2tmpl_ver)) -load(pathJoin("ip", ip_ver)) -load(pathJoin("sp", sp_ver)) -load(pathJoin("w3emc", w3emc_ver)) -load(pathJoin("gftl-shared", gftl_shared_ver)) -load(pathJoin("mapl", mapl_ver)) -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/hercules/task.plot_stats.lua b/modulefiles/tasks/hercules/task.plot_stats.lua deleted file mode 100644 index 92f6efa8..00000000 --- a/modulefiles/tasks/hercules/task.plot_stats.lua +++ /dev/null @@ -1,15 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-cartopy", py_cartopy_ver)) -load(pathJoin("py-matplotlib", py_matplotlib_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) -load(pathJoin("py-pyyaml", py_pyyaml_ver)) -load(pathJoin("py-scipy", py_scipy_ver)) -load(pathJoin("py-xarray", py_xarray_ver)) - diff --git a/modulefiles/tasks/hercules/task.post_anal.lua b/modulefiles/tasks/hercules/task.post_anal.lua deleted file mode 100644 index 3b8b3c7b..00000000 --- a/modulefiles/tasks/hercules/task.post_anal.lua +++ /dev/null @@ -1,13 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/hercules/task.pre_anal.lua b/modulefiles/tasks/hercules/task.pre_anal.lua deleted file mode 100644 index 31afb0c9..00000000 --- a/modulefiles/tasks/hercules/task.pre_anal.lua +++ /dev/null @@ -1,10 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("prod_util", prod_util_ver)) diff --git a/modulefiles/tasks/hercules/task.prep_obs.lua b/modulefiles/tasks/hercules/task.prep_obs.lua deleted file mode 100644 index 4f16978f..00000000 --- a/modulefiles/tasks/hercules/task.prep_obs.lua +++ /dev/null @@ -1,7 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) diff --git a/modulefiles/tasks/orion b/modulefiles/tasks/orion new file mode 120000 index 00000000..aba3ff20 --- /dev/null +++ b/modulefiles/tasks/orion @@ -0,0 +1 @@ +hera \ No newline at end of file diff --git a/modulefiles/tasks/orion/task.analysis.lua b/modulefiles/tasks/orion/task.analysis.lua deleted file mode 100644 index 84d59acd..00000000 --- a/modulefiles/tasks/orion/task.analysis.lua +++ /dev/null @@ -1,10 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/orion/task.forecast.lua b/modulefiles/tasks/orion/task.forecast.lua deleted file mode 100644 index cd767192..00000000 --- a/modulefiles/tasks/orion/task.forecast.lua +++ /dev/null @@ -1,28 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("jasper", jasper_ver)) -load(pathJoin("zlib", zlib_ver)) -load(pathJoin("libpng", libpng_ver)) -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("parallelio", parallelio_ver)) -load(pathJoin("esmf", esmf_ver)) -load(pathJoin("fms",fms_ver)) -load(pathJoin("bacio", bacio_ver)) -load(pathJoin("crtm", crtm_ver)) -load(pathJoin("g2", g2_ver)) -load(pathJoin("g2tmpl", g2tmpl_ver)) -load(pathJoin("ip", ip_ver)) -load(pathJoin("sp", sp_ver)) -load(pathJoin("w3emc", w3emc_ver)) -load(pathJoin("gftl-shared", gftl_shared_ver)) -load(pathJoin("mapl", mapl_ver)) -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/orion/task.plot_stats.lua b/modulefiles/tasks/orion/task.plot_stats.lua deleted file mode 100644 index 92f6efa8..00000000 --- a/modulefiles/tasks/orion/task.plot_stats.lua +++ /dev/null @@ -1,15 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-cartopy", py_cartopy_ver)) -load(pathJoin("py-matplotlib", py_matplotlib_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) -load(pathJoin("py-pyyaml", py_pyyaml_ver)) -load(pathJoin("py-scipy", py_scipy_ver)) -load(pathJoin("py-xarray", py_xarray_ver)) - diff --git a/modulefiles/tasks/orion/task.post_anal.lua b/modulefiles/tasks/orion/task.post_anal.lua deleted file mode 100644 index 3b8b3c7b..00000000 --- a/modulefiles/tasks/orion/task.post_anal.lua +++ /dev/null @@ -1,13 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("prod_util", prod_util_ver)) -load(pathJoin("py-netcdf4", py_netcdf4_ver)) -load(pathJoin("py-numpy", py_numpy_ver)) - diff --git a/modulefiles/tasks/orion/task.pre_anal.lua b/modulefiles/tasks/orion/task.pre_anal.lua deleted file mode 100644 index 31afb0c9..00000000 --- a/modulefiles/tasks/orion/task.pre_anal.lua +++ /dev/null @@ -1,10 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("hdf5", hdf5_ver)) -load(pathJoin("netcdf-c", netcdf_c_ver)) -load(pathJoin("netcdf-fortran", netcdf_fortran_ver)) -load(pathJoin("prod_util", prod_util_ver)) diff --git a/modulefiles/tasks/orion/task.prep_obs.lua b/modulefiles/tasks/orion/task.prep_obs.lua deleted file mode 100644 index 4f16978f..00000000 --- a/modulefiles/tasks/orion/task.prep_obs.lua +++ /dev/null @@ -1,7 +0,0 @@ -prepend_path("MODULEPATH", os.getenv("modulepath_spack_stack")) - -load(pathJoin("stack-intel", stack_intel_ver)) -load(pathJoin("stack-intel-oneapi-mpi", stack_intel_oneapi_mpi_ver)) -load(pathJoin("stack-python", stack_python_ver)) - -load(pathJoin("prod_util", prod_util_ver)) diff --git a/parm/land_analysis_hera.yaml b/parm/land_analysis_hera.yaml index dcebb66c..f9de5635 100644 --- a/parm/land_analysis_hera.yaml +++ b/parm/land_analysis_hera.yaml @@ -17,9 +17,18 @@ workflow: WARMSTART_DIR: "/scratch2/NAGAPE/epic/UFS_Land-DA_Dev/inputs/DATA_RESTART" ATMOS_FORC: "gswp3" RES: "96" - FCSTHR: "24" NPROCS_ANALYSIS: "6" - NPROCS_FORECAST: "7" + FCSTHR: "24" + DT_ATMOS: "900" + DT_RUNSEQ: "3600" + NPROCS_FORECAST: "26" + NPROCS_FORECAST_ATM: "12" + NPROCS_FORECAST_LND: "12" + LND_LAYOUT_X: "1" + LND_LAYOUT_Y: "2" + LND_OUTPUT_FREQ_SEC: "21600" + NNODES_FORECAST: "1" + NPROCS_PER_NODE: "26" OBSDIR: "" OBSDIR_SUBDIR: "" OBS_TYPES: "GHCN" @@ -213,12 +222,21 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" FCSTHR: "&FCSTHR;" - NPROCS_FORECAST: "&NPROCS_FORECAST;" + DT_ATMOS: "&DT_ATMOS;" + DT_RUNSEQ: "&DT_RUNSEQ;" + NPROCS_FORECAST: "&NPROCS_FORECAST;" + NPROCS_FORECAST_ATM: "&NPROCS_FORECAST_ATM;" + NPROCS_FORECAST_LND: "&NPROCS_FORECAST_LND;" + LND_LAYOUT_X: "&LND_LAYOUT_X;" + LND_LAYOUT_Y: "&LND_LAYOUT_Y;" + LND_OUTPUT_FREQ_SEC: "&LND_OUTPUT_FREQ_SEC;" + NNODES_FORECAST: "&NNODES_FORECAST;" + NPROCS_PER_NODE: "&NPROCS_PER_NODE;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "forecast" "&HOMElandda;" "&MACHINE;"' jobname: forecast - nodes: "1:ppn=&NPROCS_FORECAST;" - walltime: 01:00:00 + nodes: "&NNODES_FORECAST;:ppn=&NPROCS_PER_NODE;" + walltime: 00:30:00 queue: batch join: "&LOGDIR;/forecast&LOGFN_SUFFIX;" dependency: diff --git a/parm/land_analysis_hercules.yaml b/parm/land_analysis_hercules.yaml index e08902d9..a39e22ad 100644 --- a/parm/land_analysis_hercules.yaml +++ b/parm/land_analysis_hercules.yaml @@ -13,13 +13,22 @@ workflow: SCHED: "slurm" ACCOUNT: "epic" EXP_BASEDIR: "/work2/noaa/epic/{USER}/landda_test" - JEDI_INSTALL: "/work2/noaa/epic/UFS_Land-DA_Dev/jedi_v7_hercules" + JEDI_INSTALL: "/work/noaa/epic/UFS_Land-DA_Dev/jedi_v7_hercules" WARMSTART_DIR: "/work/noaa/epic/UFS_Land-DA_Dev/inputs/DATA_RESTART" ATMOS_FORC: "gswp3" RES: "96" - FCSTHR: "24" NPROCS_ANALYSIS: "6" - NPROCS_FORECAST: "7" + FCSTHR: "24" + DT_ATMOS: "900" + DT_RUNSEQ: "3600" + NPROCS_FORECAST: "26" + NPROCS_FORECAST_ATM: "12" + NPROCS_FORECAST_LND: "12" + LND_LAYOUT_X: "1" + LND_LAYOUT_Y: "2" + LND_OUTPUT_FREQ_SEC: "21600" + NNODES_FORECAST: "1" + NPROCS_PER_NODE: "26" OBSDIR: "" OBSDIR_SUBDIR: "" OBS_TYPES: "GHCN" @@ -213,12 +222,21 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" FCSTHR: "&FCSTHR;" - NPROCS_FORECAST: "&NPROCS_FORECAST;" + DT_ATMOS: "&DT_ATMOS;" + DT_RUNSEQ: "&DT_RUNSEQ;" + NPROCS_FORECAST: "&NPROCS_FORECAST;" + NPROCS_FORECAST_ATM: "&NPROCS_FORECAST_ATM;" + NPROCS_FORECAST_LND: "&NPROCS_FORECAST_LND;" + LND_LAYOUT_X: "&LND_LAYOUT_X;" + LND_LAYOUT_Y: "&LND_LAYOUT_Y;" + LND_OUTPUT_FREQ_SEC: "&LND_OUTPUT_FREQ_SEC;" + NNODES_FORECAST: "&NNODES_FORECAST;" + NPROCS_PER_NODE: "&NPROCS_PER_NODE;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "forecast" "&HOMElandda;" "&MACHINE;"' jobname: forecast - nodes: "1:ppn=&NPROCS_FORECAST;" - walltime: 01:00:00 + nodes: "&NNODES_FORECAST;:ppn=&NPROCS_PER_NODE;" + walltime: 00:30:00 queue: batch join: "&LOGDIR;/forecast&LOGFN_SUFFIX;" dependency: diff --git a/parm/land_analysis_orion.yaml b/parm/land_analysis_orion.yaml index 444ced28..1b8b1f61 100644 --- a/parm/land_analysis_orion.yaml +++ b/parm/land_analysis_orion.yaml @@ -17,9 +17,18 @@ workflow: WARMSTART_DIR: "/work/noaa/epic/UFS_Land-DA_Dev/inputs/DATA_RESTART" ATMOS_FORC: "gswp3" RES: "96" - FCSTHR: "24" NPROCS_ANALYSIS: "6" - NPROCS_FORECAST: "7" + FCSTHR: "24" + DT_ATMOS: "900" + DT_RUNSEQ: "3600" + NPROCS_FORECAST: "26" + NPROCS_FORECAST_ATM: "12" + NPROCS_FORECAST_LND: "12" + LND_LAYOUT_X: "1" + LND_LAYOUT_Y: "2" + LND_OUTPUT_FREQ_SEC: "21600" + NNODES_FORECAST: "1" + NPROCS_PER_NODE: "26" OBSDIR: "" OBSDIR_SUBDIR: "" OBS_TYPES: "GHCN" @@ -213,12 +222,21 @@ workflow: cyc: "&cyc;" DAtype: "&DAtype;" FCSTHR: "&FCSTHR;" - NPROCS_FORECAST: "&NPROCS_FORECAST;" + DT_ATMOS: "&DT_ATMOS;" + DT_RUNSEQ: "&DT_RUNSEQ;" + NPROCS_FORECAST: "&NPROCS_FORECAST;" + NPROCS_FORECAST_ATM: "&NPROCS_FORECAST_ATM;" + NPROCS_FORECAST_LND: "&NPROCS_FORECAST_LND;" + LND_LAYOUT_X: "&LND_LAYOUT_X;" + LND_LAYOUT_Y: "&LND_LAYOUT_Y;" + LND_OUTPUT_FREQ_SEC: "&LND_OUTPUT_FREQ_SEC;" + NNODES_FORECAST: "&NNODES_FORECAST;" + NPROCS_PER_NODE: "&NPROCS_PER_NODE;" account: "&ACCOUNT;" command: '&HOMElandda;/parm/task_load_modules_run_jjob.sh "forecast" "&HOMElandda;" "&MACHINE;"' jobname: forecast - nodes: "1:ppn=&NPROCS_FORECAST;" - walltime: 01:00:00 + nodes: "&NNODES_FORECAST;:ppn=&NPROCS_PER_NODE;" + walltime: 00:30:00 queue: batch join: "&LOGDIR;/forecast&LOGFN_SUFFIX;" dependency: diff --git a/parm/templates/template.data_table b/parm/templates/template.data_table new file mode 100644 index 00000000..537060cf --- /dev/null +++ b/parm/templates/template.data_table @@ -0,0 +1 @@ +"OCN", "runoff", "runoff", "./INPUT/", "none" , 1.0 diff --git a/parm/templates/template.datm_in b/parm/templates/template.datm_in index 9b3f2793..783d965e 100644 --- a/parm/templates/template.datm_in +++ b/parm/templates/template.datm_in @@ -11,4 +11,5 @@ nx_global = 144 ny_global = 96 restfilm = "null" + export_all = .true. / diff --git a/parm/templates/template.diag_table b/parm/templates/template.diag_table index 68a515fd..ac60ce36 100644 --- a/parm/templates/template.diag_table +++ b/parm/templates/template.diag_table @@ -75,6 +75,7 @@ XXYYYY XXMM XXDD XXHH 0 0 "gfs_dyn", "delp", "dpres", "fv3_history", "all", .false., "none", 2 "gfs_dyn", "delz", "delz", "fv3_history", "all", .false., "none", 2 "gfs_dyn", "w", "dzdt", "fv3_history", "all", .false., "none", 2 +"gfs_dyn", "omga", "omga", "fv3_history", "all", .false., "none", 2 "gfs_dyn", "ice_wat", "icmr", "fv3_history", "all", .false., "none", 2 "gfs_dyn", "rainwat", "rwmr", "fv3_history", "all", .false., "none", 2 "gfs_dyn", "snowwat", "snmr", "fv3_history", "all", .false., "none", 2 diff --git a/parm/templates/template.fd_ufs.yaml b/parm/templates/template.fd_ufs.yaml index 5c1e88b2..edfca0be 100644 --- a/parm/templates/template.fd_ufs.yaml +++ b/parm/templates/template.fd_ufs.yaml @@ -1,1179 +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 - 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 - canonical_units: kg m-2 s-1 - description: atmosphere export - # - - standard_name: Faxa_snowl - 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_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 - 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 - # - - standard_name: v - canonical_units: m s-1 - # - - standard_name: ua - canonical_units: m s-1 - # - - standard_name: va - canonical_units: m s-1 - # - - standard_name: t - canonical_units: K - # - - standard_name: delp - canonical_units: Pa - # - - standard_name: sphum - canonical_units: kg kg-1 - # - - standard_name: ice_wat - canonical_units: kg kg-1 - # - - standard_name: liq_wat - canonical_units: kg kg-1 - # - - standard_name: o3mr - canonical_units: kg kg-1 - # - - standard_name: phis - canonical_units: m2 s-2 - # - - standard_name: u_srf - canonical_units: m s-1 - # - - standard_name: v_srf - canonical_units: m s-1 - # - # - - 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 - # - - 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: vfrac - canonical_units: frac - description: areal fractional cover of green vegetation - # - - 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: zorl - canonical_units: cm - description: composite surface roughness in cm - # - - standard_name: t2m - canonical_units: K - description: two meter temperature - # - #----------------------------------- - # section: land export - #----------------------------------- - # - - standard_name: Sl_lfrac - 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: Fall_lat - 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: mean_sensi_heat_flx_lnd_to_atm - canonical_units: W m-2 - description: land export to atm - atm/lnd sensible heat flux +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/parm/templates/template.model_configure b/parm/templates/template.model_configure index 568b2f86..15e4cf42 100644 --- a/parm/templates/template.model_configure +++ b/parm/templates/template.model_configure @@ -5,5 +5,5 @@ start_hour: XXHH start_minute: 0 start_second: 0 nhours_fcst: XXFCSTHR -dt_atmos: 900 +dt_atmos: XXDT_ATMOS fhrot: 0 diff --git a/parm/templates/template.noahmptable.tbl b/parm/templates/template.noahmptable.tbl index 3ffd5b53..44531919 100644 --- a/parm/templates/template.noahmptable.tbl +++ b/parm/templates/template.noahmptable.tbl @@ -217,7 +217,7 @@ !--------------------------------------------------------------------------------------------------------------------------------------------------------------------- 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, + z0mvt = 1.00, 1.50, 0.75, 0.90, 0.85, 0.20, 0.10, 0.90, 0.60, 0.20, 0.30, 0.25, 1.00, 0.25, 0.00, 0.015, 0.00, 0.30, 0.10, 0.05, 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, @@ -226,32 +226,34 @@ !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, +!mfsno = 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, 1.97, ! 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, + 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, +! scffac = 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 0.059, 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, + rhol_nir=0.35, 0.45, 0.35, 0.45, 0.45, 0.35, 0.35, 0.35, 0.45, 0.35, 0.515, 0.35, 0.00, 0.35, 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, + rhos_vis=0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.31, 0.26, 0.31, 0.00, 0.31, 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.53, 0.485, 0.53, 0.00, 0.53, 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, + taul_vis=0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.06, 0.05, 0.00, 0.05, 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.34, 0.25, 0.34, 0.00, 0.34, 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, + taus_vis=0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.120, 0.1105, 0.120, 0.000, 0.120, 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.250, 0.1905, 0.250, 0.000, 0.250, 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, + xl = 0.010, 0.10, 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, @@ -335,10 +337,10 @@ !-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ! 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 + albsat_vis = 0.21, 0.20, 0.18, 0.17, 0.16, 0.15, 0.14, 0.13, 0.13, 0.12, 0.11, 0.10, 0.10, 0.09, 0.08, 0.08, 0.08, 0.07, 0.07, 0.06 ! saturated soil albedos + albsat_nir = 0.42, 0.40, 0.36, 0.34, 0.32, 0.30, 0.28, 0.26, 0.26, 0.24, 0.22, 0.20, 0.20, 0.18, 0.16, 0.16, 0.16, 0.14, 0.14, 0.13 ! saturated soil albedos + albdry_vis = 0.31, 0.30, 0.28, 0.27, 0.26, 0.24, 0.23, 0.22, 0.22, 0.22, 0.20, 0.19, 0.20, 0.18, 0.16, 0.16, 0.16, 0.14, 0.14, 0.13 ! dry soil albedos + albdry_nir = 0.52, 0.50, 0.46, 0.44, 0.42, 0.40, 0.38, 0.37, 0.36, 0.34, 0.32, 0.30, 0.30, 0.28, 0.27, 0.27, 0.27, 0.26, 0.25, 0.25 ! 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 @@ -397,7 +399,7 @@ 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) + z0soil = 0.015 ! bare-soil roughness length (m) (i.e., under the canopy) z0lake = 0.01 ! lake surface roughness length (m) / diff --git a/parm/templates/template.ufs.configure b/parm/templates/template.ufs.configure index e9894a1f..0e1cb40b 100644 --- a/parm/templates/template.ufs.configure +++ b/parm/templates/template.ufs.configure @@ -14,7 +14,7 @@ EARTH_attributes:: # MED # MED_model: cmeps -MED_petlist_bounds: 0 -1 +MED_petlist_bounds: 0 XXNPROCS_ATM_M1 MED_omp_num_threads: 1 MED_attributes:: Verbosity = 1 @@ -26,15 +26,11 @@ MED_attributes:: 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_petlist_bounds: 0 XXNPROCS_ATM_M1 ATM_omp_num_threads: 1 ATM_attributes:: Verbosity = 0 @@ -43,7 +39,7 @@ ATM_attributes:: # LND # LND_model: noahmp -LND_petlist_bounds: 1 6 +LND_petlist_bounds: XXNPROCS_FORECAST_ATM XXNPROCS_ATM_LND_M1 LND_omp_num_threads: 1 LND_attributes:: Verbosity = 1 @@ -51,7 +47,7 @@ LND_attributes:: mosaic_file = INPUT/C96_mosaic.nc input_dir = INPUT/ ic_type = custom - layout = 1:1 # need to be consistent with number of PEs + layout = XXLND_LAYOUT_X:XXLND_LAYOUT_Y # need to be consistent with number of PEs (6*Lx*Ly) num_soil_levels = 4 forcing_height = 10 soil_level_thickness = 0.10:0.30:0.60:1.00 @@ -71,13 +67,15 @@ LND_attributes:: 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 + output_freq = XXLND_OUTPUT_FREQ_SEC + restart_freq = -1 calc_snet = .true. + initial_albedo = 0.25 :: # cold runSeq:: -@3600 +@XXDT_RUNSEQ MED med_phases_prep_atm MED -> ATM :remapMethod=redist ATM @@ -98,15 +96,16 @@ DRIVER_attributes:: :: ALLCOMP_attributes:: - ScalarFieldCount = 3 + ScalarFieldCount = 4 ScalarFieldIdxGridNX = 1 ScalarFieldIdxGridNY = 2 - ScalarFieldIdxNextSwCday = 3 # required for data atmosphere configurations + ScalarFieldIdxGridNTile = 3 + ScalarFieldIdxNextSwCday = 4 # required for data atmosphere configurations ScalarFieldName = cpl_scalars - start_type = continue + start_type = startup restart_dir = ./RESTART/ case_name = ufs.cpld - restart_n = 12 + restart_n = 1 restart_option = nhours restart_ymd = -999 dbug_flag = 0 diff --git a/scripts/exlandda_forecast.sh b/scripts/exlandda_forecast.sh index e563a9c2..a660d935 100755 --- a/scripts/exlandda_forecast.sh +++ b/scripts/exlandda_forecast.sh @@ -2,17 +2,8 @@ set -xue -YYYY=${PDY:0:4} -MM=${PDY:4:2} -DD=${PDY:6:2} -HH=${cyc} -YYYYMMDD=${PDY} -nYYYY=${NTIME:0:4} -nMM=${NTIME:4:2} -nDD=${NTIME:6:2} -nHH=${NTIME:8:2} - -FILEDATE=${YYYY}${MM}${DD}.${HH}0000 +echo '************************************************' +echo 'running the forecast model' case $MACHINE in "hera") @@ -29,101 +20,126 @@ case $MACHINE in ;; esac +export MPI_TYPE_DEPTH=20 +export OMP_STACKSIZE=512M +# shellcheck disable=SC2125 +export OMP_NUM_THREADS=1 +export ESMF_RUNTIME_COMPLIANCECHECK=OFF:depth=4 +export ESMF_RUNTIME_PROFILE=ON +export ESMF_RUNTIME_PROFILE_OUTPUT="SUMMARY" +export PSM_RANKS_PER_CONTEXT=4 +export PSM_SHAREDCONTEXTS=1 -echo '************************************************' -echo 'running the forecast model' +YYYY=${PDY:0:4} +MM=${PDY:4:2} +DD=${PDY:6:2} +HH=${cyc} +YYYYMMDD=${PDY} +nYYYY=${NTIME:0:4} +nMM=${NTIME:4:2} +nDD=${NTIME:6:2} +nHH=${NTIME:8:2} -# modify some env variables - reduce core usage -export ATM_compute_tasks=0 -export ATM_io_tasks=1 -export LND_tasks=6 -export layout_x=1 -export layout_y=1 - - 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 - cp ${PARMlandda}/templates/template.fd_ufs.yaml fd_ufs.yaml - - # Set model_configure - cp ${PARMlandda}/templates/template.model_configure model_configure - sed -i -e "s/XXYYYY/${YYYY}/g" model_configure - sed -i -e "s/XXMM/${MM}/g" model_configure - sed -i -e "s/XXDD/${DD}/g" model_configure - sed -i -e "s/XXHH/${HH}/g" model_configure - sed -i -e "s/XXFCSTHR/${FCSTHR}/g" model_configure - - # set diag table - 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 - - # NoahMP restart files - for itile in {1..6} - do - ln -nsf ${COMIN}/ufs_land_restart.anal.${YYYY}-${MM}-${DD}_${HH}-00-00.tile${itile}.nc RESTART/ufs.cpld.lnd.out.${YYYY}-${MM}-${DD}-00000.tile${itile}.nc - done +FILEDATE=${YYYY}${MM}${DD}.${HH}0000 - # CMEPS restart and pointer files - rfile1="ufs.cpld.cpl.r.${YYYY}-${MM}-${DD}-00000.nc" - if [[ -e "${COMINm1}/${rfile1}" ]]; then - ln -nsf "${COMINm1}/${rfile1}" RESTART/. - elif [[ -e "${WARMSTART_DIR}/${rfile1}" ]]; then - ln -nsf "${WARMSTART_DIR}/${rfile1}" RESTART/. - else - ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile1} RESTART/. - fi - ls -1 "RESTART/${rfile1}">rpointer.cpl - - # CDEPS restart and pointer files - rfile2="ufs.cpld.datm.r.${YYYY}-${MM}-${DD}-00000.nc" - if [[ -e "${COMINm1}/${rfile2}" ]]; then - ln -nsf "${COMINm1}/${rfile2}" RESTART/. - elif [[ -e "${WARMSTART_DIR}/${rfile2}" ]]; then - ln -nsf "${WARMSTART_DIR}/${rfile2}" RESTART/. - else - ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile2} RESTART/. - fi - ls -1 "RESTART/${rfile2}">rpointer.atm +# Copy input namelist data files +cp -p ${PARMlandda}/templates/template.input.nml input.nml +cp -p ${PARMlandda}/templates/template.datm_in datm_in +cp -p ${PARMlandda}/templates/template.datm.streams datm.streams +cp -p ${PARMlandda}/templates/template.noahmptable.tbl noahmptable.tbl +cp -p ${PARMlandda}/templates/template.fd_ufs.yaml fd_ufs.yaml +cp -p ${PARMlandda}/templates/template.data_table data_table + +# Set ufs.configure +cp -p ${PARMlandda}/templates/template.ufs.configure ufs.configure +nprocs_atm_m1=$(( NPROCS_FORECAST_ATM - 1 )) +sed -i -e "s/XXNPROCS_ATM_M1/${nprocs_atm_m1}/g" ufs.configure +sed -i -e "s/XXNPROCS_FORECAST_ATM/${NPROCS_FORECAST_ATM}/g" ufs.configure +nprocs_atm_lnd_m1=$(( NPROCS_FORECAST_ATM + NPROCS_FORECAST_LND - 1 )) +sed -i -e "s/XXNPROCS_ATM_LND_M1/${nprocs_atm_lnd_m1}/g" ufs.configure +sed -i -e "s/XXLND_LAYOUT_X/${LND_LAYOUT_X}/g" ufs.configure +sed -i -e "s/XXLND_LAYOUT_Y/${LND_LAYOUT_Y}/g" ufs.configure +sed -i -e "s/XXLND_OUTPUT_FREQ_SEC/${LND_OUTPUT_FREQ_SEC}/g" ufs.configure +sed -i -e "s/XXDT_RUNSEQ/${DT_RUNSEQ}/g" ufs.configure + +# Set model_configure +cp -p ${PARMlandda}/templates/template.model_configure model_configure +sed -i -e "s/XXYYYY/${YYYY}/g" model_configure +sed -i -e "s/XXMM/${MM}/g" model_configure +sed -i -e "s/XXDD/${DD}/g" model_configure +sed -i -e "s/XXHH/${HH}/g" model_configure +sed -i -e "s/XXFCSTHR/${FCSTHR}/g" model_configure +sed -i -e "s/XXDT_ATMOS/${DT_ATMOS}/g" model_configure + +# set diag table +cp -p ${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 + +# NoahMP restart files +for itile in {1..6} +do + ln -nsf ${COMIN}/ufs_land_restart.anal.${YYYY}-${MM}-${DD}_${HH}-00-00.tile${itile}.nc RESTART/ufs.cpld.lnd.out.${YYYY}-${MM}-${DD}-00000.tile${itile}.nc +done - mkdir -p INPUT - cd INPUT - 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 - echo "Start ufs-cdeps-land model run with TASKS: ${NPROCS_FORECAST}" - export pgm="ufs_model" - . prep_step - ${RUN_CMD} -n ${NPROCS_FORECAST} ${EXEClandda}/$pgm >>$pgmout 2>errfile - export err=$?; err_chk - cp errfile errfile_ufs_model - if [[ $err != 0 ]]; then - echo "ufs_model failed" - exit 10 - fi +# CMEPS restart and pointer files +rfile1="ufs.cpld.cpl.r.${YYYY}-${MM}-${DD}-00000.nc" +if [[ -e "${COMINm1}/${rfile1}" ]]; then + ln -nsf "${COMINm1}/${rfile1}" RESTART/. +elif [[ -e "${WARMSTART_DIR}/${rfile1}" ]]; then + ln -nsf "${WARMSTART_DIR}/${rfile1}" RESTART/. +else + ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile1} RESTART/. +fi +ls -1 "RESTART/${rfile1}">rpointer.cpl + +# CDEPS restart and pointer files +rfile2="ufs.cpld.datm.r.${YYYY}-${MM}-${DD}-00000.nc" +if [[ -e "${COMINm1}/${rfile2}" ]]; then + ln -nsf "${COMINm1}/${rfile2}" RESTART/. +elif [[ -e "${WARMSTART_DIR}/${rfile2}" ]]; then + ln -nsf "${WARMSTART_DIR}/${rfile2}" RESTART/. +else + ln -nsf ${FIXlandda}/restarts/${ATMOS_FORC}/${rfile2} RESTART/. +fi +ls -1 "RESTART/${rfile2}">rpointer.atm + +mkdir -p INPUT +cd INPUT +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 +echo "Start ufs-cdeps-land model run with TASKS: ${NPROCS_FORECAST}" +export pgm="ufs_model" +. prep_step +${RUN_CMD} -n ${NPROCS_FORECAST} ${EXEClandda}/$pgm >>$pgmout 2>errfile +export err=$?; err_chk +cp errfile errfile_ufs_model +if [[ $err != 0 ]]; then + echo "ufs_model failed" + exit 10 +fi # copy model ouput to COM for itile in {1..6} diff --git a/sorc/test/hera_ctest.sh b/sorc/test/hera_ctest.sh index 06cad79a..8ca14c75 100755 --- a/sorc/test/hera_ctest.sh +++ b/sorc/test/hera_ctest.sh @@ -1,6 +1,6 @@ #!/bin/bash #SBATCH -o out.ctest -#SBATCH --account=nems + set -eux source ../../versions/build.ver_hera diff --git a/sorc/test/hercules_ctest.sh b/sorc/test/hercules_ctest.sh index 300b15ff..1a2355fb 100755 --- a/sorc/test/hercules_ctest.sh +++ b/sorc/test/hercules_ctest.sh @@ -1,6 +1,6 @@ #!/bin/bash #SBATCH -o out.ctest -#SBATCH --account=epic + set -eux source ../../versions/build.ver_hercules diff --git a/sorc/test/orion_ctest.sh b/sorc/test/orion_ctest.sh index 94885d9b..f8b3b25c 100755 --- a/sorc/test/orion_ctest.sh +++ b/sorc/test/orion_ctest.sh @@ -1,6 +1,6 @@ #!/bin/bash #SBATCH -o out.ctest -#SBATCH --account=nems + set -eux source ../../versions/build.ver_orion diff --git a/sorc/test/parm/ufs.configure b/sorc/test/parm/ufs.configure new file mode 100644 index 00000000..3c21dd4e --- /dev/null +++ b/sorc/test/parm/ufs.configure @@ -0,0 +1,123 @@ +############################################# +#### 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 5 +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 +:: + +# ATM # +ATM_model: datm +ATM_petlist_bounds: 0 5 +ATM_omp_num_threads: 1 +ATM_attributes:: + Verbosity = 0 + Diagnostic = 0 +:: + +# LND # +LND_model: noahmp +LND_petlist_bounds: 6 11 +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 (6*Lx*Ly) + 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 = 21600 + restart_freq = -1 + calc_snet = .true. + initial_albedo = 0.25 +:: + +# 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 = 4 + ScalarFieldIdxGridNX = 1 + ScalarFieldIdxGridNY = 2 + ScalarFieldIdxGridNTile = 3 + ScalarFieldIdxNextSwCday = 4 # required for data atmosphere configurations + ScalarFieldName = cpl_scalars + start_type = startup + restart_dir = ./RESTART/ + case_name = ufs.cpld + restart_n = 1 + 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/sorc/test/run_ctest_platform.sh b/sorc/test/run_ctest_platform.sh new file mode 100755 index 00000000..75800e06 --- /dev/null +++ b/sorc/test/run_ctest_platform.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +set -xue + +TEST_DIR=$(cd "$(dirname "$(readlink -f -n "${BASH_SOURCE[0]}" )" )" && pwd -P) +BUILD_DIR=${TEST_DIR}/../build +PARM_DIR=${TEST_DIR}/../../parm + +# Detect platform +source ${PARM_DIR}/detect_platform.sh +export MACHINE_ID=${PLATFORM} + +# Copy scripts to build +cd ${BUILD_DIR} +cp -p "${TEST_DIR}/${PLATFORM}_ctest.sh" ${BUILD_DIR}/. + +if [ "${PLATFORM}" = "hera" ] || [ "${PLATFORM}" = "orion" ] || [ "${PLATFORM}" = "hercules" ]; then + JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=13 --nodes=1 --time=00:30:00 ./${PLATFORM}_ctest.sh | awk '{print $4}') +else + echo "FATAL ERROR: ctest is not available on this platform (machine)." + exit 1 +fi diff --git a/sorc/test/run_hera_ctest.sh b/sorc/test/run_hera_ctest.sh index 647668dd..98b11d44 100755 --- a/sorc/test/run_hera_ctest.sh +++ b/sorc/test/run_hera_ctest.sh @@ -1,9 +1,9 @@ #!/bin/bash set -eux -JOB_ID=$(sbatch --job-name=ctest --account=nems --qos=debug --ntasks-per-node=7 --nodes=1 --time=00:30:00 ./hera_ctest.sh | awk '{print $4}') +JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=13 --nodes=1 --time=00:30:00 ./hera_ctest.sh | awk '{print $4}') -CHECK_ID=$(sbatch --job-name=ctest --account=nems --qos=debug --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) +CHECK_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) sleep 5m diff --git a/sorc/test/run_hercules_ctest.sh b/sorc/test/run_hercules_ctest.sh index 7ab48df8..8c6c6eb6 100755 --- a/sorc/test/run_hercules_ctest.sh +++ b/sorc/test/run_hercules_ctest.sh @@ -1,9 +1,9 @@ #!/bin/bash set -eux -JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=debug --ntasks-per-node=7 --nodes=1 --time=00:30:00 ./hercules_ctest.sh | awk '{print $4}') +JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=13 --nodes=1 --time=00:30:00 ./hercules_ctest.sh | awk '{print $4}') -CHECK_ID=$(sbatch --job-name=ctest --account=epic --qos=debug --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) +CHECK_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) sleep 5m diff --git a/sorc/test/run_orion_ctest.sh b/sorc/test/run_orion_ctest.sh index 150d7636..f54926c3 100755 --- a/sorc/test/run_orion_ctest.sh +++ b/sorc/test/run_orion_ctest.sh @@ -1,11 +1,11 @@ #!/bin/bash set -eux -JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=7 --nodes=1 --time=01:00:00 ./orion_ctest.sh | awk '{print $4}') +JOB_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=13 --nodes=1 --time=00:30:00 ./orion_ctest.sh | awk '{print $4}') -CHECK_ID=$(sbatch --job-name=ctest --account=epic --qos=debug --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) +CHECK_ID=$(sbatch --job-name=ctest --account=epic --qos=batch --ntasks-per-node=1 --nodes=1 --time=00:01:00 --dependency=afterok:$JOB_ID ./check_ctest.sh) -sleep 20m +sleep 10m if [ -f out.ctest ]; then cat out.ctest diff --git a/sorc/test/run_ufs_datm_lnd.sh b/sorc/test/run_ufs_datm_lnd.sh index d417beb7..79974a09 100755 --- a/sorc/test/run_ufs_datm_lnd.sh +++ b/sorc/test/run_ufs_datm_lnd.sh @@ -23,10 +23,15 @@ else echo "WARNING: input data path is not specified for this machine." INPUTDATA_ROOT=${FIXdir} fi -MACHINE_ID=${PLATFORM} -RT_COMPILER=${RT_COMPILER:-intel} +export MACHINE_ID=${PLATFORM} +export RT_COMPILER=${RT_COMPILER:-intel} +export CREATE_BASELINE=false +export skip_check_result=false +export RTVERBOSE=false +export delete_rundir=false +export WLCLK=30 ATOL="1e-7" -source ${PATHRT}/detect_machine.sh + source ${PATHRT}/rt_utils.sh source ${PATHRT}/default_vars.sh source ${PATHRT}/tests/$TEST_NAME @@ -45,13 +50,6 @@ RUNDIR=${project_binary_dir}/test/${TEST_NAME} mkdir -p ${RUNDIR} cd ${RUNDIR} -# modify some env variables - reduce core usage -export ATM_compute_tasks=0 -export ATM_io_tasks=1 -export LND_tasks=6 -export layout_x=1 -export layout_y=1 - # FV3 executable: cp ${project_binary_dir}/ufs_model.fd/src/ufs_model.fd-build/ufs_model ./ufs_model @@ -69,9 +67,11 @@ fi atparse < ${PATHRT}/parm/${MODEL_CONFIGURE:-model_configure.IN} > model_configure -compute_petbounds_and_tasks +#compute_petbounds_and_tasks +#atparse < ${PATHRT}/parm/${UFS_CONFIGURE:-ufs.configure} > ufs.configure -atparse < ${PATHRT}/parm/${UFS_CONFIGURE:-ufs.configure} > ufs.configure +cp -p ${project_source_dir}/test/parm/ufs.configure . +NPROCS_FORECAST="13" # diag table if [[ "Q${DIAG_TABLE:-}" != Q ]] ; then @@ -97,9 +97,13 @@ fi cp ${PATHRT}/parm/noahmptable.tbl noahmptable.tbl # start runs -echo "Start ufs-cdeps-land model run with TASKS: ${TASKS}" -export MPIRUN=${MPIRUN:-`which mpiexec`} -${MPIRUN} -n ${TASKS} ./ufs_model +echo "Start ufs-weather-model run" +if [ "${PLATFORM}" = "hera" ] || [ "${PLATFORM}" = "orion" ] || [ "${PLATFORM}" = "hercules" ]; then + export MPIRUN="srun" +else + export MPIRUN=${MPIRUN:-`which mpiexec`} +fi +${MPIRUN} -n ${NPROCS_FORECAST} ./ufs_model # echo "Now check model output with ufs-wm baseline!" diff --git a/sorc/ufs_model.fd b/sorc/ufs_model.fd index 24f5a415..2ccc5493 160000 --- a/sorc/ufs_model.fd +++ b/sorc/ufs_model.fd @@ -1 +1 @@ -Subproject commit 24f5a415173e625606a65b90163464adcf2770c6 +Subproject commit 2ccc549348da37aac51ab44482174dff2bb2912d diff --git a/versions/build.ver_hera b/versions/build.ver_hera index 156349a2..d87174f1 100644 --- a/versions/build.ver_hera +++ b/versions/build.ver_hera @@ -1,16 +1,16 @@ #!/bin/bash -export modulepath_spack_stack="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core" +export modulepath_spack_stack="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32" @@ -20,6 +20,7 @@ export netcdf_c_ver="4.9.2" export netcdf_fortran_ver="4.6.1" export parallelio_ver="2.5.10" export prod_util_ver="2.1.1" +export scotch_ver="7.0.4" export sp_ver="2.5.0" export stack_intel_oneapi_mpi_ver="2021.5.1" export stack_intel_ver="2021.5.0" diff --git a/versions/build.ver_hercules b/versions/build.ver_hercules index 745034b6..8ec0ce3c 100644 --- a/versions/build.ver_hercules +++ b/versions/build.ver_hercules @@ -1,16 +1,16 @@ #!/bin/bash -export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core" +export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32" @@ -20,6 +20,7 @@ export netcdf_c_ver="4.9.2" export netcdf_fortran_ver="4.6.1" export parallelio_ver="2.5.10" export prod_util_ver="2.1.1" +export scotch_ver="7.0.4" export sp_ver="2.5.0" export stack_intel_oneapi_mpi_ver="2021.9.0" export stack_intel_ver="2021.9.0" diff --git a/versions/build.ver_orion b/versions/build.ver_orion index f3dae589..b3e6c325 100644 --- a/versions/build.ver_orion +++ b/versions/build.ver_orion @@ -1,16 +1,16 @@ #!/bin/bash -export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env-rocky9/install/modulefiles/Core" +export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32" @@ -20,6 +20,7 @@ export netcdf_c_ver="4.9.2" export netcdf_fortran_ver="4.6.1" export parallelio_ver="2.5.10" export prod_util_ver="2.1.1" +export scotch_ver="7.0.4" export sp_ver="2.5.0" export stack_intel_oneapi_mpi_ver="2021.9.0" export stack_intel_ver="2021.9.0" diff --git a/versions/run.ver_hera b/versions/run.ver_hera index 081c0c15..5d095668 100644 --- a/versions/run.ver_hera +++ b/versions/run.ver_hera @@ -1,16 +1,18 @@ #!/bin/bash -export modulepath_spack_stack="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core" +export modulepath_spack_stack="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" + +export modulepath_spack_stack_unienv="/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32" diff --git a/versions/run.ver_hercules b/versions/run.ver_hercules index 27463077..771fc8f2 100644 --- a/versions/run.ver_hercules +++ b/versions/run.ver_hercules @@ -1,16 +1,18 @@ #!/bin/bash -export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core" +export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" + +export modulepath_spack_stack_unienv="/work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.6.0/envs/unified-env/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32" diff --git a/versions/run.ver_orion b/versions/run.ver_orion index 81bbc060..a1b97600 100644 --- a/versions/run.ver_orion +++ b/versions/run.ver_orion @@ -1,16 +1,18 @@ #!/bin/bash -export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env-rocky9/install/modulefiles/Core" +export modulepath_spack_stack="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/fms-2024.01/install/modulefiles/Core" + +export modulepath_spack_stack_unienv="/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.6.0/envs/unified-env-rocky9/install/modulefiles/Core" export bacio_ver="2.4.1" export cmake_ver="3.23.1" -export crtm_ver="2.4.0.1" +export crtm_ver="2.4.0" export ecbuild_ver="3.7.2" export esmf_ver="8.6.0" -export fms_ver="2023.04" +export fms_ver="2024.01" export gftl_shared_ver="1.6.1" -export g2_ver="3.4.5" -export g2tmpl_ver="1.10.2" +export g2_ver="3.5.1" +export g2tmpl_ver="1.13.0" export hdf5_ver="1.14.0" export ip_ver="4.3.0" export jasper_ver="2.0.32"