Skip to content
Closed
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
2 changes: 1 addition & 1 deletion ccpp/config/ccpp_prebuild_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@
'ccpp/physics/physics/SFC_Models/Land/Noahmp/lnd_iau_mod.F90',
'ccpp/physics/physics/Interstitials/UFS_SCM_NEPTUNE/module_ccpp_suite_simulator.F90',
'scm/src/CCPP_typedefs.F90',
'scm/src/scm_physical_constants.F90',
'scm/src/GFS_typedefs.F90',
'scm/src/scm_kinds.F90',
'scm/src/scm_type_defs.F90',
'scm/src/scm_physical_constants.F90',
'scm/src/scm_utils.F90', #no definitions, but scm_type_defs.F90 uses a module from this file
]

Expand Down
2 changes: 1 addition & 1 deletion ccpp/physics
Submodule physics updated 78 files
+1 −2 CODEOWNERS
+0 −1 physics/CONV/C3/cu_c3_driver.F90
+193 −124 physics/CONV/Chikira_Sugiyama/cs_conv.F90
+97 −1 physics/CONV/Chikira_Sugiyama/cs_conv.meta
+3 −2 physics/CONV/Grell_Freitas/cu_gf_deep.F90
+12 −9 physics/CONV/Grell_Freitas/cu_gf_driver.F90
+8 −0 physics/CONV/Grell_Freitas/cu_gf_driver.meta
+8 −5 physics/CONV/SAMF/samfaerosols.F
+12 −11 physics/CONV/SAMF/samfshalcnv.f
+8 −0 physics/CONV/SAMF/samfshalcnv.meta
+2 −6 physics/CONV/SAS/sascnvn.F
+0 −4 physics/CONV/SAS/shalcnv.F
+33 −16 physics/CONV/nTiedtke/cu_ntiedtke.F90
+49 −1 physics/CONV/nTiedtke/cu_ntiedtke.meta
+2 −2 physics/GWD/cires_ugwp.meta
+33 −46 physics/GWD/cires_ugwp_initialize.F90
+59 −0 physics/GWD/ugwp_common_v0.f90
+81 −0 physics/GWD/ugwp_common_v0.meta
+80 −76 physics/GWD/ugwp_driver_v0.F
+20 −13 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_MP_generic_post.F90
+41 −2 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_MP_generic_post.meta
+8 −7 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_rrtmg_setup.F90
+8 −0 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_rrtmg_setup.meta
+21 −2 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_time_vary_pre.fv3.F90
+131 −2 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_time_vary_pre.fv3.meta
+34 −14 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_time_vary_pre.scm.F90
+132 −3 physics/Interstitials/UFS_SCM_NEPTUNE/GFS_time_vary_pre.scm.meta
+3 −3 physics/Interstitials/UFS_SCM_NEPTUNE/sgscloud_radpre.meta
+206 −155 physics/MP/GFDL/fv_sat_adj.F90
+89 −1 physics/MP/GFDL/fv_sat_adj.meta
+73 −23 physics/MP/GFDL/v3_2022/gfdl_cloud_microphys_v3.F90
+248 −1 physics/MP/GFDL/v3_2022/gfdl_cloud_microphys_v3.meta
+130 −41 physics/MP/GFDL/v3_2022/gfdl_cloud_microphys_v3_mod.F90
+13 −10 physics/MP/Morrison_Gettelman/aer_cloud.F
+52 −28 physics/MP/Morrison_Gettelman/cldmacro.F
+63 −45 physics/MP/Morrison_Gettelman/cldwat2m_micro.F
+34 −20 physics/MP/Morrison_Gettelman/m_micro.F90
+33 −1 physics/MP/Morrison_Gettelman/m_micro.meta
+2,056 −2,056 physics/MP/NSSL/module_mp_nssl_2mom.F90
+1 −1 physics/MP/Zhao_Carr/zhaocarr_gscond.meta
+1 −2 physics/MP/Zhao_Carr/zhaocarr_precpd.meta
+66 −61 physics/MP/calpreciptype.f90
+12 −12 physics/MP/multi_gases.F90
+28 −16 physics/PBL/HEDMF/hedmf.f
+33 −1 physics/PBL/HEDMF/hedmf.meta
+22 −14 physics/PBL/SATMEDMF/mfscu.f
+29 −14 physics/PBL/SATMEDMF/mfscuq.f
+13 −11 physics/PBL/SATMEDMF/satmedmfvdifq.F
+19 −7 physics/PBL/mfpbl.f
+28 −19 physics/PBL/mfpblt.f
+31 −21 physics/PBL/mfpbltq.f
+143 −109 physics/Radiation/RRTMG/module_bfmicrophysics.f
+343 −341 physics/Radiation/RRTMG/radlw_main.F90
+41 −1 physics/Radiation/RRTMG/radlw_main.meta
+39 −34 physics/Radiation/RRTMG/radsw_main.F90
+41 −1 physics/Radiation/RRTMG/radsw_main.meta
+8 −9 physics/Radiation/radiation_surface.f
+40 −19 physics/SFC_Layer/MYNN/module_sf_mynn.F90
+20 −8 physics/SFC_Layer/MYNN/mynnsfc_wrapper.F90
+89 −1 physics/SFC_Layer/MYNN/mynnsfc_wrapper.meta
+8 −6 physics/SFC_Layer/UFS/module_nst_model.f90
+2 −17 physics/SFC_Layer/UFS/module_nst_parameters.f90
+2 −3 physics/SFC_Layer/UFS/sfc_diag.f
+9 −1 physics/SFC_Layer/UFS/sfc_diag.meta
+5 −3 physics/SFC_Layer/UFS/sfc_nst.f90
+11 −15 physics/SFC_Models/Lake/Flake/flake_driver.F90
+14 −14 physics/SFC_Models/Land/Noah/lsm_noah.f
+17 −1 physics/SFC_Models/Land/Noah/lsm_noah.meta
+11 −13 physics/SFC_Models/Land/Noah/sflx.f
+56 −39 physics/SFC_Models/Land/RUC/lsm_ruc.F90
+82 −2 physics/SFC_Models/Land/RUC/lsm_ruc.meta
+249 −223 physics/SFC_Models/Land/RUC/module_sf_ruclsm.F90
+5 −7 physics/SFC_Models/SeaIce/CICE/sfc_cice.f
+16 −3 physics/docs/ccppsrw_doxyfile
+0 −170 physics/hooks/physcons.F90
+156 −60 physics/tools/funcphys.f90
+1 −2 physics/tools/get_phi_fv3.F90
+1 −1 physics/tools/get_phi_fv3.meta
2 changes: 1 addition & 1 deletion scm/src/GFS_typedefs.F90
Original file line number Diff line number Diff line change
Expand Up @@ -3411,7 +3411,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, &
cny, gnx, gny, ak, bk, hydrostatic)

!--- modules
use physcons, only: con_rerth, con_pi, con_p0, rhowater
use scm_physical_constants, only: con_rerth, con_pi, con_p0, rhowater
use mersenne_twister, only: random_setseed, random_number
use GFS_ccpp_suite_sim_pre, only: load_ccpp_suite_sim
!
Expand Down
2 changes: 1 addition & 1 deletion scm/src/GFS_typedefs.meta
Original file line number Diff line number Diff line change
Expand Up @@ -10619,7 +10619,7 @@
name = GFS_typedefs
type = module
dependencies_path = ../../ccpp/physics/physics
dependencies = hooks/machine.F,hooks/physcons.F90
dependencies = hooks/machine.F
dependencies = Radiation/RRTMG/radlw_param.f,Radiation/RRTMG/radsw_param.f
dependencies = MP/TEMPO/TEMPO/module_mp_tempo_params.F90
dependencies = photochem/module_ozphys.F90,photochem/module_h2ophys.F90
Expand Down
27 changes: 23 additions & 4 deletions scm/src/scm_physical_constants.F90
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ module scm_physical_constants
!!
integer ,parameter:: con_zero =0
real(kind=dp),parameter:: con_pi =3.1415926535897931

real(kind=dp),parameter:: con_rerth =6.3712e+6
real(kind=dp),parameter:: con_g =9.80665e+0
real(kind=dp),parameter:: con_omega =7.2921e-5
Expand Down Expand Up @@ -42,8 +42,9 @@ module scm_physical_constants
real(kind=dp),parameter:: con_avgd =6.0221415e23_dp
real(kind=dp),parameter:: con_amd =28.9644_dp !< molecular wght of dry air (\f$g/mol\f$)
real(kind=dp),parameter:: con_amw =18.0154_dp
real(kind=dp),parameter:: con_amo3 =47.9982_dp
real(kind=dp),parameter:: karman =0.4_dp

real(kind=dp),parameter:: cimin =0.15
!> minimum rain amount
real(kind=dp),parameter:: rainmin =1.e-13_dp
Expand All @@ -52,7 +53,7 @@ module scm_physical_constants
real(kind=dp),parameter:: con_rhw0 =1022.0
real(kind=dp),parameter:: con_sbc =5.670400e-8
real(kind=dp),parameter:: con_tice =2.7120e+2

real(kind=dp),parameter:: rhowater =1000._dp
real(kind=dp),parameter:: rholakeice = 0.917e3_dp !< density of ice on lake (kg/m^3)

Expand All @@ -63,10 +64,28 @@ module scm_physical_constants
real(kind=dp),parameter:: con_solr_2002 = 1.3660e+3_dp !< solar constant (\f$W/m^{2}\f$)-Liu(2002)
real(kind=dp),parameter:: con_solr_2008 = 1.3608e+3_dp !< solar constant (\f$W/m^{2}\f$)-nasa-sorce Tim(2008)
real(kind=dp),parameter:: con_thgni = -38.15_dp !< temperature the H.G.Nuc. ice starts

! for gfdlmp v3
real(kind=dp), parameter:: con_rhoair_IFS = 1.0 ! reference air density (kg/m^3), ref: IFS
real(kind=dp), parameter:: con_rhosnow = 100.0 ! density of snow (kg/m^3)
real(kind=dp), parameter :: con_visd = 1.717e-5 ! dynamics viscosity of air at 0 deg C and 1000 hPa (Mason, 1971) (kg/m/s)
real(kind=dp), parameter :: con_visk = 1.35e-5 ! kinematic viscosity of air at 0 deg C and 1000 hPa (Mason, 1971) (m^2/s)
real(kind=dp), parameter :: con_vdifu = 2.25e-5 ! diffusivity of water vapor in air at 0 deg C and 1000 hPa (Mason, 1971) (m^2/s)
real(kind=dp), parameter :: con_tcond = 2.40e-2 ! thermal conductivity of air at 0 deg C and 1000 hPa (Mason, 1971) (J/m/s/K)
real(kind=dp), parameter :: con_cdg = 3.15121 ! drag coefficient of graupel (Locatelli and Hobbs, 1974)
real(kind=dp), parameter :: con_cdh = 0.5 ! drag coefficient of hail (Heymsfield and Wright, 2014)
real(kind=dp), parameter :: con_rhocw = 1.0e3 ! density of cloud water (kg/m^3)
real(kind=dp), parameter :: con_rhoci = 9.17e2 ! density of cloud ice (kg/m^3)
real(kind=dp), parameter :: con_rhocr = 1.0e3 ! density of rain (Lin et al. 1983) (kg/m^3)
real(kind=dp), parameter :: con_rhocg = 4.0e2 ! density of graupel (Rutledge and Hobbs 1984) (kg/m^3)
real(kind=dp), parameter :: con_rhoch = 9.17e2 ! density of hail (Lin et al. 1983) (kg/m^3)
real(kind=dp), parameter :: con_qcmin = 1.0e-15 ! min value for cloud condensates (kg/kg)
real(kind=dp), parameter :: con_qfmin = 1.0e-8 ! min value for sedimentation (kg/kg)
real(kind=dp), parameter :: con_one = 1_dp
real(kind=dp), parameter :: con_p001 = 0.001_dp
real(kind=dp), parameter :: con_secinday = 86400._dp

! --- constants from physcons.F90 ---
real(kind=dp),parameter:: decorr_con = 2.50_dp !< Decorrelation length constant (km) for iovr = 4 or 5 and idcor = 0
real(kind=dp),parameter:: qamin = 1.e-16_dp !< Minimum aerosol concentration
end module scm_physical_constants
145 changes: 143 additions & 2 deletions scm/src/scm_physical_constants.meta
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
units = kg kg-1
dimensions = ()
type = real
kind = kind_phys
kind = kind_phys
[con_epsm1]
standard_name = ratio_of_dry_air_to_water_vapor_gas_constants_minus_one
long_name = (rd/rv) - 1
Expand Down Expand Up @@ -340,4 +340,145 @@
units = s
dimensions = ()
type = real
kind = kind_phys
kind = kind_phys
[con_amo3]
standard_name = molecular_weight_of_ozone
long_name = molecular weight of ozone
units = g mol-1
dimensions = ()
type = real
kind = kind_phys
[decorr_con]
standard_name = decorrelation_length_constant
long_name = Decorrelation length constant (km) for iovr = 4 or 5 and idcor = 0
units = km
dimensions = ()
type = real
kind = kind_phys
[qamin]
standard_name = minimum_aerosol_concentration
long_name = Minimum aerosol mass mixing ratio
units = kg kg-1
dimensions = ()
type = real
kind = kind_phys
[con_rhoair_IFS]
standard_name = density_of_air_IFS
long_name = density of air IFS
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhosnow]
standard_name = density_of_snow
long_name = density of snow
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_visd]
standard_name = dynamic_viscosity_of_air
long_name = dynamic viscosity of air at 0 deg C and 1000 hPa (Mason, 1971)
units = kg m-1 s-1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_visk]
standard_name = kinematic_viscosity_of_air
long_name = kinematic viscosity of air at 0 deg C and 1000 hPa (Mason, 1971)
units = m2 s-1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_vdifu]
standard_name = diffusivity_of_water_vapor_in_air
long_name = diffusivity of water vapor in air at 0 deg C and 1000 hPa (Mason, 1971)
units = m2 s-1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_tcond]
standard_name = thermal_conductivity_of_air
long_name = thermal conductivity of air at 0 deg C and 1000 hPa (Mason, 1971)
units = W m-1 K-1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_cdg]
standard_name = drag_coefficient_of_graupel
long_name = drag coefficient of graupel (Locatelli and Hobbs, 1974)
units = 1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_cdh]
standard_name = drag_coefficient_of_hail
long_name = drag coefficient of hail (Heymsfield and Wright, 2014)
units = 1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhocw]
standard_name = density_of_cloud_water
long_name = density of cloud water
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhoci]
standard_name = density_of_cloud_ice
long_name = density of cloud ice
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhocr]
standard_name = density_of_rain
long_name = density of rain (Lin et al., 1983)
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhocg]
standard_name = density_of_graupel
long_name = density of graupel (Rutledge and Hobbs, 1984)
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_rhoch]
standard_name = density_of_hail
long_name = density of hail (Lin et al., 1983)
units = kg m-3
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_qcmin]
standard_name = minimum_mass_mixing_ratio_of_cloud_condensate
long_name = minimum value for cloud condensates
units = kg kg-1
dimensions = ()
type = real
kind = kind_phys
intent = in
[con_qfmin]
standard_name = minimum_mass_mixing_ratio_for_sedimentation
long_name = minimum value for sedimentation
units = kg kg-1
dimensions = ()
type = real
kind = kind_phys
intent = in
4 changes: 2 additions & 2 deletions scm/src/scm_setup.F90
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ subroutine GFS_suite_setup (Model, Statein, Stateout, Sfcprop,
GFS_control_type, GFS_grid_type, &
GFS_tbd_type, GFS_cldprop_type, &
GFS_radtend_type, GFS_diag_type
use physcons, only: pi => con_pi
use scm_physical_constants, only: pi => con_pi


!use cldwat2m_micro, only: ini_micro
Expand Down Expand Up @@ -406,7 +406,7 @@ end subroutine GFS_suite_setup
!------------------
subroutine GFS_grid_populate (Grid, xlon, xlat, area)
use machine, only: kind_phys
use physcons, only: pi => con_pi
use scm_physical_constants, only: pi => con_pi
use GFS_typedefs, only: GFS_grid_type

implicit none
Expand Down
Loading