Skip to content
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

Enable template 4-49 to obtain aerosol ensemble information #1011

Merged
merged 7 commits into from
Aug 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ci/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ spack:
- netcdf-fortran@4.6.1
- bacio@2.4.1
- w3emc@2.10.0
- g2@3.4.5
- g2tmpl@1.12.0
- g2@3.5.1
- g2tmpl@1.13.0
- sp@2.5.0
- ip@4.3.0
- sigio@2.3.2
Expand Down
4 changes: 2 additions & 2 deletions modulefiles/upp_common.lua
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ local ufs_modules = {
{["netcdf-fortran"] = "4.6.1"},
{["bacio"] = "2.4.1"},
{["crtm"] = "2.4.0.1"},
{["g2"] = "3.4.5"},
{["g2tmpl"] = "1.12.0"},
{["g2"] = "3.5.1"},
{["g2tmpl"] = "1.13.0"},
{["ip"] = "4.3.0"},
{["sp"] = "2.5.0"},
{["w3emc"] = "2.10.0"},
Expand Down
4 changes: 2 additions & 2 deletions modulefiles/wcoss2.lua
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ load(pathJoin("jasper", jasper_ver))
load(pathJoin("libpng", libpng_ver))
load(pathJoin("zlib", zlib_ver))

g2_ver=os.getenv("g2_ver") or "3.4.5"
g2tmpl_ver=os.getenv("g2tmpl_ver") or "1.12.0"
g2_ver=os.getenv("g2_ver") or "3.5.1"
g2tmpl_ver=os.getenv("g2tmpl_ver") or "1.13.0"
bacio_ver=os.getenv("bacio_ver") or "2.4.1"
ip_ver=os.getenv("ip_ver") or "3.3.3"
sp_ver=os.getenv("sp_ver") or "2.3.3"
Expand Down
36 changes: 35 additions & 1 deletion sorc/ncep_post.fd/grib2_module.f
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
!> July 2021 | Jesse Meng | 2D decomsition
!> June 2022 | Lin Zhu | Change the dx/dy to reading in from calculating for latlon grid
!> January 2023 | Sam Trahan | Foot & meter unit conversions for IFI
!> August 2024 | Li Pan | Enable template 4-49 to obtain aerosol ensemble information
!-------------------------------------------------------------------------
module grib2_module
!
Expand Down Expand Up @@ -497,7 +498,8 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs
use grib2_all_tables_module, only: g2sec0,g2sec1, &
g2sec4_temp0,g2sec4_temp8,g2sec4_temp9,g2sec4_temp44, &
g2sec4_temp46,g2sec4_temp48,g2sec5_temp0,g2sec5_temp2, &
g2sec5_temp3,g2sec5_temp40,get_g2_sec5packingmethod
g2sec5_temp3,g2sec5_temp40,get_g2_sec5packingmethod, &
g2sec4_temp49
!use gdtsec3, only: getgdtnum
implicit none
!
Expand All @@ -520,6 +522,7 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs
integer, parameter :: ipdstmp4_44len=21
integer, parameter :: ipdstmp4_46len=35
integer, parameter :: ipdstmp4_48len=26
integer, parameter :: ipdstmp4_49len=29
!
integer, parameter :: idrstmplenmax=50
integer, parameter :: idrstmp5_0len=5
Expand Down Expand Up @@ -592,6 +595,8 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs
pset%param(nprm)%pdstmpl='tmpl4_1'
elseif (trim(pset%param(nprm)%pdstmpl)=='tmpl4_8') then
pset%param(nprm)%pdstmpl='tmpl4_11'
elseif (trim(pset%param(nprm)%pdstmpl)=='tmpl4_48') then
pset%param(nprm)%pdstmpl='tmpl4_49'
endif
endif
!
Expand Down Expand Up @@ -984,6 +989,35 @@ subroutine gengrb2msg(idisc,icatg, iparm,nprm,nlvl,fldlvl1,fldlvl2,ntrange,tinvs
! print *,'aft g2sec4_temp48,name=',trim(pset%param(nprm)%shortname),&
! 'ipdstmpl48=',ipdstmpl(1:ipdstmp4_48len)

elseif(trim(pset%param(nprm)%pdstmpl)=='tmpl4_49') then
!
ipdsnum=49
ipdstmpllen=ipdstmp4_49len
call g2sec4_temp49(icatg,iparm,pset%param(nprm)%aerosol_type, &
pset%param(nprm)%typ_intvl_size, &
pset%param(nprm)%scale_fact_1st_size, &
pset%param(nprm)%scale_val_1st_size, &
pset%param(nprm)%scale_fact_2nd_size, &
pset%param(nprm)%scale_val_2nd_size, &
pset%param(nprm)%typ_intvl_wvlen, &
pset%param(nprm)%scale_fact_1st_wvlen, &
pset%param(nprm)%scale_val_1st_wvlen, &
pset%param(nprm)%scale_fact_2nd_wvlen, &
pset%param(nprm)%scale_val_2nd_wvlen, &
pset%gen_proc_type, &
pset%gen_proc,hrs_obs_cutoff,min_obs_cutoff, &
pset%time_range_unit,ifhr, &
pset%param(nprm)%fixed_sfc1_type, &
scale_fct_fixed_sfc1, &
scaled_val_fixed_sfc1, &
pset%param(nprm)%fixed_sfc2_type, &
scale_fct_fixed_sfc2, &
scaled_val_fixed_sfc2, &
pset%type_ens_fcst,perturb_num,num_ens_fcst, &
ipdstmpl(1:ipdstmpllen))
! print *,'aft g2sec4_temp49,name=',trim(pset%param(nprm)%shortname),&
! 'ipdstmpl49=',ipdstmpl(1:ipdstmp4_49len)

endif

if((modelname=='RAPR'.or.modelname=='FV3R').and.vtimeunits=='FMIN') then
Expand Down
136 changes: 56 additions & 80 deletions tests/logs/rt.log.HERA
Original file line number Diff line number Diff line change
@@ -1,93 +1,69 @@
===== Start of UPP Regression Testing Log =====
UPP Hash Tested:
41a9c03365bb6ceca47cb349e14963c376655dc3
70715e3e30c84728048d0616467c3ce36000074c

Submodule hashes:
-1ba8270870947b583cd51bc72ff8960f4c1fb36e sorc/libIFI.fd
-567edcc94bc418d0dcd6cdaafed448eeb5aab570 sorc/ncep_post.fd/post_gtg.fd

Run directory: /scratch2/NAGAPE/epic/Fernando.Andrade-maldonado/regression-tests/upp/990/UPP/ci/rundir/upp-HERA
Run directory: /scratch2/NAGAPE/epic/Fernando.Andrade-maldonado/regression-tests/upp/1011/UPP/ci/rundir/upp-HERA
Baseline directory: /scratch2/NAGAPE/epic/UPP/test_suite

Total runtime: 02h:21m:17s
Test Date: 20240717 22:08:40
Total runtime: 00h:11m:31s
Test Date: 20240813 16:10:39
Summary Results:

07/17 22:00:14Z -fv3gefs pe test: your new post executable generates bit-identical geaer.t00z.master.grb2f060 as the trunk
07/17 22:00:29Z -rtma pe test: your new post executable generates bit-identical NATLEV00.tm00 as the trunk
07/17 22:00:31Z -fv3hafs test: your new post executable generates bit-identical HURPRS09.tm00 as the trunk
07/17 22:00:31Z -rtma pe test: your new post executable generates bit-identical PRSLEV00.tm00 as the trunk
07/17 22:00:32Z -rtma pe test: your new post executable generates bit-identical IFIFIP00.tm00 as the trunk
07/17 22:00:42Z -fv3r test: your new post executable generates bit-identical PRSLEV10.tm00 as the trunk
07/17 22:00:46Z -fv3r test: your new post executable generates bit-identical NATLEV10.tm00 as the trunk
07/17 22:00:59Z -rap test: your new post executable generates bit-identical WRFPRS.GrbF16 as the trunk
07/17 22:01:00Z -rap test: your new post executable generates bit-identical WRFNAT.GrbF16 as the trunk
07/17 22:01:14Z -rtma test: your new post executable generates bit-identical NATLEV00.tm00 as the trunk
07/17 22:01:16Z -rtma test: your new post executable generates bit-identical PRSLEV00.tm00 as the trunk
07/17 22:01:16Z -rtma test: your new post executable generates bit-identical IFIFIP00.tm00 as the trunk
07/17 22:01:22Z -fv3r pe test: your new post executable generates bit-identical PRSLEV10.tm00 as the trunk
07/17 22:01:26Z -fv3r pe test: your new post executable generates bit-identical NATLEV10.tm00 as the trunk
07/17 22:01:49Z -hrrr pe test: your new post executable generates bit-identical WRFTWO.GrbF04 as the trunk
07/17 22:01:51Z -hrrr pe test: your new post executable generates bit-identical WRFPRS.GrbF04 as the trunk
07/17 22:01:52Z -hrrr pe test: your new post executable generates bit-identical WRFNAT.GrbF04 as the trunk
07/17 22:02:19Z -hrrr test: your new post executable generates bit-identical WRFTWO.GrbF04 as the trunk
07/17 22:02:19Z -hrrr test: your new post executable generates bit-identical WRFPRS.GrbF04 as the trunk
07/17 22:02:21Z -hrrr test: your new post executable generates bit-identical WRFNAT.GrbF04 as the trunk
07/17 22:03:27Z -fv3hafs pe test: your new post executable generates bit-identical HURPRS09.tm00 as the trunk
07/17 22:06:19Z -rap pe test: your new post executable did generate changed results in WRFPRS.GrbF16
07/17 22:06:20Z -rap pe test: your new post executable generates bit-identical WRFNAT.GrbF16 as the trunk
07/17 22:06:39Z -fv3gefs test: your new post executable generates bit-identical geaer.t00z.master.grb2f060 as the trunk
07/17 22:06:44Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.master.grb2f006 as the trunk
07/17 22:06:48Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.sfluxgrbf006.grib2 as the trunk
07/17 22:06:48Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.special.grb2f006 as the trunk
07/17 22:07:40Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.master.grb2f006 as the trunk
07/17 22:07:43Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.sfluxgrbf006.grib2 as the trunk
07/17 22:07:43Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.special.grb2f006 as the trunk
07/17 22:08:31Z -nmmb pe test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
07/17 22:08:33Z -nmmb pe test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
07/17 22:08:34Z -nmmb pe test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
07/17 22:08:36Z -nmmb test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
07/17 22:08:38Z -nmmb test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
07/17 22:08:39Z -nmmb test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
07/17 22:08:36Z -Runtime: nmmb_pe_test 00:01:17 -- baseline 00:01:00
07/17 22:08:36Z -Runtime: fv3gefs_test 00:00:33 -- baseline 00:40:00
07/17 22:08:36Z -Runtime: fv3gefs_pe_test 00:00:19 -- baseline 00:40:00
07/17 22:08:37Z -Runtime: rap_test 00:01:02 -- baseline 00:02:00
07/17 22:08:37Z -Runtime: rap_pe_test 00:01:18 -- baseline 00:02:00
07/17 22:08:37Z -Runtime: hrrr_test 00:02:23 -- baseline 00:02:00
07/17 22:08:38Z -Runtime: hrrr_pe_test 00:02:05 -- baseline 00:02:00
07/17 22:08:38Z -Runtime: fv3gfs_test 00:07:53 -- baseline 00:15:00
07/17 22:08:38Z -Runtime: fv3gfs_pe_test 00:08:04 -- baseline 00:15:00
07/17 22:08:39Z -Runtime: fv3r_test 00:01:40 -- baseline 00:03:00
07/17 22:08:39Z -Runtime: fv3r_pe_test 00:01:40 -- baseline 00:03:00
07/17 22:08:39Z -Runtime: fv3hafs_test 00:00:36 -- baseline 00:03:00
07/17 22:08:39Z -Runtime: fv3hafs_pe_test 00:00:40 -- baseline 00:03:00
07/17 22:08:40Z -Runtime: rtma_test 00:01:41 -- baseline 00:03:00
07/17 22:08:40Z -Runtime: rtma_test_pe_test 00:01:46 -- baseline
No changes in test results detected.
===== End of UPP Regression Testing Log =====
===== Start of UPP Regression Testing Log =====
UPP Hash Tested:
41a9c03365bb6ceca47cb349e14963c376655dc3

Submodule hashes:
-1ba8270870947b583cd51bc72ff8960f4c1fb36e sorc/libIFI.fd
-567edcc94bc418d0dcd6cdaafed448eeb5aab570 sorc/ncep_post.fd/post_gtg.fd

Run directory: /scratch2/NAGAPE/epic/Fernando.Andrade-maldonado/regression-tests/upp/990/UPP/ci/rundir/upp-HERA
Baseline directory: /scratch2/NAGAPE/epic/UPP/test_suite

Total runtime: 00h:01m:33s
Test Date: 20240718 14:44:39
Summary Results:

07/18 14:44:26Z -nmmb pe test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
07/18 14:44:30Z -nmmb test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
07/18 14:44:30Z -nmmb pe test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
07/18 14:44:31Z -nmmb pe test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
07/18 14:44:33Z -nmmb test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
07/18 14:44:33Z -nmmb test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
07/18 14:44:38Z -Runtime: nmmb_test 00:01:22 -- baseline 00:01:00
07/18 14:44:39Z -Runtime: nmmb_pe_test 00:01:20 -- baseline 00:01:00
08/13 16:02:20Z -fv3gefs test: your new post executable generates bit-identical geaer.t00z.master.grb2f060 as the trunk
08/13 16:02:20Z -fv3gefs pe test: your new post executable generates bit-identical geaer.t00z.master.grb2f060 as the trunk
08/13 16:02:33Z -fv3hafs test: your new post executable generates bit-identical HURPRS09.tm00 as the trunk
08/13 16:02:35Z -fv3hafs pe test: your new post executable generates bit-identical HURPRS09.tm00 as the trunk
08/13 16:02:56Z -rap test: your new post executable generates bit-identical WRFPRS.GrbF16 as the trunk
08/13 16:02:58Z -rap test: your new post executable generates bit-identical WRFNAT.GrbF16 as the trunk
08/13 16:03:14Z -rap pe test: your new post executable did generate changed results in WRFPRS.GrbF16
08/13 16:03:15Z -rap pe test: your new post executable generates bit-identical WRFNAT.GrbF16 as the trunk
08/13 16:03:25Z -fv3r test: your new post executable generates bit-identical PRSLEV10.tm00 as the trunk
08/13 16:03:26Z -nmmb pe test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
08/13 16:03:29Z -nmmb pe test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
08/13 16:03:29Z -nmmb pe test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
08/13 16:03:29Z -nmmb test: your new post executable generates bit-identical BGDAWP03.tm00.Grib2 as the trunk
08/13 16:03:30Z -fv3r test: your new post executable generates bit-identical NATLEV10.tm00 as the trunk
08/13 16:03:31Z -nmmb test: your new post executable generates bit-identical BGRD3D03.tm00.Grib2 as the trunk
08/13 16:03:31Z -nmmb test: your new post executable generates bit-identical BGRDSF03.tm00.Grib2 as the trunk
08/13 16:03:32Z -fv3r pe test: your new post executable generates bit-identical PRSLEV10.tm00 as the trunk
08/13 16:03:34Z -rtma pe test: your new post executable generates bit-identical NATLEV00.tm00 as the trunk
08/13 16:03:37Z -fv3r pe test: your new post executable generates bit-identical NATLEV10.tm00 as the trunk
08/13 16:03:37Z -rtma pe test: your new post executable generates bit-identical PRSLEV00.tm00 as the trunk
08/13 16:03:38Z -rtma pe test: your new post executable generates bit-identical IFIFIP00.tm00 as the trunk
08/13 16:03:39Z -rtma test: your new post executable generates bit-identical NATLEV00.tm00 as the trunk
08/13 16:03:43Z -rtma test: your new post executable generates bit-identical PRSLEV00.tm00 as the trunk
08/13 16:03:43Z -rtma test: your new post executable generates bit-identical IFIFIP00.tm00 as the trunk
08/13 16:03:58Z -hrrr pe test: your new post executable generates bit-identical WRFTWO.GrbF04 as the trunk
08/13 16:04:00Z -hrrr pe test: your new post executable generates bit-identical WRFPRS.GrbF04 as the trunk
08/13 16:04:02Z -hrrr pe test: your new post executable generates bit-identical WRFNAT.GrbF04 as the trunk
08/13 16:04:20Z -hrrr test: your new post executable generates bit-identical WRFTWO.GrbF04 as the trunk
08/13 16:04:21Z -hrrr test: your new post executable generates bit-identical WRFPRS.GrbF04 as the trunk
08/13 16:04:22Z -hrrr test: your new post executable generates bit-identical WRFNAT.GrbF04 as the trunk
08/13 16:09:45Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.master.grb2f006 as the trunk
08/13 16:09:50Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.sfluxgrbf006.grib2 as the trunk
08/13 16:09:51Z -fv3gfs test: your new post executable generates bit-identical gfs.t00z.special.grb2f006 as the trunk
08/13 16:10:28Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.master.grb2f006 as the trunk
08/13 16:10:32Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.sfluxgrbf006.grib2 as the trunk
08/13 16:10:32Z -fv3gfs pe test: your new post executable generates bit-identical gfs.t00z.special.grb2f006 as the trunk
08/13 16:03:45Z -Runtime: nmmb_test 00:01:44 -- baseline 00:01:00
08/13 16:03:46Z -Runtime: nmmb_pe_test 00:01:42 -- baseline 00:01:00
08/13 16:03:46Z -Runtime: fv3gefs_test 00:00:33 -- baseline 00:40:00
08/13 16:03:46Z -Runtime: fv3gefs_pe_test 00:00:34 -- baseline 00:40:00
08/13 16:03:46Z -Runtime: rap_test 00:01:11 -- baseline 00:02:00
08/13 16:03:47Z -Runtime: rap_pe_test 00:01:28 -- baseline 00:02:00
08/13 16:04:32Z -Runtime: hrrr_test 00:02:35 -- baseline 00:02:00
08/13 16:04:33Z -Runtime: hrrr_pe_test 00:02:15 -- baseline 00:02:00
08/13 16:09:51Z -Runtime: fv3gfs_test 00:08:04 -- baseline 00:15:00
08/13 16:10:37Z -Runtime: fv3gfs_pe_test 00:08:45 -- baseline 00:15:00
08/13 16:10:37Z -Runtime: fv3r_test 00:01:43 -- baseline 00:03:00
08/13 16:10:37Z -Runtime: fv3r_pe_test 00:01:50 -- baseline 00:03:00
08/13 16:10:38Z -Runtime: fv3hafs_test 00:00:46 -- baseline 00:03:00
08/13 16:10:38Z -Runtime: fv3hafs_pe_test 00:00:48 -- baseline 00:03:00
08/13 16:10:38Z -Runtime: rtma_test 00:01:56 -- baseline 00:03:00
08/13 16:10:39Z -Runtime: rtma_test_pe_test 00:01:51 -- baseline
No changes in test results detected.
===== End of UPP Regression Testing Log =====
Loading
Loading