From 99091f9742670bdebd84bd13f17b9115457d64dd Mon Sep 17 00:00:00 2001 From: Dusan Jovic <48258889+DusanJovic-NOAA@users.noreply.github.com> Date: Wed, 23 Oct 2024 09:03:59 -0400 Subject: [PATCH 1/2] Update chunksizes for cubed sphere grid (#876) * Update chunksizes for cubed sphere grid * Update submodule pointer for ccpp-framework: bug fix for unit conversion error in ccpp_prebuild.py (PR-878) --------- Co-authored-by: Dom Heinzeller --- ccpp/framework | 2 +- io/module_write_netcdf.F90 | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ccpp/framework b/ccpp/framework index 0f8232724..b7d55fd07 160000 --- a/ccpp/framework +++ b/ccpp/framework @@ -1 +1 @@ -Subproject commit 0f8232724975c13289cad390c9a71fa2c6a9bff4 +Subproject commit b7d55fd07fa35c5de9b2292596d30784a800b276 diff --git a/io/module_write_netcdf.F90 b/io/module_write_netcdf.F90 index b0164151e..03a9d57dc 100644 --- a/io/module_write_netcdf.F90 +++ b/io/module_write_netcdf.F90 @@ -398,14 +398,14 @@ end function nf_set_log_level par_access = NF90_COLLECTIVE if (rank == 2 .and. ichunk2d(grid_id) > 0 .and. jchunk2d(grid_id) > 0) then if (is_cubed_sphere) then - chunksizes = [im, jm, tileCount, 1] + chunksizes = [im, jm, 1, 1] else chunksizes = [ichunk2d(grid_id), jchunk2d(grid_id), 1] end if ncerr = nf90_def_var_chunking(ncid, varids(i), NF90_CHUNKED, chunksizes) ; NC_ERR_STOP(ncerr) else if (rank == 3 .and. ichunk3d(grid_id) > 0 .and. jchunk3d(grid_id) > 0 .and. kchunk3d(grid_id) > 0) then if (is_cubed_sphere) then - chunksizes = [im, jm, lm, tileCount, 1] + chunksizes = [im, jm, 1, 1, 1] else chunksizes = [ichunk3d(grid_id), jchunk3d(grid_id), min(kchunk3d(grid_id),fldlev(i)), 1] end if From bd785e50f90985fb1330e36852297af38293415b Mon Sep 17 00:00:00 2001 From: DWesl <22566757+DWesl@users.noreply.github.com> Date: Mon, 4 Nov 2024 09:11:58 -0500 Subject: [PATCH 2/2] STY: Use capital W and lowercase m for watts per square meter (#859) * Cosmetic unit update: w/m2 to W/m2 --- atmos_cubed_sphere | 2 +- ccpp/driver/GFS_diagnostics.F90 | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/atmos_cubed_sphere b/atmos_cubed_sphere index 24686a256..e36e8572e 160000 --- a/atmos_cubed_sphere +++ b/atmos_cubed_sphere @@ -1 +1 @@ -Subproject commit 24686a2561f1414eb86c7b97c93960c36e4257b1 +Subproject commit e36e8572e7643d7e59a3979a61bdd83743ff7b00 diff --git a/ccpp/driver/GFS_diagnostics.F90 b/ccpp/driver/GFS_diagnostics.F90 index 4729819ea..019711825 100644 --- a/ccpp/driver/GFS_diagnostics.F90 +++ b/ccpp/driver/GFS_diagnostics.F90 @@ -998,7 +998,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'sw_upfxc' ExtDiag(idx)%desc = 'total sky upward sw flux at toa - GFS radiation' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1010,7 +1010,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'sw_dnfxc' ExtDiag(idx)%desc = 'total sky downward sw flux at toa - GFS radiation' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1022,7 +1022,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'sw_upfx0' ExtDiag(idx)%desc = 'clear sky upward sw flux at toa - GFS radiation' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1034,7 +1034,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'lw_upfxc' ExtDiag(idx)%desc = 'total sky upward lw flux at toa - GFS radiation' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1046,7 +1046,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'lw_upfx0' ExtDiag(idx)%desc = 'clear sky upward lw flux at toa - GFS radiation' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1234,7 +1234,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'shtfl_ave' ExtDiag(idx)%desc = 'surface sensible heat flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%cnvfac = cn_one ExtDiag(idx)%time_avg = .TRUE. @@ -1248,7 +1248,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'lhtfl_ave' ExtDiag(idx)%desc = 'surface latent heat flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%cnvfac = cn_one ExtDiag(idx)%time_avg = .TRUE. @@ -1306,7 +1306,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'dlwsfc' ExtDiag(idx)%desc = 'time accumulated downward lw flux at surface' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1318,7 +1318,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'ulwsfc' ExtDiag(idx)%desc = 'time accumulated upward lw flux at surface' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -1399,7 +1399,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'pevpr_ave' ExtDiag(idx)%desc = 'averaged potential evaporation rate' - ExtDiag(idx)%unit = 'W/M**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%time_avg = .TRUE. allocate (ExtDiag(idx)%data(nblks)) @@ -2073,7 +2073,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'dlwsfci' ExtDiag(idx)%desc = 'instantaneous sfc downward lw flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -2085,7 +2085,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'ulwsfci' ExtDiag(idx)%desc = 'instantaneous sfc upward lw flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -2097,7 +2097,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'dswsfci' ExtDiag(idx)%desc = 'instantaneous sfc downward sw flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -2109,7 +2109,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'uswsfci' ExtDiag(idx)%desc = 'instantaneous sfc upward sw flux' - ExtDiag(idx)%unit = 'w/m**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' ExtDiag(idx)%intpl_method = 'bilinear' allocate (ExtDiag(idx)%data(nblks)) @@ -2213,7 +2213,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'pevpr' ExtDiag(idx)%desc = 'instantaneous surface potential evaporation' - ExtDiag(idx)%unit = 'W/M**2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_phys' allocate (ExtDiag(idx)%data(nblks)) do nb = 1,nblks @@ -4543,7 +4543,7 @@ subroutine GFS_externaldiag_populate (ExtDiag, Model, Statein, Stateout, Sfcprop ExtDiag(idx)%axes = 2 ExtDiag(idx)%name = 'qrain' ExtDiag(idx)%desc = 'nsst sensible heat flux due to rainfall' - ExtDiag(idx)%unit = 'w/m2' + ExtDiag(idx)%unit = 'W/m**2' ExtDiag(idx)%mod_name = 'gfs_sfc' allocate (ExtDiag(idx)%data(nblks)) do nb = 1,nblks