PUBLIC ROUTINES
call cloud_zonal_init (season)
Input
season Season for returned data. [integer]
The following are valid values:
1 = winter
2 = spring
3 = summer
4 = fall
5 = seasonal varying
Note: This routine does not need to called. If this routine was not called
previously, then routine getcld (and cloud_zonal) will call it with
seasonal varying clouds (season=5).
-----------------------------------------------------------------------
subroutine cloud_zonal (time, lat, phalf, &
nclds, ktopsw, kbtmsw, ktoplw, kbtmlw, &
cldamt, cuvrf, cirrf, cirab, emcld)
Input
time The current time. Used only when seasonal varying clouds
(season=5) have been initialized. [time_type]
lat The (mean) latitude in radians of all grid boxes.
[real, dimension(:,:)]
phalf Pressure in pascals at half model levels. Should be normalized
so that the pressure at level nlev+1 is 101325 pascals, this
will insure that all grid boxes have three cloud levels.
[real, dimension(:,:,nlev+1)]
Output
nclds The number of clouds in a vertical column at each grid box.
This routine will return nclds=3 at all grid points.
[integer, dimension(:,:)]
ktopsw, The top and bottom index (at layer interfaces) for high,
kbtmsw middle, and low clouds for shortwave calculations.
[integer, dimension(:,:,3)]
ktopsw, The top and bottom index (at model levels) for high,
kbtmlw middle, and low clouds for longwave calculations.
[integer, dimension(:,:,3)]
cldamt The fractional cloud amount for high, middle, and low clouds.
[real, dimension(:,:,3)]
cuvrf The fractional amount of ultraviolet radiation reflected for
high, middle, and low clouds. [real, dimension(:,:,3)]
cirrf The fractional amount of infrared radiation reflected for
high, middle, and low clouds. [real, dimension(:,:,3)]
cirab The fractional amount of infrared radiation absorbed for high,
middle, and low clouds. [real, dimension(:,:,3)]
emcld The emissivity for high, middle, and low clouds.
This routine will return emcld=1 for all clouds.
[real, dimension(:,:,3)]
-----------------------------------------------------------------------
subroutine getcld (time, lat, phalf, ktopsw, kbtmsw, cldamt)
Input
time The current time. Used only when seasonal varying clouds
(season=5) have been initialized. [time_type]
lat The (mean) latitude in radians of all grid boxes.
[real, dimension(:,:)]
phalf Pressure in pascals at half model levels. Should be normalized
so that the pressure at level nlev+1 is 101325 pascals, this
will insure that all grid boxes have three cloud levels.
[real, dimension(:,:,nlev+1)]
Output
ktopsw, The top and bottom index (at layer interfaces) for high,
kbtmsw middle, and low clouds for shortwave calculations.
[integer, dimension(:,:,3)]
ktopsw, The top and bottom index (at model levels) for high,
kbtmlw middle, and low clouds for longwave calculations.
[integer, dimension(:,:,3)]
cldamt The fractional cloud amount for high, middle, and low clouds.
[real, dimension(:,:,3)]