IndexRundeck: P1SoM40Created: Thu May 9 03:30:17 EDT 2024

advanc

Module: SOCPBL
File: PBL.f
Summary: time steps the solutions for the boundary layer variables. It is called from within the subroutine pbl (in PBL_DRV.f). All its outputs are contained in the structure pbl_args (an instance of t_pbl_args).
Author : Ye Cheng/G. Hartke
Version:

Declaration:
Variables:
coriol : real*8, intent(in)
2.*omega*sin(latitude), the coriolis factor
utop : real*8, intent(in)
x component of wind at the top of the layer
vtop : real*8, intent(in)
y component of wind at the top of the layer
ttop : real*8
virtual potential temperature at the top of the layer
qtop : real*8, intent(in)
moisture at the top of the layer
tgrnd0 : real*8
bulk virt. pot. temp. of the ground, at the roughness height
tg : real*8
actual ground temp
elhx : real*8
relevant latent heat for qg calc
qgrnd0 : real*8
initial moisture at the ground, at the roughness height
qgrnd_sat : real*8
saturated moisture at the ground, at the roughness height
evap_max : real*8
maximal evaporation from unsaturated soil
fr_sat : real*8
fraction of saturated soil
ztop : real*8, intent(in)
height of the first model layer, approx 200 m if lm=9
dtime : real*8
time step
ilong : integer, intent(in)
longitude identifier
jlat : integer, intent(in)
latitude identifier
ihc : integer, intent(in)
Height class (for debugging printout)
itype : integer, intent(in)
1, ocean; 2, ocean ice; 3, land ice; 4, land
psurf : real*8
surface pressure
trhr0 : real*8
incident long wave radiation
sss_loc : real*8
SSS at i,j
dtdt_gcm : real*8, intent(in)
ttop tendency from processes other than turbulence (K/s)
utop_old : real*8, intent(in)
utop after turb. diffusion during previous timestep
vtop_old : real*8, intent(in)
vtop after turb. diffusion during previous timestep
us : real*8
= x component of surface wind, positive eastward (m/s)
vs : real*8
= y component of surface wind, positive northward (m/s)
tsv : real*8
= virtual potential temperature of the surface (K)
qsrf : real*8
surface specific moisture
kms : real*8, intent(out)
= momentum transport coefficient at ZGS (m**2/s)
khs : real*8
= heat transport coefficient at ZGS (m**2/s)
kqs : real*8, intent(out)
surface value of kq
ws : real*8
= magn of GCM surf wind - ocean curr + buoyancy + gust (m/s)
ustar : real*8
= friction speed (square root of momentum flux) (m/s)
cm : real*8
= drag coefficient (dimensionless surface momentum flux)
ch : real*8
= Stanton number (dimensionless surface heat flux)
cq : real*8
= Dalton number (dimensionless surface moisture flux)
z0m : real*8, intent(inout)
= roughness length for momentum,
z0h : real*8, intent(out)
= roughness length for temperature (m)
z0q : real*8, intent(out)
= roughness length for water vapor (m)
dskin : real*8
skin-bulk SST difference
us : real*8
= x component of surface wind, positive eastward (m/s)
vs : real*8
= y component of surface wind, positive northward (m/s)
wsgcm : real*8
= magnitude of the GCM surface wind - ocean currents (m/s)
wspdf : real*8
= mean surface wind calculated from PDF of wind speed (m/s)
ws : real*8
= magn of GCM surf wind - ocean curr + buoyancy + gust (m/s)
tsv : real*8
= virtual potential temperature of the surface (K)
qs :
= surface value of the specific moisture
dbl : real*8
= boundary layer height (m)
kms : real*8, intent(out)
= momentum transport coefficient at ZGS (m**2/s)
khs : real*8
= heat transport coefficient at ZGS (m**2/s)
khq :
= moist transport coefficient at ZGS (m**2/s)
ppbl :
= pressure at DBL (mb)
ustar : real*8
= friction speed (square root of momentum flux) (m/s)
cm : real*8
= drag coefficient (dimensionless surface momentum flux)
ch : real*8
= Stanton number (dimensionless surface heat flux)
cq : real*8
= Dalton number (dimensionless surface moisture flux)
z0m : real*8, intent(inout)
= roughness length for momentum,
z0h : real*8, intent(out)
= roughness length for temperature (m)
z0q : real*8, intent(out)
= roughness length for water vapor (m)
ug : real*8
= eastward component of the geostrophic wind (m/s)
vg : real*8
= northward component of the geostrophic wind (m/s)
mdf : real*8, intent(in)
= downdraft mass flux (m/s)
wint :
= integrated surface wind speed over sgs wind distribution
u : real*8, dimension(n), intent(inout)
local due east component of wind
v : real*8, dimension(n), intent(inout)
local due north component of wind
t : real*8, dimension(n), intent(inout)
local virtual potential temperature
q : real*8, dimension(n), intent(inout)
local specific humidity (a passive scalar)
e : real*8, dimension(n-1), intent(inout)
local turbulent kinetic energy
n :
number of the local, vertical grid points
lscale : real*8, dimension(n-1)
turbulence length scale. computed on secondary grid.
z : real*8, dimension(n)
altitude of primary vertical grid points
zhat : real*8, dimension(n-1)
altitude of secondary vertical grid points
dzh : real*8, dimension(n-1)
dz evaluated at zhat(i)
dz : real*8, dimension(n)
dz evaluated at z(i)
dxi :
(z(n)-z(1))/(n-1)
km : real*8, dimension(n-1)
turbulent momentum tranport coefficient.
kh : real*8, dimension(n-1)
turbulent thermometric conductivity. computed
ke : real*8, dimension(n-1)
transport coefficient for the turbulent kinetic energy.
tv : real*8, dimension(n)
local virtual potential temperature
tdns : real*8
downdraft temperature in K, (i,j)
qdns : real*8
downdraft humidity in kg/kg, (i,j)
pbl_args : type(t_pbl_args), intent(inout)

dpdxr : real*8, intent(in)

dpdyr : real*8, intent(in)

dpdxr0 : real*8, intent(in)

dpdyr0 : real*8, intent(in)

w2_1 : real*8, intent(out)
the vertical component of 2*e at GCM layer 1
ufluxs : real*8, intent(out)

vfluxs : real*8, intent(out)

tfluxs : real*8, intent(out)

qfluxs : real*8, intent(out)

uocean : real*8

vocean : real*8

qsol : real*8

tprime : real*8

qprime : real*8

tr4 : real*8

ocean : logical

ddml_eq_1 : logical

gusti : real*8

ws0 : real*8

lmonin : real*8

qsat : real*8

deltasst : real*8

tgskin : real*8

qnet : real*8

ts : real*8

rhosrf : real*8

qgrnd : real*8

delt : real*8

tstar : real*8

qstar : real*8

ustar0 : real*8

test : real*8

wstar3 : real*8

wstar2h : real*8

tgrnd : real*8

ustar_oc : real*8

bgrid : real*8

an2 : real*8

as2 : real*8

dudz : real*8

dvdz : real*8

tau : real*8

tgr4skin : real*8

ws02 : real*8

dm : real*8

tol : real*8, parameter
Initial Value = 1d-3
w : real*8, parameter
Initial Value = .5d0
itmax : integer, parameter
Initial Value = 5
iprint : integer, parameter
Initial Value = 0
jprint : integer, parameter
Initial Value = 41
xi : real*8, dimension(n)

usave : real*8, dimension(n)

vsave : real*8, dimension(n)

tsave : real*8, dimension(n)

qsave : real*8, dimension(n)

usave1 : real*8, dimension(n)

vsave1 : real*8, dimension(n)

tsave1 : real*8, dimension(n)

qsave1 : real*8, dimension(n)

iter : integer
loop variable
i : integer
loop variable
xihat : real*8, dimension(n-1)

kq : real*8, dimension(n-1)

esave : real*8, dimension(n-1)

esave1 : real*8, dimension(n-1)

ierr : integer

gm : real*8, dimension(n-1)

gh : real*8, dimension(n-1)

lmonin_dry : real*8

tg1 : real*8

wstar :
the convection-induced wind according to
w2_1 : real*8, intent(out)
the vertical component of 2*e at GCM layer 1

Simplex Website Curator: Igor Aleinov — NASA Official: Gavin A. Schmidt

Contact GISS NASA Privacy PolicyAccessibility