Skip to content

Commit 7ea294b

Browse files
202411 Release of SHiELD_physics (#58)
* release of FV3Team development of phsyics for SHiELD
1 parent b68d4c0 commit 7ea294b

30 files changed

+1918
-953
lines changed

FV3GFS/FV3GFS_io.F90

Lines changed: 345 additions & 132 deletions
Large diffs are not rendered by default.

GFS_layer/GFS_driver.F90

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ subroutine GFS_initialize (Model, Statein, Stateout, Sfcprop, &
206206
si = (Init_parm%ak + Init_parm%bk * p_ref - Init_parm%ak(Model%levr+1)) &
207207
/ (p_ref - Init_parm%ak(Model%levr+1))
208208
call rad_initialize (si, Model%levr, Model%ictm, Model%isol, &
209-
Model%ico2, Model%iaer, Model%ialb, &
209+
Model%ico2, Model%fco2_scaling , Model%iaer, Model%ialb, &
210210
Model%disable_radiation_quasi_sea_ice, Model%iems, &
211211
Model%ntcw, Model%num_p2d, Model%num_p3d, &
212212
Model%npdf3d, Model%ntoz, &
@@ -266,9 +266,10 @@ subroutine GFS_initialize (Model, Statein, Stateout, Sfcprop, &
266266
!-----------------------------------------------------------------------
267267

268268
if (Model%do_cosp) then
269-
do nb = 1, nblks
270-
call cosp2_init (size(Grid(nb)%xlon,1), Model%levs)
271-
enddo
269+
!ONLY call with the first block, which will be equal to the blocksize.
270+
! this will (should?) allocate the right amount of data. Then calls to
271+
! COSP will have the right data set up.
272+
call cosp2_init (size(Grid(1)%xlon,1), Model%levs)
272273
endif
273274
#endif
274275

@@ -645,6 +646,9 @@ subroutine GFS_rad_time_vary (Model, Statein, Tbd, sec)
645646
!--- for testing purposes, replace numrdm with '100'
646647
Tbd(nb)%icsdsw(ix) = numrdm(i+Model%isc-1 + (j+Model%jsc-2)*Model%cnx)
647648
Tbd(nb)%icsdlw(ix) = numrdm(i+Model%isc-1 + (j+Model%jsc-2)*Model%cnx + Model%cnx*Model%cny)
649+
#if defined (USE_COSP)
650+
!add random seeds for COSP here
651+
#endif
648652
enddo
649653
enddo
650654
endif ! isubc_lw and isubc_sw

GFS_layer/GFS_physics_driver.F90

Lines changed: 96 additions & 31 deletions
Large diffs are not rendered by default.

GFS_layer/GFS_radiation_driver.F90

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -552,7 +552,7 @@ subroutine radinit( si, NLAY, me )
552552
& ' May 01 2007'
553553
print *, VTAGRAD !print out version tag
554554
print *,' - Selected Control Flag settings: ICTMflg=',ictmflg, &
555-
& ' ISOLar =',isolar, ' ICO2flg=',ico2flg,' IAERflg=',iaerflg, &
555+
& ' ISOLar =',isolar, ' ICO2flg=',ico2flg,' CO2_scaling=',co2_scaling, ' IAERflg=',iaerflg, &
556556
& ' IALBflg=',ialbflg,' IEMSflg=',iemsflg,' ICLDflg=',icldflg, &
557557
& ' ICMPHYS=',icmphys,' IOZNflg=',ioznflg
558558
print *,' IVFLIP=',ivflip,' IOVRSW=',iovrsw,' IOVRLW=',iovrlw, &
@@ -1627,7 +1627,7 @@ subroutine GFS_radiation_driver &
16271627
tracer1(:,1:lmk,Model%ntiw), &
16281628
tracer1(:,1:lmk,Model%ntsw), &
16291629
tracer1(:,1:lmk,Model%ntgl), qa, &
1630-
Sfcprop%slmsk, Sfcprop%snowd, &
1630+
Sfcprop%slmsk, &
16311631
tracer1(:,1:lmk,Model%ntclamt),&
16321632
im, lmk, lmp, clouds, cldsa, mtopa, mbota) ! --- outputs
16331633
endif

GFS_layer/GFS_typedefs.F90

Lines changed: 97 additions & 8 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# SHiELD_physics
22

3-
The source contained herein reflects the 202305 release of the SHiELD_physics from GFDL.
3+
The source contained herein reflects the 202411 release of the SHiELD_physics from GFDL.
44

55
SHiELD_physics contains the infrastructure and physical parameterizations used within the SHiELD atmosphere model.
66

@@ -12,9 +12,7 @@ More information is available on the [GFDL SHiELD page](https://www.gfdl.noaa.go
1212

1313
```IPD_layer``` was developed by GFDL personnel, with community input, under funding from NWS Office of Science and Technology Integration.
1414

15-
```atmos_drivers``` is derivative code from the NOAA-GFDL [Atmospheric Drivers project](https://github.com/NOAA-GFDL/atmos_drivers). This will be removed in a future release.
16-
17-
```simple_coupler``` is derivative code from the NOAA-GFDL [FMS Coupler project](https://github.com/NOAA-GFDL/FMSCoupler). This will be removed in a future release.
15+
```atmos_shared``` contains files needed to compile SHiELD with the full FMS coupler.
1816

1917
# Disclaimer
2018

RELEASE.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,59 @@
1+
# RELEASE NOTES for FV3 202411: Summary
2+
FV3-202411-public --- November 2024
3+
Lucas Harris, GFDL lucas.harris@noaa.gov
4+
5+
This version has been tested with:
6+
FV3 Dynamical Core release FV3-202411-public from https://github.com/NOAA-GFDL/GFDL_atmos_cubed_sphere
7+
FMS release 2024.03 from https://github.com/NOAA-GFDL/FMS
8+
FMS Coupler release 2024.03.01 from https://github.com/NOAA-GFDL/FMScoupler
9+
Atmos Drivers release FV3-202411-public from https://github.com/NOAA-GFDL/atmos_drivers
10+
11+
This release includes the following:
12+
- Support for running SHiELD in the full FMSCoupler (Joseph)
13+
- GFDL Microphysics (Linjiong)
14+
- Replaced the hardcoded qa with aerosol data
15+
- Replaced the hardcoded hydrostatic with the input hydrostatic variable
16+
- Added two namelist options (fast_fr_mlt and fast_dep_sub) to control freezing/melting and deposition/sublimation in the fast microphysics.
17+
- Included a missing term in the energy conservation formula (credit: Tristan Abbott). May affect prediction of processes depending strongly on microphysics. Compile the model with -DENG_CNV_OLD to revert this change.
18+
- Added diagnostic cloud content and cloud effective radii of all cloud hydrometeors (qc*, re*).
19+
- Added diagnostic microphysical process rate (mpp*).
20+
- Removed unused Keihl et al. (1994) cloud water effective radius diagnosis.
21+
- A new COSP output variable named clisccp was added.
22+
- Surface processes and PBL (Kun, Linjiong, Kai, Spencer)
23+
- Brought EMC updates from dev/emc branch related to TKE-EDMF, deep and shallow convection schemes
24+
- Added a constraint to the PBL bottom layer to prevent negative water vapor.
25+
- Revise the surface process to prevent excessive downward latent heat transfer
26+
- Exposed additional tunable parameters in TKE-EDMF PBL scheme
27+
- Fix miscalculated albedo over the ocean when ialb = 2
28+
- Slab ocean bug fixes and enhancements
29+
- Upgraded land-ice related processes in Noah-MP based on version 4.5 of the official Noah-MP repository and some updates from NCAR/ccpp-physics, mostly from EMC.
30+
- Computing the snow height within the snowwater_glacier and snowwater subroutines
31+
- Limiting the compaction of snow in various places
32+
- Calculating the equilibrium state of snow only if snow exists. The maximum water depth becomes a tunable parameter and its default value remains 5 m.
33+
- Prescribed soil color capability
34+
- Prescribed snow albedo capability
35+
- Convection schemes (Kun, Linjiong)
36+
- Brought EMC updates from dev/emc branch
37+
- Merged samfshalcnv_gfdl.f and samfshalcnv.f. Use gfs_physics_nml::limit_shal_conv = .true. to recover samfshalcnv_gfdl.
38+
- Created the shallow convection option 5 based on option 3, to turn off the shallow convection scheme if the diagnosed cloud depth or cloud top exceeds certain critical values (set by cthk_shal and top_shal, respectively)
39+
- Added a parameter dxcrtas to the deep convection; for grid-spacing less than this (default 8000 m) the AS's quasi-equilibrium assumption is considered invalid.
40+
- Radiation (Kai)
41+
- Added a namelist option, gfs_physics_nml::fco2_scaling to uniformly scale CO2
42+
- Diagnostics (Spencer)
43+
- Added pressure_level_extrapolate, blended-area-weighted, and simplest model_level_area_weighted coarse-graining strategies.
44+
- Implemented area-weighted mean over the dominant surface type for the snoalb, shdmin, and shdmax surface fields.
45+
- Fixed a bug that affected coarse-graining the soil type field and some other soil properties downstream.
46+
- Additional CO2 and surface-type fraction diagnostics.
47+
- Software updates (Spencer, Lucas, Joseph)
48+
- Updates for running SHiELD in the FV3net Python wrapper
49+
- Bugfix in ozphys.F for ldiag3d = .true..
50+
- Cleaned up obscure diagnostics in radiation_astronomy.f.
51+
- Namelist option gfs_physics_nml::landseaprt to allow turning off land/sea partitioned global intervals in stdout.
52+
- Added variable-by-variable defined missing_value to gfdl_diag_type.
53+
- Add additional atmos driver files to run SHiELD and SHiEMOM with the full FMScoupler, mimicking the structure of AM4 atmos_phys.
54+
- Several diagnostic bug fixes.
55+
56+
157
# RELEASE NOTES for FV3 202305: Summary
258
FV3-202305-public --- May 2023
359
Lucas Harris, GFDL lucas.harris@noaa.gov

gsmphys/gcycle.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,8 @@ SUBROUTINE GCYCLE (nblks, Model, Grid, Sfcprop, Cldprop)
191191
size(Model%input_nml_file), &
192192
Model%input_nml_file, &
193193
Model%ialb, Model%isot, Model%ivegsrc, &
194-
trim(tile_num_ch), i_index, j_index)
194+
trim(tile_num_ch), i_index, j_index, &
195+
Model%sst_perturbation)
195196
#ifndef INTERNAL_FILE_NML
196197
close (Model%nlunit)
197198
#endif

0 commit comments

Comments
 (0)