Skip to content
Draft
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
3 changes: 2 additions & 1 deletion physics/CONV/SAMF/samfshalcnv.f
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,8 @@ subroutine samfshalcnv_run(im,km,itc,ntc,cliq,cp,cvap, &
c variables for tracer wet deposition,
real(kind=kind_phys), dimension(im,km,ntc) :: chem_c, chem_pw,
& wet_dep
real(kind=kind_phys), parameter :: escav = 0.8 ! wet scavenging efficiency
! wet scavenging efficiency
real(kind=kind_phys), parameter :: escav = 0.8
!
! for updraft velocity calculation
real(kind=kind_phys) wu2(im,km), buo(im,km), drag(im,km),
Expand Down
3 changes: 2 additions & 1 deletion physics/GWD/cires_orowam2017.f
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@ subroutine oro_wam_2017(im, levs,npt,ipt, kref,kdt,me,master,
real(kind=kind_phys), parameter :: mkz2min = mkzmin* mkzmin
real(kind=kind_phys), parameter :: kedmin = 1.e-3
real(kind=kind_phys), parameter :: kedmax = 350.,axmax=250.e-5
real(kind=kind_phys), parameter :: rtau = 0.01 ! nonlin-OGW scale 1/10sec
! nonlin-OGW scale 1/10sec
real(kind=kind_phys), parameter :: rtau = 0.01
real(kind=kind_phys), parameter :: Linsat2 =0.5
real(kind=kind_phys), parameter :: kxmin = 6.28e-3/100.
real(kind=kind_phys), parameter :: kxmax = 6.28e-3/5.0
Expand Down
6 changes: 4 additions & 2 deletions physics/GWD/gwdps.f
Original file line number Diff line number Diff line change
Expand Up @@ -359,15 +359,17 @@ subroutine gwdps_run( &
! parameter (cdmb = 1.0) !< non-dim sub grid mtn drag Amp (*j*)
parameter (hncrit=8000.) !< Max value in meters for ELVMAX (*j*)
! hncrit set to 8000m and sigfac added to enhance elvmax mtn hgt
parameter (sigfac=4.0) !< MB3a expt test for ELVMAX factor (*j*)
!< MB3a expt test for ELVMAX factor (*j*)
parameter (sigfac=4.0)
parameter (hminmt=50.) !< min mtn height (*j*)
parameter (minwnd=0.1) !< min wind component (*j*)

! parameter (dpmin=00.0) !< Minimum thickness of the reference layer
!! parameter (dpmin=05.0) !< Minimum thickness of the reference layer
! parameter (dpmin=20.0) !< Minimum thickness of the reference layer
!< in centibars
parameter (dpmin=5000.0) !< Minimum thickness of the reference layer
!< Minimum thickness of the reference layer
parameter (dpmin=5000.0)
!< in Pa
!
real(kind=kind_phys) FDIR
Expand Down
3 changes: 2 additions & 1 deletion physics/GWD/rayleigh_damp.f
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,8 @@ subroutine rayleigh_damp_run ( &
!
if (lsidea .or. ral_ts <= 0.0 .or. prslrd0 == 0.0) return
!
RTRD1 = 1.0/(ral_ts*86400) ! RECIPROCAL OF TIME SCALE PER SCALE HEIGHT
! RECIPROCAL OF TIME SCALE PER SCALE HEIGHT
RTRD1 = 1.0/(ral_ts*86400)
! ABOVE BEGINNING SIGMA LEVEL FOR RAYLEIGH DAMPING
dti = cons1 / dt
hfbcpdt = half / (cp*dt)
Expand Down
3 changes: 2 additions & 1 deletion physics/MP/Zhao_Carr/zhaocarr_gscond.f
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,8 @@ subroutine zhaocarr_gscond_run (im,km,dt,dtf,prsl,ps,q,clw1 &
psp(i) = psp1(i)
psp1(i) = ps(i)
enddo
else ! two time level scheme - tp1, qp1, psp1 not used
! two time level scheme - tp1, qp1, psp1 not used
else
do k = 1, km
! write(0,*)' in gscond k=',k,' im=',im,' km=',km
do i = 1, im
Expand Down
3 changes: 2 additions & 1 deletion physics/PBL/HEDMF/hedmf.f
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,8 @@ subroutine hedmf_run (im,km,ntrac,ntcw,dv,du,tau,rtg, &
cc
parameter(gravi=1.0/grav)
parameter(gocp=grav/cp)
parameter(cont=cp/grav,conq=hvap/grav,conw=1.0/grav) ! for del in pa
! for del in pa
parameter(cont=cp/grav,conq=hvap/grav,conw=1.0/grav)
! parameter(cont=1000.*cp/grav,conq=1000.*hvap/grav,conw=1000./grav) ! for del in kpa
parameter(rlam=30.0,vk=0.4,vk2=vk*vk)
parameter(prmin=0.25,prmax=4.,zolcr=0.2,zolcru=-0.5)
Expand Down
3 changes: 2 additions & 1 deletion physics/PBL/SHOC/moninshoc.f
Original file line number Diff line number Diff line change
Expand Up @@ -567,7 +567,8 @@ subroutine moninshoc_run (im,km,ntrac,ntcw,ncnd,dv,du,tau,rtg,
endif
endif
!
if (ntke > 0) then ! solve tridiagonal problem for momentum and tke
! solve tridiagonal problem for momentum and tke
if (ntke > 0) then
!
! compute tridiagonal matrix elements for tke
!
Expand Down
12 changes: 8 additions & 4 deletions physics/Radiation/RRTMG/iounitdef.f
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,8 @@ module module_iounitdef !
integer, parameter :: NISIGI2 = 12
integer, parameter :: NISFCI = 14
integer, parameter :: NICO2TR = 15
integer, parameter :: NICO2CN = 112 ! CCE (Cray) forbids 100-102 20211112 JM
! CCE (Cray) forbids 100-102 20211112 JM
integer, parameter :: NICO2CN = 112
integer, parameter :: NIMTNVR = 24
integer, parameter :: NIDTBTH = 27
integer, parameter :: NIO3PRD = 28
Expand All @@ -72,9 +73,12 @@ module module_iounitdef !
integer, parameter :: NICLTUN = 43
integer, parameter :: NIO3CLM = 48
integer, parameter :: NIMICPH = 1
integer, parameter :: NISFCYC = 111 ! CCE (Cray) forbids 100-102 20210701 JM
integer, parameter :: NIAERCM = 112 ! CCE (Cray) forbids 100-102 20210701 JM
integer, parameter :: NIRADSF = 112 ! CCE (Cray) forbids 100-102 20210701 JM
! CCE (Cray) forbids 100-102 20210701 JM
integer, parameter :: NISFCYC = 111
! CCE (Cray) forbids 100-102 20210701 JM
integer, parameter :: NIAERCM = 112
! CCE (Cray) forbids 100-102 20210701 JM
integer, parameter :: NIRADSF = 112

! --- ... output units

Expand Down
68 changes: 45 additions & 23 deletions physics/Radiation/RRTMG/module_bfmicrophysics.f
Original file line number Diff line number Diff line change
Expand Up @@ -285,17 +285,27 @@ SUBROUTINE GSMCONST (DTPG,mype,first)
! mass-weighted fall speeds of rain as functions of mean diameter
! from the lookup tables.
!
RR_DRmin=N0r0*RRATE(MDRmin) !< RR for mean drop diameter of .05 mm
RR_DR1=N0r0*RRATE(MDR1) !< RR for mean drop diameter of .10 mm
RR_DR2=N0r0*RRATE(MDR2) !< RR for mean drop diameter of .20 mm
RR_DR3=N0r0*RRATE(MDR3) !< RR for mean drop diameter of .32 mm
RR_DRmax=N0r0*RRATE(MDRmax) !< RR for mean drop diameter of .45 mm
!
RQR_DRmin=N0r0*MASSR(MDRmin) !< Rain content for mean drop diameter of .05 mm
RQR_DR1=N0r0*MASSR(MDR1) !< Rain content for mean drop diameter of .10 mm
RQR_DR2=N0r0*MASSR(MDR2) !< Rain content for mean drop diameter of .20 mm
RQR_DR3=N0r0*MASSR(MDR3) !< Rain content for mean drop diameter of .32 mm
RQR_DRmax=N0r0*MASSR(MDRmax) !< Rain content for mean drop diameter of .45 mm
!< RR for mean drop diameter of .05 mm
RR_DRmin=N0r0*RRATE(MDRmin)
!< RR for mean drop diameter of .10 mm
RR_DR1=N0r0*RRATE(MDR1)
!< RR for mean drop diameter of .20 mm
RR_DR2=N0r0*RRATE(MDR2)
!< RR for mean drop diameter of .32 mm
RR_DR3=N0r0*RRATE(MDR3)
!< RR for mean drop diameter of .45 mm
RR_DRmax=N0r0*RRATE(MDRmax)
!
!< Rain content for mean drop diameter of .05 mm
RQR_DRmin=N0r0*MASSR(MDRmin)
!< Rain content for mean drop diameter of .10 mm
RQR_DR1=N0r0*MASSR(MDR1)
!< Rain content for mean drop diameter of .20 mm
RQR_DR2=N0r0*MASSR(MDR2)
!< Rain content for mean drop diameter of .32 mm
RQR_DR3=N0r0*MASSR(MDR3)
!< Rain content for mean drop diameter of .45 mm
RQR_DRmax=N0r0*MASSR(MDRmax)
C_N0r0=PI*RHOL*N0r0
CN0r0=1.E6/C_N0r0**.25
CN0r_DMRmin=1./(PI*RHOL*DMRmin**4)
Expand Down Expand Up @@ -418,7 +428,8 @@ SUBROUTINE MY_GROWTH_RATES (DTPH)
!
DT_ICE=(DTPH/600.)**1.5
! MY_GROWTH=DT_ICE*MY_600 ! original version
MY_GROWTH=DT_ICE*MY_600*1.E-3 !-- 20090714: Convert from g to kg
!-- 20090714: Convert from g to kg
MY_GROWTH=DT_ICE*MY_600*1.E-3
!
!-----------------------------------------------------------------------
!
Expand Down Expand Up @@ -579,8 +590,10 @@ subroutine ice_lookup
c2=1./sqrt(3.)
! pi=acos(-1.)
cbulk=6./pi
cbulk_ice=900.*pi/6. ! Maximum bulk ice density allowed of 900 kg/m**3
px=.4**cexp ! Convert fall speeds from 400 mb (Starr & Cox) to 1000 mb
! Maximum bulk ice density allowed of 900 kg/m**3
cbulk_ice=900.*pi/6.
! Convert fall speeds from 400 mb (Starr & Cox) to 1000 mb
px=.4**cexp
!
!--------------------- Dynamic viscosity (1000 mb, 288 K) --------------------------
!
Expand Down Expand Up @@ -2539,13 +2552,17 @@ REAL FUNCTION CONDENSE (PP, QW, RHgrd, TK, WV)
Tdum = TK
WVdum = WV
WCdum = QW
ESW = min(PP, FPVSL(Tdum)) ! Saturation vapor press w/r/t water
! Saturation vapor press w/r/t water
ESW = min(PP, FPVSL(Tdum))
! WS = RHgrd*EPS*ESW/(PP-ESW) ! Saturation mixing ratio w/r/t water
WS = RHgrd*EPS*ESW/(PP+epsm1*ESW) ! Saturation specific hum w/r/t water
DWV = WVdum - WS ! Deficit grid-scale specific humidity
! Saturation specific hum w/r/t water
WS = RHgrd*EPS*ESW/(PP+epsm1*ESW)
! Deficit grid-scale specific humidity
DWV = WVdum - WS
SSAT = DWV / WS ! Supersaturation ratio
CONDENSE = 0.
rfac = 0.5 ! converges faster with 0.5
! converges faster with 0.5
rfac = 0.5
DO WHILE ((SSAT < RHLIMIT1 .AND. WCdum > EPSQ) &
& .OR. SSAT > RHLIMIT)
!
Expand Down Expand Up @@ -2595,10 +2612,13 @@ REAL FUNCTION DEPOSIT (PP, RHgrd, Tdum, WVdum)
!
!-----------------------------------------------------------------------
!
ESI=min(PP, FPVSI(Tdum)) ! Saturation vapor press w/r/t ice
! Saturation vapor press w/r/t ice
ESI=min(PP, FPVSI(Tdum))
! WS=RHgrd*EPS*ESI/(PP-ESI) ! Saturation mixing ratio
WS=RHgrd*EPS*ESI/(PP+epsm1*ESI) ! Saturation mixing ratio
DWV=WVdum-WS ! Deficit grid-scale water vapor mixing ratio
! Saturation mixing ratio
WS=RHgrd*EPS*ESI/(PP+epsm1*ESI)
! Deficit grid-scale water vapor mixing ratio
DWV=WVdum-WS
SSAT=DWV/WS ! Supersaturation ratio
DEPOSIT=0.
DO WHILE (SSAT > RHLIMIT .OR. SSAT < RHLIMIT1)
Expand Down Expand Up @@ -2648,7 +2668,8 @@ SUBROUTINE rsipath(im, ix, ix2, levs, prsl, prsi, t, q, clw &
logical lprnt
!

RECW1 = 620.3505 / TNW**CEXP ! cloud droplet effective radius
! cloud droplet effective radius
RECW1 = 620.3505 / TNW**CEXP

do l=1,levs
do i=1,im
Expand Down Expand Up @@ -2979,7 +3000,8 @@ subroutine rsipath2 &
!
!===> ... begin here
!
recw1 = 620.3505 / TNW**CEXP ! cloud droplet effective radius
! cloud droplet effective radius
recw1 = 620.3505 / TNW**CEXP

do k = 1, LEVS
do i = 1, IM
Expand Down
9 changes: 6 additions & 3 deletions physics/Radiation/RRTMG/radlw_datatb.f
Original file line number Diff line number Diff line change
Expand Up @@ -938,12 +938,15 @@ module module_radlw_cldprlw !

!> absrain is the rain drop absorption coefficient \f$(m^{2}/g)\f$ .
! real (kind=kind_phys), parameter :: absrain = 3.07e-3 ! chou coeff
real (kind=kind_phys), parameter :: absrain = 0.33e-3 ! ncar coeff
! ncar coeff
real (kind=kind_phys), parameter :: absrain = 0.33e-3

!> abssnow0 is the snow flake absorption coefficient (micron), fu coeff
real (kind=kind_phys), parameter :: abssnow0 = 1.5 ! fu coeff
! fu coeff
real (kind=kind_phys), parameter :: abssnow0 = 1.5
!> abssnow1 is the snow flake absorption coefficient \f$(m^{2}/g)\f$, ncar coeff
real (kind=kind_phys), parameter :: abssnow1 = 2.34e-3 ! ncar coeff
! ncar coeff
real (kind=kind_phys), parameter :: abssnow1 = 2.34e-3

! === absliq# is the liquid water absorption coefficient (m2/g).

Expand Down
30 changes: 20 additions & 10 deletions physics/Radiation/RRTMG/radlw_param.f
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,8 @@ module module_radlw_parameters !
!! \section arg_table_topflw_type Argument Table
!! \htmlinclude topflw_type.html
!!
type topflw_type !< define type construct for radiation fluxes at toa
!< define type construct for radiation fluxes at toa
type topflw_type
real (kind=kind_phys) :: upfxc !< total sky upward flux at toa
real (kind=kind_phys) :: upfx0 !< clear sky upward flux at toa
end type topflw_type
Expand All @@ -84,28 +85,36 @@ module module_radlw_parameters !
!! \section arg_table_sfcflw_type Argument Table
!! \htmlinclude sfcflw_type.html
!!
type sfcflw_type !< define type construct for radiation fluxes at surface
!< define type construct for radiation fluxes at surface
type sfcflw_type
real (kind=kind_phys) :: upfxc !< total sky upward flux at sfc
real (kind=kind_phys) :: upfx0 !< clear sky upward flux at sfc
real (kind=kind_phys) :: dnfxc !< total sky downward flux at sfc
real (kind=kind_phys) :: dnfx0 !< clear sky downward flux at sfc
end type sfcflw_type
!
type proflw_type !< define type construct for optional radiation flux profiles
!< define type construct for optional radiation flux profiles
type proflw_type
real (kind=kind_phys) :: upfxc !< level up flux for total sky
real (kind=kind_phys) :: dnfxc !< level down flux for total sky
real (kind=kind_phys) :: upfx0 !< level up for clear sky
real (kind=kind_phys) :: dnfx0 !< level down flux for clear sky
end type proflw_type
!
! Parameter constants for LW band structures
integer, parameter :: NBANDS = 16 !< number of total spectral bands
integer, parameter :: NGPTLW = 140 !< number of total g-points
!< number of total spectral bands
integer, parameter :: NBANDS = 16
!< number of total g-points
integer, parameter :: NGPTLW = 140
integer, parameter :: NTBL = 10000 !< lookup table dimension
integer, parameter :: MAXGAS = 7 !< maximum number of absorbing gases
integer, parameter :: MAXXSEC= 4 !< number of halocarbon gases
integer, parameter :: NRATES = 6 !< number of ref rates of binary species
integer, parameter :: NPLNK = 181 !< dimension for plank function table
!< maximum number of absorbing gases
integer, parameter :: MAXGAS = 7
!< number of halocarbon gases
integer, parameter :: MAXXSEC= 4
!< number of ref rates of binary species
integer, parameter :: NRATES = 6
!< dimension for plank function table
integer, parameter :: NPLNK = 181

integer, parameter :: NBDLW = NBANDS

Expand All @@ -125,7 +134,8 @@ module module_radlw_parameters !

!> band indices for each g-point
integer, dimension(NGPTLW) :: NGB
data NGB(:) / 10*1, 12*2, 16*3, 14*4, 16*5, 8*6, 12*7, 8*8, & ! band 1- 8
! band 1- 8
data NGB(:) / 10*1, 12*2, 16*3, 14*4, 16*5, 8*6, 12*7, 8*8, &
& 12*9, 6*10, 8*11, 8*12, 4*13, 2*14, 2*15, 2*16 / ! band 9-16

!> Band spectrum structures (wavenumber is 1/cm)
Expand Down
3 changes: 2 additions & 1 deletion physics/Radiation/RRTMG/radsw_datatb.f
Original file line number Diff line number Diff line change
Expand Up @@ -2466,7 +2466,8 @@ module module_radsw_cldprtb !
!> asymmetry coefficients
real (kind=kind_phys), dimension(nblow:nbhgh), public :: c0r

data a0r,a1r / 3.07e-3, 0.0 /, a0s,a1s / 0.0, 1.5 / ! fu's coeff
! fu's coeff
data a0r,a1r / 3.07e-3, 0.0 /, a0s,a1s / 0.0, 1.5 /

data b0r / 0.466, 0.437, 0.416, 0.391, 0.374, 0.352, 0.183, &
& 0.048, 0.012, 0.000, 0.000, 0.000, 0.000, 0.496 /
Expand Down
15 changes: 10 additions & 5 deletions physics/Radiation/RRTMG/radsw_param.f
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,16 @@ module module_radsw_parameters !

integer, parameter :: NBLOW = 16 !< band range lower index
integer, parameter :: NBHGH = 29 !< band range upper index
integer, parameter :: NBANDS = NBHGH-NBLOW+1 !< total number of SW bands (14)
integer, parameter :: NGPTSW = 112 !< total number of g-point in all bands
integer, parameter :: NGMAX = 16 !< maximum number of g-point in one band
integer, parameter :: MAXGAS = 7 !< maximum number of absorbing gases
integer, parameter :: NTBMX = 10000 !< index upper limit of optical depth and transmittance tables
!< total number of SW bands (14)
integer, parameter :: NBANDS = NBHGH-NBLOW+1
!< total number of g-point in all bands
integer, parameter :: NGPTSW = 112
!< maximum number of g-point in one band
integer, parameter :: NGMAX = 16
!< maximum number of absorbing gases
integer, parameter :: MAXGAS = 7
!< index upper limit of optical depth and transmittance tables
integer, parameter :: NTBMX = 10000
! SW bands counter starting index (for compatibility with previous
!! SW radiation schemes)
integer, parameter :: NSWSTR = 1
Expand Down
Loading