diff --git a/physics/radlw_main.F90 b/physics/radlw_main.F90 index de8d9e973..5ed3397d6 100644 --- a/physics/radlw_main.F90 +++ b/physics/radlw_main.F90 @@ -280,8 +280,7 @@ module rrtmg_lw ! use physparam, only : ilwrate, ilwrgas, ilwcliq, ilwcice, & & isubclw, icldflg, iovr, ivflip - use physcons, only : con_g, con_cp, con_avgd, con_amd, & - & con_amw, con_amo3 + use mersenne_twister, only : random_setseed, random_number, & & random_stat !mz @@ -320,8 +319,8 @@ module rrtmg_lw real (kind=kind_phys), parameter :: f_one = 1.0 ! ... atomic weights for conversion from mass to volume mixing ratios - real (kind=kind_phys), parameter :: amdw = con_amd/con_amw - real (kind=kind_phys), parameter :: amdo3 = con_amd/con_amo3 + ! real (kind=kind_phys), parameter :: amdw = con_amd/con_amw + ! real (kind=kind_phys), parameter :: amdo3 = con_amd/con_amo3 ! ... band indices integer, dimension(nbands) :: nspa, nspb @@ -385,7 +384,9 @@ module rrtmg_lw ! --- public accessable subprograms public rrtmg_lw_init, rrtmg_lw_run, rrtmg_lw_finalize, rlwinit - + + real(kind=kind_phys), public :: con_g, con_cp, & + & con_avgd, con_amd, con_amw, con_amo3 ! ================ contains @@ -423,7 +424,8 @@ end subroutine rrtmg_lw_init !> \section gen_lwrad RRTMG Longwave Radiation Scheme General Algorithm !> @{ subroutine rrtmg_lw_run & - & ( plyr,plvl,tlyr,tlvl,qlyr,olyr,gasvmr_co2, gasvmr_n2o, & ! --- inputs + & ( con_g,con_cp,con_avgd,con_amd,con_amw,con_amo3, & ! --- inputs + & plyr,plvl,tlyr,tlvl,qlyr,olyr,gasvmr_co2, gasvmr_n2o, & & gasvmr_ch4, gasvmr_o2, gasvmr_co, gasvmr_cfc11, & & gasvmr_cfc12, gasvmr_cfc22, gasvmr_ccl4, & & icseed,aeraod,aerssa,sfemis,sfgtmp, & @@ -613,6 +615,12 @@ subroutine rrtmg_lw_run & logical, intent(in) :: lprnt + real(kind=kind_phys),intent(in) :: con_g, con_cp, & + & con_avgd, con_amd, con_amw, con_amo3 + + + real (kind=kind_phys) :: amdw, amdo3 + real (kind=kind_phys), dimension(npts,nlp1), intent(in) :: plvl, & & tlvl real (kind=kind_phys), dimension(npts,nlay), intent(in) :: plyr, & @@ -767,7 +775,9 @@ subroutine rrtmg_lw_run & ! Initialize CCPP error handling variables errmsg = '' errflg = 0 - + + amdw = con_amd/con_amw + amdo3 = con_amd/con_amo3 !mz* ! For passing in cloud physical properties; cloud optics parameterized ! in RRTMG: diff --git a/physics/radlw_main.meta b/physics/radlw_main.meta index 0e7aff8d4..5770a8815 100644 --- a/physics/radlw_main.meta +++ b/physics/radlw_main.meta @@ -7,6 +7,60 @@ [ccpp-arg-table] name = rrtmg_lw_run type = scheme +[con_g] + standard_name = gravitational_acceleration + long_name = gravitational acceleration + units = m s-2 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F +[con_cp] + standard_name = specific_heat_of_dry_air_at_constant_pressure + long_name = specific heat of dry air at constant pressure + units = J kg-1 K-1 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F +[con_avgd] + standard_name = avogadro_constant + long_name = avogadro constant + units = mol-1 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F +[con_amd] + standard_name = molecular_weight_of_dry_air + long_name = molecular weight of dry air + units = g mol-1 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F +[con_amw] + standard_name = molecular_weight_of_water_vapor + long_name = molecular weight of water vapor + units = g mol-1 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F +[con_amo3] + standard_name = molecular_weight_of_o3 + long_name = molecular weight of o3 + units = g mol-1 + dimensions = () + type = real + kind = kind_phys + intent = in + optional = F [plyr] standard_name = air_pressure_at_layer_for_radiation_in_hPa long_name = air pressure layer