PUBLIC INTERFACE ~ PUBLIC DATA ~ PUBLIC ROUTINES ~ NAMELIST ~ DIAGNOSTIC FIELDS ~ ERROR MESSAGES ~ REFERENCES ~ NOTES

Module cloud_rad_mod

Contact:  Steve Klein
Reviewers: 
Change History: WebCVS Log


OVERVIEW

The cloud radiation module uses the stored values of the prognostic cloud variables, and computes the cloud albedo and absorption for the two shortwave bands (ultra-violet/visible and near-infrared), the longwave cloud emissivity, and the fractional areas covered by clouds.

The cloud radiation module condenses the cloud information provided by the stratiform cloud scheme and converts it into the areas covered by, the water paths and the effective particle sizes of liquid and ice. This cloud information is stored into cloud blocks which are assumed to be randomly overlapped (done in CLOUD_ORGANIZE subroutine). From these, the single-scattering albedo, asymmetry parameter, and optical depth for the two short wave bands and the longwave cloud emissivity for each cloud are calculated in the subroutine CLOUD_OPTICAL_PROPERTIES. Finally, the subroutine CLOUD_RAD takes the shortwave cloud properties and converts them using the Delta-Eddington solution to albedo and absorption in each of the shortwave bands.

In CLOUD_OPTICAL_PROPERTIES, the parameterization of Slingo (1989) and Ebert and Curry (1992) are used for the shortwave properties of liquid and ice clouds, respectively. For the longwave cloud emissivity, the empirical observation result of Stephens (1978) is used for liquid clouds whereas the parameterization of Ebert and Curry (1992) is used for ice clouds.

In CLOUD_ORGANIZE, the effective radius for liquid clouds is calculated using the parameterization of Martin et al. (1994) whereas the effective radius of ice clouds is parameterized using that of Donner et al. (1997).



OTHER MODULES USED

         fms_mod
constants_mod
diag_manager_mod
time_manager_mod

PUBLIC INTERFACE

cloud_rad_init:
Called once to initialize cloud_rad module. This routine reads the namelist, registers any requested diagnostic fields, and (when called from strat_cloud_init [standard practice]) returns the overlap assumption to strat_cloud for use in determining cloud and large-scale precipitation overlap.

cloud_rad_end:
A destructor routine for the cloud_rad module.

lw_emissivity:
Subroutine lw_emissivity computes the longwave cloud emissivity using the cloud mass absorption coefficient and the water path.

cloud_summary3:
cloud_summary3 returns the specification properties of the clouds present in the strat_cloud_mod.

max_rnd_overlap:
max_rnd_overlap returns various cloud specification properties obtained with the maximum-random overlap assumption.

rnd_overlap:
rnd_overlap returns various cloud specification properties, obtained with the random-overlap assumption. implicit in this assumption is that all clouds are only a single layer thick; i.e., clouds at adjacent levels in the same column are independent of one another.

CLOUD_RAD_k_diag:
This subroutine calculates the following radiative properties for each cloud:

               1. r_uv : cloud reflectance in uv band
               2. r_nir: cloud reflectance in nir band
               3. ab_uv: cloud absorption in uv band
               4. ab_nir:cloud absorption in nir band
cloud_rad_k:
Subroutine cloud_rad_k calculates the cloud reflectances and absorptions in the uv and nir wavelength bands. These quantities are computed by dividing the shortwave spectrum into 4 bands and then computing the reflectance and absorption for each band individually and then setting the uv reflectance and absorption equal to that of band 1 and the nir reflectance and absorption equal to the spectrum-weighted results of bands 2,3,and 4. The limits of bands are defined in subroutine sw_optical_properties.

sw_optical_properties:
sw_optical_properties computes the needed optical parameters and then calls cloud_rad_k in order to compute the cloud radiative properties.



PUBLIC DATA

None.


PUBLIC ROUTINES

  1. cloud_rad_init

    call cloud_rad_init (axes, Time, qmin_in, N_land_in, N_ocean_in, & overlap_out)
    DESCRIPTION
    Initializes values of qmin, N_land, and N_ocean using values from strat_cloud namelist as well as reads its own namelist variables. In addition, it registers diagnostic fields if needed, and returns the value of the cloud overlap to strat_cloud.



    INPUT
    axes    Axis integers for diagnostics
       [integer, optional]
    Time    Time type variable for diagnostics
       [time_type, optional]
    qmin_in    Input value of minimum permissible cloud liquid, ice, or fraction
       [real, kg condensate/kg air, optional]
    N_land_in    Input value of number of cloud drop per cubic meter over land
       [real, #/(m*m*m), optional]
    N_ocean_in    Input value of number of cloud drop per cubic meter over ocean
       [real, #/(m*m*m), optional]

    OUTPUT
    overlap_out    Integer indicating the overlap assumption being used (1 = maximum-random, 2 = random)
       [integer, optional]

  2. cloud_rad_end

    call cloud_rad_end 
    
    DESCRIPTION
    A destructor routine for the cloud_rad module.



  3. lw_emissivity

    call lw_emissivity (is, js, lwp, iwp, reff_liq, reff_ice, & nclds, em_lw)
    DESCRIPTION


    INPUT
    is    Starting subdomain i index of data in the physics_window being integrated
       [integer]
    js    Starting subdomain j index of data in the physics_window being integrated
       [integer]
    lwp    Liquid water path [ kg / m**2 ]
       [real]
    iwp    Ice water path [ kg / m**2 ]
       [real]
    reff_liq    Effective cloud drop radius used with bulk cloud physics scheme [ microns ]
       [real]
    reff_ice    Effective ice crystal radius used with bulk cloud physics scheme [ microns ]
       [real]
    nclds    Number of random overlapping clouds in column
       [integer]

    OUTPUT
    em_lw    longwave cloud emmissivity [ dimensionless ]
       [real]

  4. cloud_summary3

    call cloud_summary3 (is, js, land, ql, qi, qa, qn, pfull, phalf, & tkel, nclds, cldamt, lwp, iwp, reff_liq, & reff_ice, ktop, kbot, conc_drop, conc_ice, & size_drop, size_ice)
    DESCRIPTION
    cloud_summary3 returns the specification properties of the clouds present in the strat_cloud_mod.



    INPUT
    is,js    Indices for model slab
       [integer]
    land    Fraction of the grid box covered by land [ dimensionless ]
       [real]
    ql    Cloud liquid condensate [ kg condensate/kg air ]
       [real]
    qi    Cloud ice condensate [ kg condensate/kg air ]
       [real]
    qa    Cloud volume fraction [ fraction ]
       [real]
    qn    Cloud droplet number [ #/kg air ]
       [real]
    pfull    Pressure at full levels [ Pascals ]
       [real]
    phalf    Pressure at half levels [ Pascals ] NOTE: it is assumed that phalf(j+1) > phalf(j)
       [real]
    tkel    Temperature [ deg. Kelvin ]
       [real]

    OUTPUT
    nclds    Number of random-overlap clouds in a column
       [integer]
    cldamt    Cloud amount of condensed cloud
       [real]
    lwp    Liquid water path
       [real]
    iwp    Ice water path
       [real]
    reff_liq    Effective radius of cloud drops
       [real]
    reff_ice    Effective radius of ice crystals
       [real]
    ktop    Integer level for top of cloud, present when max-random overlap assumption made.
       [integer, optional]
    kbot    Integer level for bottom of cloud, present when max-random overlap assumption made.
       [integer, optional]
    conc_drop    Liquid cloud droplet mass concentration, present when microphysically-based cloud radiative properties are desired.
       [real, optional]
    conc_ice    Ice cloud mass concentration, present when microphysically-based cloud radiative properties are desired
       [real, optional]
    size_drop    Effective diameter of liquid cloud droplets, present when microphysically-based cloud radiative properties are desired.
       [real, optional]
    size_ice    Effective diameter of ice cloud, present when microphysically-based cloud radiative properties are desired.
       [real, optional]

  5. max_rnd_overlap

    call max_rnd_overlap (ql, qi, qa, pfull, phalf, tkel, N_drop3D, N_drop2D, & k_ratio, nclds, ktop, kbot, cldamt, lwp, & iwp, reff_liq, reff_ice)
    DESCRIPTION
    max_rnd_overlap returns various cloud specification properties obtained with the maximum-random overlap assumption.



    INPUT
    ql    Cloud liquid condensate [ kg condensate/kg air ]
       [real]
    qi    Cloud ice condensate [ kg condensate/kg air ]
       [real]
    qa    Cloud volume fraction [ fraction ]
       [real]
    pfull    Pressure at full levels [ Pascals ]
       [real]
    phalf    Pressure at half levels, index 1 at model top [ Pascals ]
       [real]
    tkel    Temperature [ deg Kelvin ]
       [real]
    N_drop[23]D    Number of cloud droplets per cubic meter (2 and 3 dimensional array)
       [real]
    k_ratio    Ratio of effective radius to mean volume radius
       [real]

    OUTPUT
    nclds    Number of (random overlapping) clouds in column
       [integer]
    ktop    Level of the top of the cloud.
       [integer]
    kbot    Level of the bottom of the cloud.
       [integer]
    cldamt    Cloud amount of condensed cloud [ dimensionless ]
       [real]
    lwp    Cloud liquid water path [ kg condensate / m **2 ]
       [real]
    iwp    Cloud ice path [ kg condensate / m **2 ]
       [real]
    reff_liq    Effective radius for liquid clouds [ microns ]
       [real]
    reff_ice    Effective particle size for ice clouds [ microns ]
       [real]

  6. rnd_overlap

    call rnd_overlap (ql, qi, qa, pfull, phalf, tkel, N_drop, & k_ratio, nclds, cldamt, lwp, iwp, reff_liq, & reff_ice, conc_drop_org, conc_ice_org, & size_drop_org, size_ice_org)
    DESCRIPTION
    rnd_overlap returns various cloud specification properties, obtained with the random-overlap assumption. implicit in this assumption is that all clouds are only a single layer thick; i.e., clouds at adjacent levels in the same column are independent of one another.



    INPUT
    ql    Cloud liquid condensate [ kg condensate/kg air ]
       [real]
    qi    Cloud ice condensate [ kg condensate/kg air ]
       [real]
    qa    Cloud volume fraction [ fraction ]
       [real]
    pfull    Pressure at full levels [ Pascals ]
       [real]
    phalf    Pressure at half levels, index 1 at model top [ Pascals ]
       [real]
    tkel    Temperature [ deg Kelvin ]
       [real]
    N_drop    Number of cloud droplets per cubic meter
       [real]
    k_ratio    Ratio of effective radius to mean volume radius
       [real]

    OUTPUT
    nclds    Number of (random overlapping) clouds in column
       [integer]
    cldamt    Cloud amount of condensed cloud [ dimensionless ]
       [real]
    lwp    Cloud liquid water path [ kg condensate / m **2 ]
       [real]
    iwp    Cloud ice path [ kg condensate / m **2 ]
       [real]
    reff_liq    Effective radius for liquid clouds [ microns ]
       [real]
    reff_ice    Effective particle size for ice clouds [ microns ]
       [real]
    conc_drop_org    Liquid cloud droplet mass concentration [ g / m**3 ]
       [real, optional]
    conc_ice_org    Ice cloud mass concentration [ g / m**3 ]
       [real, optional]
    size_drop_org    Effective diameter of liquid cloud droplets [ microns ]
       [real, optional]
    size_ice_org    Effective diameter of ice clouds [ microns ]
       [real, optional]

  7. CLOUD_RAD_k_diag

    call CLOUD_RAD_k_diag (tau, direct, w0,gg,coszen,r_uv,r_nir,ab_uv,ab_nir)
    DESCRIPTION
    This subroutine calculates the following radiative properties for each cloud:

                   1. r_uv : cloud reflectance in uv band
                   2. r_nir: cloud reflectance in nir band
                   3. ab_uv: cloud absorption in uv band
                   4. ab_nir:cloud absorption in nir band
    These quantities are computed by dividing the shortwave spectrum into 4 bands and then computing the reflectance and absorption for each band individually and then setting the uv reflectance and absorption equal to that of band 1 and the nir reflectance and absorption equal to the spectrum weighted results of bands 2,3,and 4. The limits of bands are described in CLOUD_OPTICAL_PROPERTIES.



    INPUT
    tau    Optical depth in 4 bands [ dimensionless ]
       [real]
    direct    Logical variable for each cloud indicating whether or not to use the direct beam solution for the delta-eddington radiation or the diffuse beam radiation solution.
       [logical]
    w0    Single scattering albedo in 4 bands [ dimensionless ]
       [real]
    gg    Asymmetry parameter in 4 bands [ dimensionless ]
       [real]
    coszen    Cosine of the zenith angle [ dimensionless ]
       [real]

    INPUT/OUTPUT
    r_uv    Cloud reflectance in uv band
       [real]
    r_nir    Cloud reflectance in nir band
       [real]
    ab_nir    Cloud absorption in nir band
       [real]
    ab_uv    Cloud absorption in uv band
       [real]

  8. cloud_rad_k

    call cloud_rad_k (tau, w0, gg, coszen, r_uv, r_nir, & ab_nir, ab_uv_out)
    DESCRIPTION
    Subroutine cloud_rad_k calculates the cloud reflectances and absorptions in the uv and nir wavelength bands. These quantities are computed by dividing the shortwave spectrum into 4 bands and then computing the reflectance and absorption for each band individually and then setting the uv reflectance and absorption equal to that of band 1 and the nir reflectance and absorption equal to the spectrum-weighted results of bands 2,3,and 4. The limits of bands are defined in subroutine sw_optical_properties.



    INPUT
    tau    Optical depth [ dimensionless ]
       [real]
    w0    Single scattering albedo [ dimensionless ]
       [real]
    gg    Asymmetry parameter for each band [ dimensionless ]
       [real]
    coszen    Cosine of zenith angle [ dimensionless ]
       [real]

    INPUT/OUTPUT
    r_uv    Cloud reflectance in uv band
       [real]
    r_nir    Cloud reflectance in nir band
       [real]
    ab_nir    Cloud absorption in nir band
       [real]
    ab_uv_out    Cloud absorption in uv band
       [real, optional]

  9. sw_optical_properties

    call sw_optical_properties (nclds, lwp, iwp, reff_liq, reff_ice, & coszen, r_uv, r_nir, ab_nir)
    DESCRIPTION
    sw_optical_properties computes the needed optical parameters and then calls cloud_rad_k in order to compute the cloud radiative properties.



    INPUT
    nclds    Number of random overlapping clouds in column
       [integer]
    lwp    Liquid water path [ kg / m**2 ]
       [real]
    iwp    Ice water path [ kg / m**2 ]
       [real]
    reff_liq    Effective cloud drop radius used with bulk cloud physics scheme [ microns ]
       [real]
    reff_ice    Effective ice crystal radius used with bulk cloud physics scheme [ microns ]
       [real]
    coszen    Cosine of zenith angle [ dimensionless ]
       [real]

    INPUT/OUTPUT
    r_uv    Cloud reflectance in uv band
       [real]
    r_nir    Cloud reflectance in nir band
       [real]
    ab_nir    Cloud absorption in nir band
       [real]


NAMELIST

&cloud_rad_nml

overlap
integer variable indicating which overlap assumption to use: overlap = 1. means condensate in adjacent levels is treated as part of the same cloud i.e. maximum-random overlap overlap = 2. means condensate in adjacent levels is treated as different clouds i.e. random overlap
[, dimension, units: , default: ]
l2strem
logical variable indicating which solution for cloud radiative properties is being used. l2strem = T 2 stream solution l2strem = F Delta-Eddington solution Note that IF l2strem = T then the solution does not depend on solar zenith angle
[, dimension, units: , default: ]
taucrit
critical optical depth for switching direct beam to diffuse beam for use in Delta-Eddington solution [ dimensionless]
[, dimension, units: , default: ]
adjust_top
logical variable indicating whether or not to use the code which places the top and bottom of the cloud at the faces which are most in view from the top and bottom of the cloud block. this is done to avoid undue influence of very small cloud fractions. if true this adjustment of tops is performed; if false this is not performed.
[, dimension, units: , default: ]
scale_factor
factor which multiplies actual cloud optical depths to account for the plane-parallel homo- genous cloud bias (e.g. Cahalan effect). [ dimensionless]
[, dimension, units: , default: ]
qamin
minimum permissible cloud fraction [ dimensionless]
[, dimension, units: , default: ]
do_brenguier
should drops at top of stratocumulus clouds be scaled?
[, dimension, units: , default: ]


DIAGNOSTIC FIELDS

Diagnostic fields may be output to a netcdf file by specifying the module name identifier and the desired field names (given below) in file diag_table. See the documentation for diag_manager.
Diagnostic fields for module name identifier: 



DATA SETS



ERROR MESSAGES

FATAL in cloud_rad_init
Fatal crashes occur in initialization of the module if: 1. overlap does not equal 1 or 2 2. taucrit < 0. 3. scale_factor < 0. 4. qamin outside of the range of 0 to 1.


REFERENCES

  1. The shortwave properties of liquid clouds come from:

    Slingo, A., 1989: A GCM parameterization for the shortwave radiative properties of water clouds. J. Atmos. Sci., vol. 46, pp. 1419-1427.

  2. The shortwave and longwave properties of ice clouds come from:

    Ebert, E. E. and J. A. Curry, 1992: A parameterization of ice cloud optical properties for climate models. J. Geophys. Res., vol. 97, D1, pp. 3831-3836.

  3. The longwave emissivity parameterization of liquid clouds comes from:

    Stephens, G. L., 1978: Radiation profiles in extended water clouds. II: Parameterization schemes. J. Atmos. Sci., vol. 35, pp. 2123-2132.

  4. The parameterization of liquid cloud effective radius comes from:

    Martin, G. M., D. W. Johnson, and A. Spice, 1994: The measurement and parameterization of effective radius of droplets in warm stratocumulus clouds. J. Atmos. Sci, vol 51, pp. 1823-1842.

  5. The parameterization of ice cloud effective radius comes from:

    Donner, L. J., C. J. Seman, B. J. Soden, R. S. Hemler, J. C. Warren, J. Strom, and K.-N. Liou, 1997: Large-scale ice clouds in the GFDL SKYHI general circulation model. J. Geophys. Res., vol. 102, D18, pp. 21,745-21,768.

  6. The algorithm to reproduce the ISCCP satellite view of clouds comes from:

    Klein, S. A., and C. Jakob, 1999: Validation and sensitivities of frontal clouds simulated by the ECMWF model. Monthly Weather Review, 127(10), 2514-2531.



COMPILER SPECIFICS



PRECOMPILER OPTIONS



LOADER OPTIONS

        

TEST PROGRAM



KNOWN BUGS



NOTES



FUTURE PLANS

The optical depth and particle size for every model level will become a diagnostic output field.



top