Skip to content

8.2.2-3.11 - RUC implementation as a submodule #127

New issue

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

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

Already on GitHub? Sign in to your account

Merged
merged 22 commits into from
May 21, 2025

Conversation

tanyasmirnova
Copy link
Collaborator

@tanyasmirnova tanyasmirnova commented May 12, 2025

The title above should be a 1 line short summary of the pull request (i.e. what the project the PR represents is intended to do).
RUC LSM implementation as a submodule.

RUC submodule is located in https://github.com/NOAA-GSL/RUCLSM.git.
It has RUC LSM versions of the code for MPAS, CCPP and WRF.

Testing and relations to other Pull Requests should be added as subsequent comments.

Information on running mandatory regression tests on Jet can be found here and the results pasted below.

All tests cases are identical, see in /mnt/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/utils/compare_run_testcases_final_v8.2.2-3.11-intdebug

regression test case results
PASTE compare_run_testcases AND/OR compare_create_testcases TEXT HERE

     version_to_compare = v8.2.2-3.11
   gsl_version_baseline = v8.2.2-3.10
  ncar_version_baseline = v8.2.2
         test_directory = /lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/
 gsl_baseline_directory = /lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/
ncar_baseline_directory = /lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/
           compile_flag = -intdebug
         test_repo_name = gsl

######################################################################
# compare to previous GSL CONUS mesoscale_reference baselines A1GSL
######################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.

#############################################################################
# compare to previous GSL CONUS convection_permitting_none baselines F1GSL
#############################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.

#############################################################################
# compare to previous GSL CONUS mesoscale_reference_noahmp baselines E1GSL
#############################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.mesoscale_reference_noahmp.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.

######################################################################
# compare to previous GSL CONUS hrrrv5 GFS baselines C5GSL
######################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.

######################################################################
# compare to previous GSL CONUS hrrrv5 RAP winter baselines C7GSL
######################################################################

  === history.2024-02-02_18.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_18.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_18.00.00.nc" are identical.

  === history.2024-02-02_18.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_18.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_18.12.00.nc" are identical.

  === history.2024-02-02_19.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_19.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024020218/history.2024-02-02_19.00.00.nc" are identical.

######################################################################
# compare to previous GSL CONUS hrrrv5 RAP summer baselines C8GSL
######################################################################

  === history.2024-08-15_18.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_18.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_18.00.00.nc" are identical.

  === history.2024-08-15_18.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_18.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_18.12.00.nc" are identical.

  === history.2024-08-15_19.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_19.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/gsl-v8.2.2-3.10-intdebug.hrrrv5.gsl.gsl.conus.120km.rap.2024081518/history.2024-08-15_19.00.00.nc" are identical.

########################################################################
# compare to previous NCAR CONUS mesoscale_reference baselines A1NCAR
########################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.mesoscale_reference.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.

###############################################################################
# compare to previous NCAR CONUS convection_permitting_none baselines F1NCAR
###############################################################################

  === history.2023-03-10_15.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.00.00.nc" are identical.

  === history.2023-03-10_15.12.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_15.12.00.nc" are identical.

  === history.2023-03-10_16.00.00.nc comparison
Files "/lfs5/BMC/wrfruc/smirnova/MPAS_regression_tests/mpas_testcase/run_case/gsl-v8.2.2-3.11-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" and "/lfs5/BMC/wrfruc/Michael.Barlage/mpas/baselines_mpas/run_case/ncar-v8.2.2-intdebug.convection_permitting_none.ncar.ncar.conus.120km.gfs.2023031015/history.2023-03-10_16.00.00.nc" are identical.


tanyasmirnova and others added 16 commits January 13, 2025 21:28
In the modified code, soil resistance can completely turn off the
evaporation with values of soil moisture close to minimum values.
Thus, this change will help with moist bias in MPAS in the dry regions.
1. Created a new directory: physics_lsm_ruc
2. Moved RUC LSM subroutines to the new directory
3. Removed RUC LSM subroutines from physics_wrf.
4. Updated Makefiles in physics and physics_wrf directories.
The new code compiled successfully.
…module

The differences are only in the form of the model, but the same physics.
@tanyasmirnova tanyasmirnova changed the title RUC submodule RUC implementation as a submodule May 13, 2025
@tanyasmirnova tanyasmirnova marked this pull request as ready for review May 13, 2025 21:58
@barlage
Copy link
Collaborator

barlage commented May 14, 2025

Looks good to me. I see that the parameter tables are added to the MPAS directory. Is the intention that these are the tables that will be used by MPAS when RUC is active? In general, I think this is a good idea to keep the model-specific parameters in the model submodule, but I'm assuming additional changes would be needed to use these directly.

@tanyasmirnova
Copy link
Collaborator Author

Looks good to me. I see that the parameter tables are added to the MPAS directory. Is the intention that these are the tables that will be used by MPAS when RUC is active? In general, I think this is a good idea to keep the model-specific parameters in the model submodule, but I'm assuming additional changes would be needed to use these directly.

Yes, the tables are saved in the MPAS directory for reference. At this point they are not used, because the general MPAS tables located in src/core_atmosphere/physics/physics_wrf/files/ are used.

Copy link
Collaborator

@clark-evans clark-evans left a comment

Choose a reason for hiding this comment

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

Code looks good, though I'm curious about the convection_permitting_none test outputs - the 12-min and 60-min outputs are blank. Is this to be expected? @tanyasmirnova @barlage

@barlage
Copy link
Collaborator

barlage commented May 14, 2025

@tanyasmirnova I forgot about the cmake build compatibility. See the discussion in #124 and #90

@barlage
Copy link
Collaborator

barlage commented May 14, 2025

Code looks good, though I'm curious about the convection_permitting_none test outputs - the 12-min and 60-min outputs are blank. Is this to be expected? @tanyasmirnova @barlage

@clark-evans The convection_permitting_none suite is still failing until #116 gets merged so there is no output file to compare. @tanyasmirnova was ahead of the curve and is using the updated mpas_testcase

@clark-evans
Copy link
Collaborator

Code looks good, though I'm curious about the convection_permitting_none test outputs - the 12-min and 60-min outputs are blank. Is this to be expected? @tanyasmirnova @barlage

@clark-evans The convection_permitting_none suite is still failing until #116 gets merged so there is no output file to compare. @tanyasmirnova was ahead of the curve and is using the updated mpas_testcase

Ah, yes, thanks. That's what I get for multitasking.

@tanyasmirnova
Copy link
Collaborator Author

@tanyasmirnova I forgot about the cmake build compatibility. See the discussion in #124 and #90

@barlage Thank you, Mike. I added RUCLSM submodule to the CMakeLists.txt

@barlage
Copy link
Collaborator

barlage commented May 14, 2025

@tanyasmirnova if you want to test the cmake build you can use these commands on jet from the MPAS-Model directory:

module purge
module use /contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core
module load stack-intel/2021.5.0  stack-intel-oneapi-mpi/2021.5.1 parallelio/2.5.10
mkdir build; cd build
cmake --fresh -DMPAS_DOUBLE_PRECISION=OFF -DMPAS_CORES=atmosphere  .. > cmake.out.intel
make VERBOSE=1 > make.out.intel

@tanyasmirnova
Copy link
Collaborator Author

@tanyasmirnova if you want to test the cmake build you can use these commands on jet from the MPAS-Model directory:

module purge
module use /contrib/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core
module load stack-intel/2021.5.0  stack-intel-oneapi-mpi/2021.5.1 parallelio/2.5.10
mkdir build; cd build
cmake --fresh -DMPAS_DOUBLE_PRECISION=OFF -DMPAS_CORES=atmosphere  .. > cmake.out.intel
make VERBOSE=1 > make.out.intel

Mike, I followed your instructions and found a few issues in CMakLists.txt. I fixed them. The build directory is in /mnt/lfs5/BMC/wrfruc/smirnova/MPAS_code/MPAS_12may25_rucmod/build.

@tanyasmirnova tanyasmirnova changed the title RUC implementation as a submodule 8.2.2-3.11 - RUC implementation as a submodule May 15, 2025
@clark-evans clark-evans merged commit 77e4523 into ufs-community:gsl/develop May 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants