Skip to content

Commit

Permalink
Merge pull request NCAR#486 from grantfirl/ufs-dev-PR189
Browse files Browse the repository at this point in the history
UFS-dev PR#189
  • Loading branch information
grantfirl authored Jul 17, 2024
2 parents afb3827 + dbff20b commit ab270c2
Show file tree
Hide file tree
Showing 15 changed files with 97 additions and 103 deletions.
8 changes: 8 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
version: 2
updates:
# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
target-branch: "main"
12 changes: 6 additions & 6 deletions .github/workflows/ci_build_scm_ubuntu_22.04.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
# Initial
#######################################################################################
- name: Checkout SCM code (into /home/runner/work/ccpp-scm/)
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize submodules
run: git submodule update --init --recursive
Expand All @@ -38,7 +38,7 @@ jobs:
# Python setup
#######################################################################################
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{matrix.py-version}}

Expand Down Expand Up @@ -70,7 +70,7 @@ jobs:
- name: Cache bacio library v2.4.1
id: cache-bacio-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/bacio
key: cache-bacio-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -87,7 +87,7 @@ jobs:
- name: Cache SP-library v2.3.3
id: cache-sp-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/NCEPLIBS-sp
key: cache-sp-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -104,7 +104,7 @@ jobs:
- name: Cache w3emc library v2.9.2
id: cache-w3emc-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/myw3emc
key: cache-w3emc-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -126,7 +126,7 @@ jobs:
- name: Cache NetCDF Fortran library
id: cache-netcdf-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/netcdf-fortran
key: cache-netcdf-fortran-${{matrix.fortran-compiler}}-key
Expand Down
25 changes: 17 additions & 8 deletions .github/workflows/ci_run_scm_DEPHY.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ jobs:
strategy:
matrix:
fortran-compiler: [gfortran-12]
build-type: [Release, Debug]
py-version: [3.7.13]

# Environmental variables
Expand All @@ -28,7 +29,7 @@ jobs:
# Initial
#######################################################################################
- name: Checkout SCM code (into /home/runner/work/ccpp-scm/)
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize submodules
run: git submodule update --init --recursive
Expand All @@ -37,7 +38,7 @@ jobs:
# Python setup
#######################################################################################
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{matrix.py-version}}

Expand Down Expand Up @@ -68,7 +69,7 @@ jobs:
- name: Cache bacio library v2.4.1
id: cache-bacio-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/bacio
key: cache-bacio-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -85,7 +86,7 @@ jobs:
- name: Cache SP-library v2.3.3
id: cache-sp-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/NCEPLIBS-sp
key: cache-sp-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -102,7 +103,7 @@ jobs:
- name: Cache w3emc library v2.9.2
id: cache-w3emc-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/myw3emc
key: cache-w3emc-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -122,7 +123,7 @@ jobs:

- name: Cache NetCDF Fortran library v4.4.4
id: cache-netcdf-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/netcdf-fortran
key: cache-netcdf-fortran-${{matrix.fortran-compiler}}-key
Expand Down Expand Up @@ -150,13 +151,21 @@ jobs:
cd ${SCM_ROOT}
./contrib/get_all_static_data.sh
./contrib/get_thompson_tables.sh
- name: Configure build with CMake
- name: Configure build with CMake (Release)
if: contains(matrix.build-type, 'Release')
run: |
cd ${SCM_ROOT}/scm
mkdir bin && cd bin
cmake -DCCPP_SUITES=${suites} ../src
- name: Configure build with CMake (Debug)
if: contains(matrix.build-type, 'Debug')
run: |
cd ${SCM_ROOT}/scm
mkdir bin && cd bin
cmake -DCCPP_SUITES=${suites} -DCMAKE_BUILD_TYPE=Debug ../src
- name: Build SCM
run: |
cd ${SCM_ROOT}/scm/bin
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/ci_run_scm_rts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
# Initial
#######################################################################################
- name: Checkout SCM code (into /home/runner/work/ccpp-scm/)
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize submodules
run: git submodule update --init --recursive
Expand All @@ -41,7 +41,7 @@ jobs:
# Python setup
#######################################################################################
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{matrix.py-version}}

Expand Down Expand Up @@ -74,7 +74,7 @@ jobs:
- name: Cache bacio library v2.4.1
id: cache-bacio-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/bacio
key: cache-bacio-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -91,7 +91,7 @@ jobs:
- name: Cache SP-library v2.3.3
id: cache-sp-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/NCEPLIBS-sp
key: cache-sp-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -108,7 +108,7 @@ jobs:
- name: Cache w3emc library v2.9.2
id: cache-w3emc-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/myw3emc
key: cache-w3emc-fortran-${{matrix.fortran-compiler}}-key
Expand All @@ -128,7 +128,7 @@ jobs:

- name: Cache NetCDF Fortran library
id: cache-netcdf-fortran
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: /home/runner/netcdf-fortran
key: cache-netcdf-fortran-${{matrix.fortran-compiler}}-key
Expand Down Expand Up @@ -208,7 +208,7 @@ jobs:
- name: Download SCM RT baselines
run: |
cd ${dir_bl}
wget https://dtcenter.ucar.edu/ccpp/users/rt/rt-baselines-${{matrix.build-type}}.zip
wget https://dtcenter.ucar.edu/ccpp/rt/rt-baselines-${{matrix.build-type}}.zip
unzip rt-baselines-${{matrix.build-type}}.zip
- name: Compare SCM RT output to baselines
Expand All @@ -223,7 +223,7 @@ jobs:
path: /home/runner/work/ccpp-scm/ccpp-scm/test/scm_rt_out

- name: Upload SCM RTs as GitHub Artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: rt-baselines-${{matrix.build-type}}
path: /home/runner/work/ccpp-scm/ccpp-scm/test/artifact-${{matrix.build-type}}
10 changes: 5 additions & 5 deletions .github/workflows/ci_run_scm_ufs_replay.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
#######################################################################################

- name: Checkout SCM.
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize SCM submodules.
run: git submodule update --init --recursive
Expand All @@ -32,13 +32,13 @@ jobs:
run: sudo apt-get update

- name: Cache conda
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/conda_pkgs_dir
key: conda-pkgs

- name: Setup python.
uses: conda-incubator/setup-miniconda@v2
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: env_ufsreplay
environment-file: environment-ufsreplay.yml
Expand All @@ -51,7 +51,7 @@ jobs:
#######################################################################################

- name: Cache UWM regression test output.
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${dir_rt_cache}
key: ufs-rt-files
Expand All @@ -72,4 +72,4 @@ jobs:
#######################################################################################
# Done
#######################################################################################
#######################################################################################
6 changes: 3 additions & 3 deletions .github/workflows/ci_scm_ccpp_prebuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ jobs:
steps:

- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Initialize submodules
run: git submodule update --init --recursive

- name: Set up Python 3.8.5
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: 3.8.5

Expand Down
2 changes: 1 addition & 1 deletion ccpp/framework
Submodule framework updated 41 files
+6 −2 .github/workflows/capgen_unit_tests.yaml
+20 −0 .github/workflows/prebuild.yaml
+17 −1 scripts/ccpp_prebuild.py
+21 −13 scripts/ccpp_track_variables.py
+2 −0 scripts/common.py
+16 −3 scripts/metadata_parser.py
+126 −34 scripts/mkcap.py
+163 −71 scripts/mkstatic.py
+1 −1 src/CMakeLists.txt
+4 −0 src/ccpp_types.F90
+6 −0 src/ccpp_types.meta
+10 −0 test_prebuild/run_all_tests.sh
+2 −2 test_prebuild/test_blocked_data/CMakeLists.txt
+11 −0 test_prebuild/test_blocked_data/run_test.sh
+2 −2 test_prebuild/test_chunked_data/CMakeLists.txt
+4 −2 test_prebuild/test_chunked_data/main.F90
+13 −0 test_prebuild/test_chunked_data/run_test.sh
+98 −0 test_prebuild/test_opt_arg/CMakeLists.txt
+13 −0 test_prebuild/test_opt_arg/ccpp_kinds.F90
+15 −0 test_prebuild/test_opt_arg/ccpp_kinds.meta
+81 −0 test_prebuild/test_opt_arg/ccpp_prebuild_config.py
+23 −0 test_prebuild/test_opt_arg/data.F90
+46 −0 test_prebuild/test_opt_arg/data.meta
+119 −0 test_prebuild/test_opt_arg/main.F90
+90 −0 test_prebuild/test_opt_arg/opt_arg_scheme.F90
+157 −0 test_prebuild/test_opt_arg/opt_arg_scheme.meta
+13 −0 test_prebuild/test_opt_arg/run_test.sh
+9 −0 test_prebuild/test_opt_arg/suite_opt_arg_suite.xml
+130 −0 test_prebuild/test_track_variables.py
+69 −0 test_prebuild/test_track_variables/ccpp_prebuild_config.py
+25 −0 test_prebuild/test_track_variables/scheme_1.meta
+87 −0 test_prebuild/test_track_variables/scheme_2.meta
+143 −0 test_prebuild/test_track_variables/scheme_3.meta
+31 −0 test_prebuild/test_track_variables/scheme_4.meta
+31 −0 test_prebuild/test_track_variables/scheme_A.meta
+48 −0 test_prebuild/test_track_variables/scheme_B.meta
+24 −0 test_prebuild/test_track_variables/suite_TEST_SUITE.xml
+14 −0 test_prebuild/test_track_variables/suite_small_suite.xml
+10 −0 test_prebuild/unit_tests/run_tests.sh
+0 −0 test_prebuild/unit_tests/test_metadata_parser.py
+0 −0 test_prebuild/unit_tests/test_mkstatic.py
2 changes: 1 addition & 1 deletion ccpp/physics
Submodule physics updated 203 files
21 changes: 10 additions & 11 deletions scm/etc/modules/hera_gnu.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,23 @@ the NOAA RDHPC machine Hera using GNU 9.2.0

whatis([===[Loads libraries needed for building the CCPP SCM on Hera with GNU compilers ]===])

prepend_path("MODULEPATH", "/scratch1/NCEPDEV/jcsda/jedipara/spack-stack/modulefiles")

load("cmake/3.28.1")
load("miniconda/3.9.12")
prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/installs/gnu/modulefiles")
prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/installs/openmpi/modulefiles")
prepend_path("MODULEPATH", "/scratch2/NCEPDEV/stmp1/role.epic/spack-stack/spack-stack-1.6.0_gnu13/envs/ufs-wm-srw-rocky8/install/modulefiles/Core")

prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.5.1/envs/unified-env-rocky8/install/modulefiles/Core")

load("stack-gcc/9.2.0")
load("stack-openmpi/4.1.5")
load("stack-python/3.10.8")
load("stack-gcc/13.3.0")
load("stack-openmpi/4.1.6")
load("cmake/3.23.1")
load("stack-python/3.10.13")
load("py-f90nml")
load("py-netcdf4/1.5.8")

load("netcdf-c/4.9.2")
load("netcdf-fortran/4.6.0")
load("netcdf-fortran/4.6.1")
load("bacio/2.4.1")
load("sp/2.3.3")
load("w3emc")
load("sp/2.5.0")
load("w3emc/2.10.0")

setenv("CMAKE_C_COMPILER","mpicc")
setenv("CMAKE_CXX_COMPILER","mpicxx")
Expand Down
15 changes: 6 additions & 9 deletions scm/etc/modules/hera_intel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,20 @@ the NOAA RDHPC machine Hera using Intel-2021.5.0

whatis([===[Loads libraries needed for building the CCPP SCM on Hera with Intel compilers ]===])

prepend_path("MODULEPATH", "/scratch1/NCEPDEV/jcsda/jedipara/spack-stack/modulefiles")
load("cmake/3.28.1")
load("miniconda/3.9.12")

prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.5.1/envs/unified-env-rocky8/install/modulefiles/Core")
prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/spack-stack/spack-stack-1.6.0/envs/unified-env-rocky8/install/modulefiles/Core")

load("stack-intel/2021.5.0")
load("stack-intel-oneapi-mpi/2021.5.1")
load("stack-python/3.10.8")
load("cmake/3.23.1")
load("stack-python/3.10.13")
load("py-f90nml")
load("py-netcdf4/1.5.8")

load("netcdf-c/4.9.2")
load("netcdf-fortran/4.6.0")
load("netcdf-fortran/4.6.1")
load("bacio/2.4.1")
load("sp/2.3.3")
load("w3emc")
load("sp/2.5.0")
load("w3emc/2.10.0")

setenv("CMAKE_C_COMPILER","mpiicc")
setenv("CMAKE_CXX_COMPILER","mpiicpc")
Expand Down
8 changes: 4 additions & 4 deletions scm/src/CCPP_typedefs.meta
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@
dimensions = (horizontal_loop_extent,4)
type = real
kind = kind_phys
active = (control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 33)
active = (control_for_drag_suite_gravity_wave_drag == 2 .or. control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 22 .or. control_for_drag_suite_gravity_wave_drag == 33)
[cmm_water]
standard_name = surface_drag_wind_speed_for_momentum_in_air_over_water
long_name = momentum exchange coefficient over water
Expand Down Expand Up @@ -1526,15 +1526,15 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 33)
active = (control_for_drag_suite_gravity_wave_drag == 2 .or. control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 22 .or. control_for_drag_suite_gravity_wave_drag == 33)
[oa4ss]
standard_name = asymmetry_of_subgrid_orography_small_scale
long_name = asymmetry of subgrid height_above_mean_sea_level small scale
units = none
dimensions = (horizontal_loop_extent,4)
type = real
kind = kind_phys
active = (control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 33)
active = (control_for_drag_suite_gravity_wave_drag == 2 .or. control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 22 .or. control_for_drag_suite_gravity_wave_drag == 33)
[oc]
standard_name = convexity_of_subgrid_orography
long_name = convexity of subgrid height_above_mean_sea_level
Expand All @@ -1549,7 +1549,7 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 33)
active = (control_for_drag_suite_gravity_wave_drag == 2 .or. control_for_drag_suite_gravity_wave_drag == 3 .or. control_for_drag_suite_gravity_wave_drag == 22 .or. control_for_drag_suite_gravity_wave_drag == 33)
[olyr]
standard_name = ozone_concentration_at_layer_for_radiation
long_name = ozone concentration layer
Expand Down
Loading

0 comments on commit ab270c2

Please sign in to comment.