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

Module isccp_clouds_mod

Contact:  fil
Reviewers:  ds
Change History: WebCVS Log


OVERVIEW

isccp_clouds partitions the model cloud fields into the isccp cloud categories, by cld top height and cld optical thickness and provides netcdf output.



OTHER MODULES USED

         fms_mod
time_manager_mod
diag_manager_mod

PUBLIC INTERFACE

isccp_clouds_init:
isccp_clouds_init is the constructor for isccp_clouds_mod.
isccp_output:
subroutine isccp_diag maps the model cloud distribution to the isccp cloud categories, and provides netcdf output if desired.
isccp_cloudtypes:
isccp_cloudtypes calculates the fraction of each model grid box covered by each of the 49 ISCCP D level cloud types (i.e. stratified by optical depth and cloud top pressure) by accounting for model overlap.
isccp_cloudtypes_stochastic:
isccp_cloudtypes calculates the fraction of each model grid box covered by each of the 49 ISCCP D level cloud types (i.e. stratified by optical depth and cloud top pressure). This version uses the columns generated for the McICA treatment of radiation.
isccp_clouds_end:
isccp_clouds_end is the destructor for isccp_clouds_mod.
diag_field_init:
diag_field_init registers the potential netcdf output variables with diag_manager_mod.
ran0:
ran0 is a platform-independent random number generator from Numerical Recipes -- Mark Webb July 1999


PUBLIC DATA

None.


PUBLIC ROUTINES

  1. isccp_clouds_init

    call isccp_clouds_init (axes, Time)
    DESCRIPTION
    isccp_clouds_init is the constructor for isccp_clouds_mod.


    INPUT
    axes    diagnostic variable axes for netcdf files
       [real]
    Time    current time [ time_type(days, seconds) ]
       [time_type]

  2. isccp_output

    call isccp_output (is, js, fq_isccp, npoints, inhomogeneity_parameter, ninhomog, Time)
    DESCRIPTION
    subroutine isccp_diag maps the model cloud distribution to the isccp cloud categories, and provides netcdf output if desired.


    INPUT
    is, js    starting/ending subdomain i,j indices of data in the physics_window being integrated
       [integer]
    Time    time on next timestep, used as stamp for diagnostic output
       [time_type]
    fq_isccp    matrix of fractional area covered by cloud types of a given optical depth and cloud top pressure range. The matrix is 7x7 for 7 cloud optical depths and 7 cloud top pressure ranges
       [real]
    npoints    flag indicating whether isccp cloud is present in column (cloud + daylight needed)
       [real]
    ninhomog    flag indicating cloud inhomogeneity calculations have been performed [1.=True, 0.=False]
       [real]

    OUTPUT
    inhomogeneity_parameter    Cloud inhomogeneity parameter (between 0 and 1 if valid point, -1. if not computed at this point [ dimensionless ]
       [real]

  3. isccp_cloudtypes

    call isccp_cloudtypes (sunlit, pfull, phalf, qv, at, skt, cc, & dtau_s, dem_s, fq_isccp, nisccp,& inhomogeneity_parameter, ninhomog)
    DESCRIPTION
    isccp_cloudtypes calculates the fraction of each model grid box covered by each of the 49 ISCCP D level cloud types (i.e. stratified by optical depth and cloud top pressure) by accounting for model overlap. For further explanation see Klein and Jakob, Monthly Weather Review, (2000), vol x, pp. .


    INPUT
    sunlit    integer flag indicating whether or not a given point is sunlit [1 = True, 0 = False ]
       [integer]
    pfull    pressure of full model levels, pfull(1) is top level of model, pfull(nlev) is bottom level of model
       [real]
    phalf    pressure of half model levels, phalf(1) is top of model, phalf(nlev+1) is the surface pressure
       [real]
    qv    water vapor specific humidity on model levels. used only if top_height = 1 or top_height = 3.
       [real]
    at    temperature in each model level [ deg K ] used only if top_height = 1 or top_height = 3.
       [real]
    skt    skin temperature [ deg K ] used only if top_height = 1 or top_height = 3.
       [real]
    ninhomog    flag indicating cloud inhomogeneity calculations have been performed [1.=True, 0.=False]
       [real]

    INPUT/OUTPUT
    cc    cloud cover in each model layer [ fraction ] this includes convective clouds if any NOTE: This is the HORIZONTAL area of each grid box covered by clouds
       [real]
    dtau_s    mean 0.67 micron optical depth of stratiform clouds in each model level [ dimensionless ] NOTE: this the cloud optical depth of only the cloudy part of the grid box, it is not weighted with the 0 cloud optical depth of the clear part of the grid box
       [real]
    dem_s    10.5 micron longwave emissivity of stratiform clouds in each model level. used only if top_height = 1 or top_height = 3. Same note applies as in dtau. [ dimensionless ]
       [real]

    OUTPUT
    fq_isccp    matrix of fractional area covered by cloud types of a given optical depth and cloud top pressure range. The matrix is 7x7 for 7 cloud optical depths and 7 cloud top pressure ranges. [ fraction ]
       [real]
    nisccp    real flag indicating whether or not isccp_cloudtypes produced valid output [ 1.=True, 0.=False ]
       [real]
    inhomogeneity_parameter    Cloud inhomogeneity parameter (between 0 and 1 if valid point, -1. if not computed at this point [ dimensionless ]
       [real]

  4. isccp_cloudtypes_stochastic

    call isccp_cloudtypes_stochastic 
    
    DESCRIPTION
    isccp_cloudtypes calculates the fraction of each model grid box covered by each of the 49 ISCCP D level cloud types (i.e. stratified by optical depth and cloud top pressure). For further explanation see Klein and Jakob, Monthly Weather Review, (2000), vol x, pp. . This version uses the columns generated for the McICA treatment of radiation; overlap is imposed in the "cloud generator" that takes the place of SCOPS, and internal inhomogeneity can be added too.



    INPUT
    sunlit    integer flag indicating whether or not a given point is sunlit [1 = True, 0 = False ]
       [integer]
    pfull    pressure of full model levels, pfull(1) is top level of model, pfull(nlev) is bottom level of model
       [real]
    phalf    pressure of half model levels, phalf(1) is top of model, phalf(nlev+1) is the surface pressure
       [real]
    qv    water vapor specific humidity on model levels. used only if top_height = 1 or top_height = 3.
       [real]
    at    temperature in each model level [ deg K ] used only if top_height = 1 or top_height = 3.
       [real]
    skt    skin temperature [ deg K ] used only if top_height = 1 or top_height = 3.
       [real]
    ninhomog    flag indicating cloud inhomogeneity calculations have been performed [1.=True, 0.=False]
       [real]

    INPUT/OUTPUT
    cc    cloud cover in each model layer [ fraction ] this includes convective clouds if any NOTE: This is the HORIZONTAL area of each grid box covered by clouds
       [real]
    dtau_s    mean 0.67 micron optical depth of stratiform clouds in each model level [ dimensionless ] NOTE: this the cloud optical depth of only the cloudy part of the grid box, it is not weighted with the 0 cloud optical depth of the clear part of the grid box
       [real]
    dem_s    10.5 micron longwave emissivity of stratiform clouds in each model level. used only if top_height = 1 or top_height = 3. Same note applies as in dtau. [ dimensionless ]
       [real]

    OUTPUT
    fq_isccp    matrix of fractional area covered by cloud types of a given optical depth and cloud top pressure range. The matrix is 7x7 for 7 cloud optical depths and 7 cloud top pressure ranges. [ fraction ]
       [real]
    nisccp    real flag indicating whether or not isccp_cloudtypes produced valid output [ 1.=True, 0.=False ]
       [real]
    inhomogeneity_parameter    Cloud inhomogeneity parameter (between 0 and 1 if valid point, -1. if not computed at this point [ dimensionless ]
       [real]

  5. isccp_clouds_end

    call isccp_clouds_end 
    
    DESCRIPTION
    isccp_clouds_end is the destructor for isccp_clouds_mod.


  6. diag_field_init

    call diag_field_init (Time, axes )
    DESCRIPTION
    diag_field_init registers the potential netcdf output variables with diag_manager_mod.


    INPUT
    axes    diagnostic variable axes for netcdf files
       [real]
    Time    initialization time for the netcdf output fields
       [time_type]

  7. ran0

    x = ran0 (idum)
    DESCRIPTION
    ran0 is a platform-independent random number generator from Numerical Recipes -- Mark Webb July 1999


    INPUT
    idum    seed for random number generator
       [real]


DATA SETS

None.


ERROR MESSAGES

None.


top