diff --git a/CMakeLists.txt b/CMakeLists.txt index 4278cc9f8..6a0d1a345 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -74,7 +74,7 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -fbacktrace") if(${CMAKE_Fortran_COMPILER_VERSION} VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-invalid-boz") endif() set(CMAKE_Fortran_FLAGS_RELEASE "-O3") set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -ggdb -Wall -fcheck=all") diff --git a/reg_tests/cpld_gridgen/RegressionTests_hera.intel.log b/reg_tests/cpld_gridgen/RegressionTests_hera.intel.log index 6e9632d61..1a9a8954d 100644 --- a/reg_tests/cpld_gridgen/RegressionTests_hera.intel.log +++ b/reg_tests/cpld_gridgen/RegressionTests_hera.intel.log @@ -1,8 +1,8 @@ -Sat Apr 23 17:52:41 UTC 2022 +Thu Oct 26 17:23:32 UTC 2023 Start Regression test -Working dir = /scratch1/NCEPDEV/stmp4/Minsuk.Ji/CPLD_GRIDGEN/rt_142841/025 -Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025 +Working dir = /scratch1/NCEPDEV/stmp4/Denise.Worthen/CPLD_GRIDGEN/rt_198243/025 +Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025.new Checking test 025 results .... Comparing Bu.mx025_SCRIP.nc........OK @@ -20,11 +20,26 @@ Comparing Cv.mx025_SCRIP.nc........OK Comparing grid_cice_NEMS_mx025.nc........OK Comparing kmtu_cice_NEMS_mx025.nc........OK Comparing mesh.mx025.nc........OK +Comparing rect.0p25_SCRIP.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx025.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx025.nc........OK -Working dir = /scratch1/NCEPDEV/stmp4/Minsuk.Ji/CPLD_GRIDGEN/rt_142841/050 -Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050 +Working dir = /scratch1/NCEPDEV/stmp4/Denise.Worthen/CPLD_GRIDGEN/rt_198243/050 +Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050.new Checking test 050 results .... Comparing Bu.mx050_SCRIP.nc........OK @@ -43,12 +58,24 @@ Comparing Cv.mx050_SCRIP.nc........OK Comparing grid_cice_NEMS_mx050.nc........OK Comparing kmtu_cice_NEMS_mx050.nc........OK Comparing mesh.mx050.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx050.Ct.neareststod.nc........OK +Comparing tripole.mx050.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx050.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx050.nc........OK -Working dir = /scratch1/NCEPDEV/stmp4/Minsuk.Ji/CPLD_GRIDGEN/rt_142841/100 -Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100 +Working dir = /scratch1/NCEPDEV/stmp4/Denise.Worthen/CPLD_GRIDGEN/rt_198243/100 +Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100.new Checking test 100 results .... Comparing Bu.mx100_SCRIP.nc........OK @@ -67,10 +94,50 @@ Comparing Cv.mx100_SCRIP.nc........OK Comparing grid_cice_NEMS_mx100.nc........OK Comparing kmtu_cice_NEMS_mx100.nc........OK Comparing mesh.mx100.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx100.Ct.neareststod.nc........OK +Comparing tripole.mx100.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx100.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx100.nc........OK Comparing ufs.topo_edits_011818.nc........OK +Working dir = /scratch1/NCEPDEV/stmp4/Denise.Worthen/CPLD_GRIDGEN/rt_198243/500 +Baseline dir = /scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/500.new + +Checking test 500 results .... +Comparing Bu.mx500_SCRIP.nc........OK +Comparing C48.mx500.tile1.nc........OK +Comparing C48.mx500.tile2.nc........OK +Comparing C48.mx500.tile3.nc........OK +Comparing C48.mx500.tile4.nc........OK +Comparing C48.mx500.tile5.nc........OK +Comparing C48.mx500.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx500_SCRIP_land.nc........OK +Comparing Ct.mx500_SCRIP.nc........OK +Comparing Ct.mx500.to.C48.nc........OK +Comparing Cu.mx500_SCRIP.nc........OK +Comparing Cv.mx500_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx500.nc........OK +Comparing kmtu_cice_NEMS_mx500.nc........OK +Comparing mesh.mx500.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx500.Ct.neareststod.nc........OK +Comparing tripole.mx500.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx500.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.nc........OK + + REGRESSION TEST WAS SUCCESSFUL -Sat Apr 23 17:57:15 UTC 2022 +Thu Oct 26 17:46:20 UTC 2023 +Elapsed time: 00h:24m:25s. Have a nice day! diff --git a/reg_tests/cpld_gridgen/RegressionTests_jet.intel.log b/reg_tests/cpld_gridgen/RegressionTests_jet.intel.log index 88b074661..a0d8ca735 100644 --- a/reg_tests/cpld_gridgen/RegressionTests_jet.intel.log +++ b/reg_tests/cpld_gridgen/RegressionTests_jet.intel.log @@ -1,8 +1,8 @@ -Mon Apr 25 14:59:30 GMT 2022 +Thu Oct 26 18:20:27 UTC 2023 Start Regression test -Working dir = /lfs4/HFIP/h-nems//Minsuk.Ji/CPLD_GRIDGEN/rt_25376/025 -Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025 +Working dir = /lfs4/HFIP/h-nems/Denise.Worthen/CPLD_GRIDGEN/rt_55026/025 +Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025.new Checking test 025 results .... Comparing Bu.mx025_SCRIP.nc........OK @@ -20,11 +20,26 @@ Comparing Cv.mx025_SCRIP.nc........OK Comparing grid_cice_NEMS_mx025.nc........OK Comparing kmtu_cice_NEMS_mx025.nc........OK Comparing mesh.mx025.nc........OK +Comparing rect.0p25_SCRIP.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx025.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx025.nc........OK -Working dir = /lfs4/HFIP/h-nems//Minsuk.Ji/CPLD_GRIDGEN/rt_25376/050 -Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050 +Working dir = /lfs4/HFIP/h-nems/Denise.Worthen/CPLD_GRIDGEN/rt_55026/050 +Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050.new Checking test 050 results .... Comparing Bu.mx050_SCRIP.nc........OK @@ -43,12 +58,24 @@ Comparing Cv.mx050_SCRIP.nc........OK Comparing grid_cice_NEMS_mx050.nc........OK Comparing kmtu_cice_NEMS_mx050.nc........OK Comparing mesh.mx050.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx050.Ct.neareststod.nc........OK +Comparing tripole.mx050.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx050.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx050.nc........OK -Working dir = /lfs4/HFIP/h-nems//Minsuk.Ji/CPLD_GRIDGEN/rt_25376/100 -Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100 +Working dir = /lfs4/HFIP/h-nems/Denise.Worthen/CPLD_GRIDGEN/rt_55026/100 +Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100.new Checking test 100 results .... Comparing Bu.mx100_SCRIP.nc........OK @@ -67,10 +94,50 @@ Comparing Cv.mx100_SCRIP.nc........OK Comparing grid_cice_NEMS_mx100.nc........OK Comparing kmtu_cice_NEMS_mx100.nc........OK Comparing mesh.mx100.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx100.Ct.neareststod.nc........OK +Comparing tripole.mx100.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx100.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx100.nc........OK Comparing ufs.topo_edits_011818.nc........OK +Working dir = /lfs4/HFIP/h-nems/Denise.Worthen/CPLD_GRIDGEN/rt_55026/500 +Baseline dir = /lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data/500.new + +Checking test 500 results .... +Comparing Bu.mx500_SCRIP.nc........OK +Comparing C48.mx500.tile1.nc........OK +Comparing C48.mx500.tile2.nc........OK +Comparing C48.mx500.tile3.nc........OK +Comparing C48.mx500.tile4.nc........OK +Comparing C48.mx500.tile5.nc........OK +Comparing C48.mx500.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx500.to.C48.nc........OK +Comparing Ct.mx500_SCRIP.nc........OK +Comparing Ct.mx500_SCRIP_land.nc........OK +Comparing Cu.mx500_SCRIP.nc........OK +Comparing Cv.mx500_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx500.nc........OK +Comparing kmtu_cice_NEMS_mx500.nc........OK +Comparing mesh.mx500.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx500.Ct.neareststod.nc........OK +Comparing tripole.mx500.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx500.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.nc........OK + + REGRESSION TEST WAS SUCCESSFUL -Mon Apr 25 15:07:31 GMT 2022 +Thu Oct 26 18:50:56 UTC 2023 +Elapsed time: 00h:32m:10s. Have a nice day! diff --git a/reg_tests/cpld_gridgen/RegressionTests_orion.intel.log b/reg_tests/cpld_gridgen/RegressionTests_orion.intel.log index 2a7e3b8e0..ff7816ef9 100644 --- a/reg_tests/cpld_gridgen/RegressionTests_orion.intel.log +++ b/reg_tests/cpld_gridgen/RegressionTests_orion.intel.log @@ -1,8 +1,8 @@ -Sat Apr 23 12:52:18 CDT 2022 +Thu Oct 26 13:21:30 CDT 2023 Start Regression test -Working dir = /work/noaa/stmp/jminsuk/CPLD_GRIDGEN/rt_614/025 -Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025 +Working dir = /work/noaa/stmp/dworthen/CPLD_GRIDGEN/rt_121164/025 +Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/025.new Checking test 025 results .... Comparing Bu.mx025_SCRIP.nc........OK @@ -20,11 +20,26 @@ Comparing Cv.mx025_SCRIP.nc........OK Comparing grid_cice_NEMS_mx025.nc........OK Comparing kmtu_cice_NEMS_mx025.nc........OK Comparing mesh.mx025.nc........OK +Comparing rect.0p25_SCRIP.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx025.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx025.nc........OK -Working dir = /work/noaa/stmp/jminsuk/CPLD_GRIDGEN/rt_614/050 -Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050 +Working dir = /work/noaa/stmp/dworthen/CPLD_GRIDGEN/rt_121164/050 +Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/050.new Checking test 050 results .... Comparing Bu.mx050_SCRIP.nc........OK @@ -43,12 +58,24 @@ Comparing Cv.mx050_SCRIP.nc........OK Comparing grid_cice_NEMS_mx050.nc........OK Comparing kmtu_cice_NEMS_mx050.nc........OK Comparing mesh.mx050.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx050.Ct.neareststod.nc........OK +Comparing tripole.mx050.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx050.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx050.nc........OK -Working dir = /work/noaa/stmp/jminsuk/CPLD_GRIDGEN/rt_614/100 -Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100 +Working dir = /work/noaa/stmp/dworthen/CPLD_GRIDGEN/rt_121164/100 +Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/100.new Checking test 100 results .... Comparing Bu.mx100_SCRIP.nc........OK @@ -67,10 +94,50 @@ Comparing Cv.mx100_SCRIP.nc........OK Comparing grid_cice_NEMS_mx100.nc........OK Comparing kmtu_cice_NEMS_mx100.nc........OK Comparing mesh.mx100.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK Comparing tripole.mx025.Ct.to.mx100.Ct.neareststod.nc........OK +Comparing tripole.mx100.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx100.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Cv.to.Ct.bilinear.nc........OK Comparing tripole.mx100.nc........OK Comparing ufs.topo_edits_011818.nc........OK +Working dir = /work/noaa/stmp/dworthen/CPLD_GRIDGEN/rt_121164/500 +Baseline dir = /work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data/500.new + +Checking test 500 results .... +Comparing Bu.mx500_SCRIP.nc........OK +Comparing C48.mx500.tile1.nc........OK +Comparing C48.mx500.tile2.nc........OK +Comparing C48.mx500.tile3.nc........OK +Comparing C48.mx500.tile4.nc........OK +Comparing C48.mx500.tile5.nc........OK +Comparing C48.mx500.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx500_SCRIP_land.nc........OK +Comparing Ct.mx500_SCRIP.nc........OK +Comparing Ct.mx500.to.C48.nc........OK +Comparing Cu.mx500_SCRIP.nc........OK +Comparing Cv.mx500_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx500.nc........OK +Comparing kmtu_cice_NEMS_mx500.nc........OK +Comparing mesh.mx500.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx500.Ct.neareststod.nc........OK +Comparing tripole.mx500.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx500.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.nc........OK + + REGRESSION TEST WAS SUCCESSFUL -Sat Apr 23 12:56:51 CDT 2022 +Thu Oct 26 13:41:16 CDT 2023 +Elapsed time: 00h:21m:06s. Have a nice day! diff --git a/reg_tests/cpld_gridgen/RegressionTests_wcoss2.intel.log b/reg_tests/cpld_gridgen/RegressionTests_wcoss2.intel.log new file mode 100644 index 000000000..08cef51ad --- /dev/null +++ b/reg_tests/cpld_gridgen/RegressionTests_wcoss2.intel.log @@ -0,0 +1,143 @@ +Thu Oct 26 18:28:37 UTC 2023 +Start Regression test + +Working dir = /lfs/h2/emc/stmp/denise.worthen/CPLD_GRIDGEN/rt_155737/025 +Baseline dir = /lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/baseline_data/025.new + +Checking test 025 results .... +Comparing Bu.mx025_SCRIP.nc........OK +Comparing C384.mx025.tile1.nc........OK +Comparing C384.mx025.tile2.nc........OK +Comparing C384.mx025.tile3.nc........OK +Comparing C384.mx025.tile4.nc........OK +Comparing C384.mx025.tile5.nc........OK +Comparing C384.mx025.tile6.nc........OK +Comparing Ct.mx025_SCRIP_land.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx025.to.C384.nc........OK +Comparing Cu.mx025_SCRIP.nc........OK +Comparing Cv.mx025_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx025.nc........OK +Comparing kmtu_cice_NEMS_mx025.nc........OK +Comparing mesh.mx025.nc........OK +Comparing rect.0p25_SCRIP.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p25.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx025.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx025.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx025.nc........OK + + +Working dir = /lfs/h2/emc/stmp/denise.worthen/CPLD_GRIDGEN/rt_155737/050 +Baseline dir = /lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/baseline_data/050.new + +Checking test 050 results .... +Comparing Bu.mx050_SCRIP.nc........OK +Comparing C192.mx050.tile1.nc........OK +Comparing C192.mx050.tile2.nc........OK +Comparing C192.mx050.tile3.nc........OK +Comparing C192.mx050.tile4.nc........OK +Comparing C192.mx050.tile5.nc........OK +Comparing C192.mx050.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx050_SCRIP_land.nc........OK +Comparing Ct.mx050_SCRIP.nc........OK +Comparing Ct.mx050.to.C192.nc........OK +Comparing Cu.mx050_SCRIP.nc........OK +Comparing Cv.mx050_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx050.nc........OK +Comparing kmtu_cice_NEMS_mx050.nc........OK +Comparing mesh.mx050.nc........OK +Comparing rect.0p5_SCRIP.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx050.Ct.neareststod.nc........OK +Comparing tripole.mx050.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.0p5.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx050.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx050.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx050.nc........OK + + +Working dir = /lfs/h2/emc/stmp/denise.worthen/CPLD_GRIDGEN/rt_155737/100 +Baseline dir = /lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/baseline_data/100.new + +Checking test 100 results .... +Comparing Bu.mx100_SCRIP.nc........OK +Comparing C96.mx100.tile1.nc........OK +Comparing C96.mx100.tile2.nc........OK +Comparing C96.mx100.tile3.nc........OK +Comparing C96.mx100.tile4.nc........OK +Comparing C96.mx100.tile5.nc........OK +Comparing C96.mx100.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx100_SCRIP_land.nc........OK +Comparing Ct.mx100_SCRIP.nc........OK +Comparing Ct.mx100.to.C96.nc........OK +Comparing Cu.mx100_SCRIP.nc........OK +Comparing Cv.mx100_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx100.nc........OK +Comparing kmtu_cice_NEMS_mx100.nc........OK +Comparing mesh.mx100.nc........OK +Comparing rect.1p0_SCRIP.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx100.Ct.neareststod.nc........OK +Comparing tripole.mx100.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.1p0.conserve.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx100.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx100.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx100.nc........OK +Comparing ufs.topo_edits_011818.nc........OK + + +Working dir = /lfs/h2/emc/stmp/denise.worthen/CPLD_GRIDGEN/rt_155737/500 +Baseline dir = /lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/baseline_data/500.new + +Checking test 500 results .... +Comparing Bu.mx500_SCRIP.nc........OK +Comparing C48.mx500.tile1.nc........OK +Comparing C48.mx500.tile2.nc........OK +Comparing C48.mx500.tile3.nc........OK +Comparing C48.mx500.tile4.nc........OK +Comparing C48.mx500.tile5.nc........OK +Comparing C48.mx500.tile6.nc........OK +Comparing Ct.mx025_SCRIP.nc........OK +Comparing Ct.mx500_SCRIP_land.nc........OK +Comparing Ct.mx500_SCRIP.nc........OK +Comparing Ct.mx500.to.C48.nc........OK +Comparing Cu.mx500_SCRIP.nc........OK +Comparing Cv.mx500_SCRIP.nc........OK +Comparing grid_cice_NEMS_mx500.nc........OK +Comparing kmtu_cice_NEMS_mx500.nc........OK +Comparing mesh.mx500.nc........OK +Comparing rect.5p0_SCRIP.nc........OK +Comparing tripole.mx025.Ct.to.mx500.Ct.neareststod.nc........OK +Comparing tripole.mx500.Bu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.bilinear.nc........OK +Comparing tripole.mx500.Ct.to.rect.5p0.conserve.nc........OK +Comparing tripole.mx500.Cu.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.Cv.to.Ct.bilinear.nc........OK +Comparing tripole.mx500.nc........OK + + +REGRESSION TEST WAS SUCCESSFUL +Thu Oct 26 18:48:08 UTC 2023 +Elapsed time: 00h:20m:34s. Have a nice day! diff --git a/reg_tests/cpld_gridgen/rt.conf b/reg_tests/cpld_gridgen/rt.conf index 64b2a617f..d40b4d815 100644 --- a/reg_tests/cpld_gridgen/rt.conf +++ b/reg_tests/cpld_gridgen/rt.conf @@ -9,6 +9,7 @@ C384_025 | C192_050 | C384_025 C096_100 | C384_025 + C048_500 | C384_025 ################################################################# # Non-baseline configurations. diff --git a/reg_tests/cpld_gridgen/rt.sh b/reg_tests/cpld_gridgen/rt.sh index b08cbac7c..49f353963 100755 --- a/reg_tests/cpld_gridgen/rt.sh +++ b/reg_tests/cpld_gridgen/rt.sh @@ -108,7 +108,7 @@ TESTS_FILE="$PATHRT/rt.conf" export TEST_NAME= # for C3072 on hera, use WLCLK=60 and MEM="--exclusive" -WLCLK_dflt=10 +WLCLK_dflt=15 export WLCLK=$WLCLK_dflt MEM_dflt="--mem=12g" export MEM=$MEM_dflt @@ -125,7 +125,7 @@ rm -f fail_test* $COMPILE_LOG run_*.log nccmp_*.log summary.log if [[ $target = wcoss2 ]]; then STMP=${STMP:-/lfs/h2/emc/stmp/$USER} - export MOM6_FIXDIR=/lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/fix_mom6 + export MOM6_FIXDIR=/lfs/h2/emc/global/noscrub/emc.global/FIX/fix/mom6/20220805 BASELINE_ROOT=/lfs/h2/emc/nems/noscrub/emc.nems/UFS_UTILS/reg_tests/cpld_gridgen/baseline_data ACCOUNT=${ACCOUNT:-GFS-DEV} export APRUN="mpiexec -n 1 -ppn 1 --cpu-bind core" @@ -134,7 +134,7 @@ if [[ $target = wcoss2 ]]; then NCCMP=/lfs/h2/emc/global/noscrub/George.Gayno/util/nccmp/nccmp-1.8.5.0/src/nccmp elif [[ $target = hera ]]; then STMP=${STMP:-/scratch1/NCEPDEV/stmp4/$USER} - export MOM6_FIXDIR=/scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/fix_mom6 + export MOM6_FIXDIR=/scratch1/NCEPDEV/global/glopara/fix/mom6/20220805 BASELINE_ROOT=/scratch1/NCEPDEV/nems/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data ACCOUNT=${ACCOUNT:-nems} QUEUE=${QUEUE:-batch} @@ -143,7 +143,7 @@ elif [[ $target = hera ]]; then SBATCH_COMMAND="./cpld_gridgen.sh" elif [[ $target = orion ]]; then STMP=${STMP:-/work/noaa/stmp/$USER} - export MOM6_FIXDIR=/work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/fix_mom6 + export MOM6_FIXDIR=/work/noaa/global/glopara/fix/mom6/20220805 BASELINE_ROOT=/work/noaa/nems/role-nems/ufs_utils/reg_tests/cpld_gridgen/baseline_data ACCOUNT=${ACCOUNT:-nems} QUEUE=${QUEUE:-batch} @@ -153,13 +153,14 @@ elif [[ $target = orion ]]; then SBATCH_COMMAND="./cpld_gridgen.sh" elif [[ $target = jet ]]; then STMP=${STMP:-/lfs4/HFIP/h-nems/$USER} - export MOM6_FIXDIR=/lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/fix_mom6 + export MOM6_FIXDIR=/lfs4/HFIP/hfv3gfs/glopara/git/fv3gfs/fix/mom6/20220805 BASELINE_ROOT=/lfs4/HFIP/hfv3gfs/emc.nemspara/role.ufsutils/ufs_utils/reg_tests/cpld_gridgen/baseline_data ACCOUNT=${ACCOUNT:-h-nems} QUEUE=${QUEUE:-batch} NCCMP=nccmp PARTITION=xjet ulimit -s unlimited + WLCLK=25 SBATCH_COMMAND="./cpld_gridgen.sh" fi NEW_BASELINE_ROOT=$STMP/CPLD_GRIDGEN/BASELINE diff --git a/sorc/chgres_cube.fd/CMakeLists.txt b/sorc/chgres_cube.fd/CMakeLists.txt index e7e3c49cd..53fe3644d 100644 --- a/sorc/chgres_cube.fd/CMakeLists.txt +++ b/sorc/chgres_cube.fd/CMakeLists.txt @@ -29,11 +29,6 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -r8 -assume byterecl") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -ffree-line-length-0 -fdefault-real-8") - - # Turn on this argument mismatch flag for gfortran10. - if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch") - endif() endif() set(exe_name chgres_cube) diff --git a/sorc/chgres_cube.fd/atm_input_data.F90 b/sorc/chgres_cube.fd/atm_input_data.F90 index bcb0e3782..7d995ee0a 100644 --- a/sorc/chgres_cube.fd/atm_input_data.F90 +++ b/sorc/chgres_cube.fd/atm_input_data.F90 @@ -1294,7 +1294,7 @@ end subroutine read_input_atm_restart_file !! @author George Gayno NCEP/EMC subroutine read_input_atm_gaussian_netcdf_file(localpet) - use mpi + use mpi_f08 implicit none @@ -1678,7 +1678,7 @@ end subroutine read_input_atm_gaussian_netcdf_file !! @author George Gayno NCEP/EMC subroutine read_input_atm_tiled_history_file(localpet) - use mpi + use mpi_f08 implicit none @@ -1969,7 +1969,7 @@ end subroutine read_input_atm_tiled_history_file !! @author George Gayno NCEP/EMC subroutine read_input_atm_grib2_file(localpet) - use mpi + use mpi_f08 use grib_mod use grib2_util, only : rh2spfh, rh2spfh_gfs, convert_omega diff --git a/sorc/chgres_cube.fd/atmosphere.F90 b/sorc/chgres_cube.fd/atmosphere.F90 index 68281e94c..c13e709b6 100644 --- a/sorc/chgres_cube.fd/atmosphere.F90 +++ b/sorc/chgres_cube.fd/atmosphere.F90 @@ -117,7 +117,7 @@ module atmosphere !! @author George Gayno subroutine atmosphere_driver(localpet) - use mpi + use mpi_f08 implicit none @@ -1761,7 +1761,7 @@ END SUBROUTINE VINTG_WAM !! !! @author Mark Iredell @date 92-10-31 SUBROUTINE VINTG - use mpi + use mpi_f08 IMPLICIT NONE diff --git a/sorc/chgres_cube.fd/chgres.F90 b/sorc/chgres_cube.fd/chgres.F90 index 8b01656f2..ba1a0394c 100644 --- a/sorc/chgres_cube.fd/chgres.F90 +++ b/sorc/chgres_cube.fd/chgres.F90 @@ -23,7 +23,7 @@ !! @return 0 for success, error code otherwise. program chgres - use mpi + use mpi_f08 use esmf use atmosphere, only : atmosphere_driver diff --git a/sorc/chgres_cube.fd/msis2.1.fd/msis_init.F90 b/sorc/chgres_cube.fd/msis2.1.fd/msis_init.F90 index e6dd54b25..5f4da6f25 100644 --- a/sorc/chgres_cube.fd/msis2.1.fd/msis_init.F90 +++ b/sorc/chgres_cube.fd/msis2.1.fd/msis_init.F90 @@ -370,7 +370,7 @@ end subroutine initparmspace !================================================================================================== subroutine loadparmset(name,iun) - use mpi + use mpi_f08 use msis_constants, only : maxnbf, csfxmod diff --git a/sorc/chgres_cube.fd/search_util.F90 b/sorc/chgres_cube.fd/search_util.F90 index fbab5e209..fbafcda32 100644 --- a/sorc/chgres_cube.fd/search_util.F90 +++ b/sorc/chgres_cube.fd/search_util.F90 @@ -45,7 +45,7 @@ module search_util !! @author George Gayno NCEP/EMC subroutine search (field, mask, idim, jdim, tile, field_num, latitude, terrain_land, soilt_climo) - use mpi + use mpi_f08 use esmf implicit none diff --git a/sorc/chgres_cube.fd/sfc_input_data.F90 b/sorc/chgres_cube.fd/sfc_input_data.F90 index 4ea4d7629..c5d5d7c0f 100644 --- a/sorc/chgres_cube.fd/sfc_input_data.F90 +++ b/sorc/chgres_cube.fd/sfc_input_data.F90 @@ -1762,7 +1762,7 @@ end subroutine read_input_sfc_netcdf_file !! @author Larissa Reames subroutine read_input_sfc_grib2_file(localpet) - use mpi + use mpi_f08 use grib_mod use program_setup, only : vgtyp_from_climo, sotyp_from_climo use model_grid, only : input_grid_type diff --git a/sorc/chgres_cube.fd/surface.F90 b/sorc/chgres_cube.fd/surface.F90 index b77f83f80..37ef6dc61 100644 --- a/sorc/chgres_cube.fd/surface.F90 +++ b/sorc/chgres_cube.fd/surface.F90 @@ -247,7 +247,7 @@ end subroutine surface_driver !! @author George Gayno NOAA/EMC subroutine interp(localpet) - use mpi + use mpi_f08 use esmf use sfc_input_data, only : canopy_mc_input_grid, & diff --git a/sorc/chgres_cube.fd/utils.F90 b/sorc/chgres_cube.fd/utils.F90 index c46540c5e..2f2eccc1b 100644 --- a/sorc/chgres_cube.fd/utils.F90 +++ b/sorc/chgres_cube.fd/utils.F90 @@ -11,7 +11,7 @@ module utilities !! @param[in] rc error status code subroutine error_handler(string, rc) - use mpi + use mpi_f08 implicit none @@ -33,7 +33,7 @@ end subroutine error_handler !! @param[in] string error message subroutine netcdf_err( err, string ) - use mpi + use mpi_f08 use netcdf implicit none diff --git a/sorc/cpld_gridgen.fd/CMakeLists.txt b/sorc/cpld_gridgen.fd/CMakeLists.txt index 0cdfc3540..c4e99ae63 100644 --- a/sorc/cpld_gridgen.fd/CMakeLists.txt +++ b/sorc/cpld_gridgen.fd/CMakeLists.txt @@ -25,11 +25,6 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -r8 -assume byterecl") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -ffree-line-length-0 -fdefault-real-8") - - # Turn on this argument mismatch flag for gfortran10. - if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch") - endif() endif() set(exe_name cpld_gridgen) diff --git a/sorc/cpld_gridgen.fd/charstrings.F90 b/sorc/cpld_gridgen.fd/charstrings.F90 index 00deab1b4..0e7b5a19b 100644 --- a/sorc/cpld_gridgen.fd/charstrings.F90 +++ b/sorc/cpld_gridgen.fd/charstrings.F90 @@ -15,7 +15,7 @@ module charstrings character(len=CL) :: dirout !< The directory where output files will be written character(len=CL) :: fv3dir !< The directory containing the FV3 mosaic files character(len=CS) :: res !< The Ocean/Ice resolution, e.g. 500 (5deg), 100 (1deg) - !! 050 (1/2deg), 025 (1/4deg) + !! 050 (1/2deg), 025 (1/4deg) character(len=CS) :: atmres !< The ATM resolution, e.g. C96, C192, C384 character(len=CL) :: logmsg !< An informational message diff --git a/sorc/cpld_gridgen.fd/gen_fixgrid.F90 b/sorc/cpld_gridgen.fd/gen_fixgrid.F90 index 2fcffb126..36f118eed 100644 --- a/sorc/cpld_gridgen.fd/gen_fixgrid.F90 +++ b/sorc/cpld_gridgen.fd/gen_fixgrid.F90 @@ -169,17 +169,22 @@ program gen_fixgrid if(xtype.eq. 6)dp4 = real(dp8,4) - !print *,minval(dp8),maxval(dp8) - !print *,minval(dp4),maxval(dp4) - if(editmask)then !--------------------------------------------------------------------- - ! apply topoedits run time mask changes if required for this config + ! apply topoedits run time mask changes if required for this config + ! this will create a modified topoedits file which accounts for any + ! land mask changes created at run time by MOM6 !--------------------------------------------------------------------- if(trim(editsfile) == 'none')then print '(a)', 'Need a valid editsfile to make mask edits ' - stop + call abort() + end if + inquire(file=trim(dirsrc)//'/'//trim(editsfile),exist=fexist) + if (.not. fexist) then + print '(a)', 'Required topoedits file '//trim(editsfile) & + //'for land mask changes is missing ' + call abort() end if fsrc = trim(dirsrc)//'/'//trim(editsfile) @@ -191,11 +196,22 @@ program gen_fixgrid ! MOM6 reads the depth file, applies the topo edits and then adjusts ! depth using masking_depth and min/max depth. This call mimics ! MOM6 routines apply_topography_edits_from_file and limit_topography + ! If the the topoedits file has been modified to account for MOM6 run + ! time land mask changes (above), then the depth will be created using + ! this modified topoedits file !--------------------------------------------------------------------- - fsrc = trim(dirsrc)//'/'//trim(editsfile) - if(editmask)fsrc = trim(dirout)//'/'//'ufs.'//trim(editsfile) - call apply_topoedits(fsrc) + fsrc = trim(dirsrc)//'/'//trim(editsfile) + if(editmask)fsrc = trim(dirout)//'/'//'ufs.'//trim(editsfile) + + if (trim(editsfile) /= 'none') then + inquire(file=trim(fsrc),exist=fexist) + if (.not. fexist) then + print '(a)', 'Required topoedits file '//trim(fsrc)//' is missing ' + call abort() + end if + end if + call apply_topoedits(fsrc) !--------------------------------------------------------------------- ! read MOM6 supergrid file diff --git a/sorc/cpld_gridgen.fd/postwgts.F90 b/sorc/cpld_gridgen.fd/postwgts.F90 index 4ff0bc0fa..0310d8db9 100644 --- a/sorc/cpld_gridgen.fd/postwgts.F90 +++ b/sorc/cpld_gridgen.fd/postwgts.F90 @@ -29,6 +29,7 @@ subroutine make_postwgts character(len=CM), dimension(2) :: methodname = (/'conserve', 'bilinear'/) + type(ESMF_RouteHandle) :: rh type(ESMF_RegridMethod_Flag) :: method ! the number of possible destination grids depends on the source grid resolution integer :: k,rc,nd,ndest @@ -38,22 +39,25 @@ subroutine make_postwgts ! set the destination grids !--------------------------------------------------------------------- - if(trim(res) .eq. '400')return - - if(trim(res) .eq. '100')then + if(trim(res) .eq. '500')then ndest = 1 allocate(destgrds(ndest)) - destgrds = (/'1p0 '/) + destgrds = (/'5p0 '/) end if - if(trim(res) .eq. '050')then + if(trim(res) .eq. '100')then ndest = 2 allocate(destgrds(ndest)) - destgrds = (/'1p0 ', '0p5 '/) + destgrds = (/'5p0 ', '1p0 '/) end if - if(trim(res) .eq. '025')then + if(trim(res) .eq. '050')then ndest = 3 allocate(destgrds(ndest)) - destgrds = (/'1p0 ', '0p5 ', '0p25'/) + destgrds = (/'5p0 ', '1p0 ', '0p5 '/) + end if + if(trim(res) .eq. '025')then + ndest = 4 + allocate(destgrds(ndest)) + destgrds = (/'5p0 ', '1p0 ', '0p5 ', '0p25'/) end if !--------------------------------------------------------------------- @@ -71,8 +75,8 @@ subroutine make_postwgts print '(a)',trim(logmsg) call ESMF_RegridWeightGen(srcFile=trim(fsrc),dstFile=trim(fdst), & - weightFile=trim(fwgt), regridmethod=method, & - ignoreDegenerate=.true., & + weightFile=trim(fwgt), regridmethod=method, & + ignoreDegenerate=.true., & unmappedaction=ESMF_UNMAPPEDACTION_IGNORE, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=__FILE__)) call ESMF_Finalize(endflag=ESMF_END_ABORT) @@ -98,8 +102,8 @@ subroutine make_postwgts print '(a)',trim(logmsg) call ESMF_RegridWeightGen(srcFile=trim(fsrc),dstFile=trim(fdst), & - weightFile=trim(fwgt), regridmethod=method, & - ignoreDegenerate=.true., & + weightFile=trim(fwgt), regridmethod=method, & + ignoreDegenerate=.true., regridRouteHandle=rh, & unmappedaction=ESMF_UNMAPPEDACTION_IGNORE, rc=rc) if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, & line=__LINE__, file=__FILE__)) call ESMF_Finalize(endflag=ESMF_END_ABORT) diff --git a/sorc/gblevents.fd/CMakeLists.txt b/sorc/gblevents.fd/CMakeLists.txt index ee39d9358..22086de19 100644 --- a/sorc/gblevents.fd/CMakeLists.txt +++ b/sorc/gblevents.fd/CMakeLists.txt @@ -4,6 +4,9 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") set(CMAKE_Fortran_FLAGS_RELEASE "-O3") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fdefault-real-8") + if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch") + endif() set(CMAKE_Fortran_FLAGS_RELEASE "-O3") endif() diff --git a/sorc/lsm_routines.fd/noah.fd/CMakeLists.txt b/sorc/lsm_routines.fd/noah.fd/CMakeLists.txt index b971b9712..daa252e56 100644 --- a/sorc/lsm_routines.fd/noah.fd/CMakeLists.txt +++ b/sorc/lsm_routines.fd/noah.fd/CMakeLists.txt @@ -12,9 +12,6 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -r8 -convert big_endian") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fdefault-real-8 -fconvert=big-endian") - if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch") - endif() endif() set(lib_name noah_lsm_routines) diff --git a/sorc/orog_mask_tools.fd/orog.fd/CMakeLists.txt b/sorc/orog_mask_tools.fd/orog.fd/CMakeLists.txt index 79fefcefb..04ab86742 100644 --- a/sorc/orog_mask_tools.fd/orog.fd/CMakeLists.txt +++ b/sorc/orog_mask_tools.fd/orog.fd/CMakeLists.txt @@ -6,7 +6,7 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fdefault-real-8 -fconvert=big-endian -fno-range-check") if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-invalid-boz") endif() endif() if(ip_VERSION GREATER_EQUAL 4.0.0) diff --git a/sorc/orog_mask_tools.fd/orog_gsl.fd/CMakeLists.txt b/sorc/orog_mask_tools.fd/orog_gsl.fd/CMakeLists.txt index 6499db583..8704e4d54 100644 --- a/sorc/orog_mask_tools.fd/orog_gsl.fd/CMakeLists.txt +++ b/sorc/orog_mask_tools.fd/orog_gsl.fd/CMakeLists.txt @@ -9,7 +9,7 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fdefault-real-8 -fno-range-check") if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz") + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-invalid-boz") endif() endif() diff --git a/sorc/weight_gen.fd/CMakeLists.txt b/sorc/weight_gen.fd/CMakeLists.txt index 8d8e05db7..6871c37cc 100644 --- a/sorc/weight_gen.fd/CMakeLists.txt +++ b/sorc/weight_gen.fd/CMakeLists.txt @@ -6,9 +6,6 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -r8 -i4 -convert big_endian") elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(GNU)$") set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fdefault-real-8") - if(CMAKE_Fortran_COMPILER_VERSION VERSION_GREATER_EQUAL 10) - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch") - endif() endif() set(exe_name weight_gen) diff --git a/ush/cpld_gridgen.sh b/ush/cpld_gridgen.sh index 2573baf6e..2aafd621e 100755 --- a/ush/cpld_gridgen.sh +++ b/ush/cpld_gridgen.sh @@ -21,7 +21,7 @@ function edit_namelist { export RESNAME=${RESNAME:-$1} export DEBUG=.false. export MASKEDIT=.false. -export DO_POSTWGTS=.false. +export DO_POSTWGTS=.true. export OUTDIR_PATH=${OUTDIR_PATH:-/scratch1/NCEPDEV/climate/Denise.Worthen/grids-20220116} export MOSAICDIR_PATH=${MOSAICDIR_PATH:-$PATHTR/fix/orog} if [[ $MOSAICRES == C3072 ]]; then @@ -41,11 +41,7 @@ elif [[ $MOSAICRES == C048 ]]; then export MOSAICRES=C48 export NPX=48 fi -if [ $RESNAME = 500 ]; then - export FIXDIR_PATH=/scratch1/NCEPDEV/global/glopara/fix/mom6/20220805/500/ -else - export FIXDIR_PATH=${MOM6_FIXDIR}/${RESNAME} -fi +export FIXDIR_PATH=${MOM6_FIXDIR}/${RESNAME} APRUN=${APRUN:-"srun"} @@ -54,6 +50,10 @@ if [ $RESNAME = 500 ]; then export NJ=35 export TOPOGFILE=ocean_topog.nc export EDITSFILE='none' + if [ $DO_POSTWGTS == .true. ]; then + #pre-generate SCRIP files for dst rectilinear grids using NCO + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.5p0_SCRIP.nc -G latlon=36,72#lon_typ=grn_ctr#lat_typ=cap + fi fi if [ $RESNAME = 100 ]; then @@ -64,9 +64,8 @@ if [ $RESNAME = 100 ]; then export EDITSFILE=topo_edits_011818.nc if [ $DO_POSTWGTS == .true. ]; then #pre-generate SCRIP files for dst rectilinear grids using NCO - # TODO: is the stagger really correct? The first pt is at 0.0E? - # should lat_type be cap? #lon_typ=grn_ctr#lat_typ=cap - ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.5p0_SCRIP.nc -G latlon=36,72#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr#lat_typ=cap fi fi @@ -77,10 +76,9 @@ if [ $RESNAME = 050 ]; then export EDITSFILE='none' if [ $DO_POSTWGTS == .true. ]; then #pre-generate SCRIP files for dst rectilinear grids using NCO - # TODO: is the stagger really correct? The first pt is at 0.0E? - # should lat_type be cap? #lon_typ=grn_ctr#lat_typ=cap - ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr - ncremap -g ${OUTDIR_PATH}/rect.0p5_SCRIP.nc -G latlon=361,720#lon_typ=grn_ctr + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.5p0_SCRIP.nc -G latlon=36,72#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.0p5_SCRIP.nc -G latlon=361,720#lon_typ=grn_ctr#lat_typ=cap fi fi @@ -91,11 +89,10 @@ if [ $RESNAME = 025 ]; then export EDITSFILE=All_edits.nc if [ $DO_POSTWGTS == .true. ]; then #pre-generate SCRIP files for dst rectilinear grids using NCO - # TODO: is the stagger really correct? The first pt is at 0.0E? - # should lat_type be cap? #lon_typ=grn_ctr#lat_typ=cap - ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr - ncremap -g ${OUTDIR_PATH}/rect.0p5_SCRIP.nc -G latlon=361,720#lon_typ=grn_ctr - ncremap -g ${OUTDIR_PATH}/rect.0p25_SCRIP.nc -G latlon=721,1440#lon_typ=grn_ctr + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.5p0_SCRIP.nc -G latlon=36,72#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.1p0_SCRIP.nc -G latlon=181,360#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.0p5_SCRIP.nc -G latlon=361,720#lon_typ=grn_ctr#lat_typ=cap + $APRUN -n 1 ncremap -g ${OUTDIR_PATH}/rect.0p25_SCRIP.nc -G latlon=721,1440#lon_typ=grn_ctr#lat_typ=cap fi fi