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

Module optical_path_mod

Contact:  fil
Reviewers:  ds
Change History: WebCVS Log


OVERVIEW

Module that set up optical depth calculaiton

radiative fluxes


OTHER MODULES USED

            fms_mod
constants_mod
rad_utilities_mod
longwave_params_mod
lw_gases_stdtf_mod

PUBLIC INTERFACE

optical_path_init:
Subroutine to initialize optical depth calculation and read optical path namelist from input file.
optical_path_setup:
Subroutine to prepare optical path calculation, such as memory allocation.
optical_trans_funct_from_KS:
Subroutine to compute transmission function from level KS to another level
optical_trans_funct_k_down:
Subroutine to compute transmission function downward from level k
optical_trans_funct_KE:
Subroutine to compute transmission function from level KE
optical_trans_funct_diag:
Subroutine to compute diagnostic transmission function
get_totch2o:
Subroutine to compute self broadened temperature dependent water vapor continuum
get_totch2obd:
Subroutine to compute self broadened temperature dependent water vapor continuum
get_totvo2:
Subroutine to compute continuum coefficients in band n
optical_dealloc:
Subroutine to deallocate the array components of the optical_path_type input variable.
optical_path_end:
optical_path_end is the destructor for optical_path_mod.
optical_ckd_init:
Subroutine to initialize water vapor self and foreign broadened continuum coefficients.
optical_path_ckd:
Subroutine to compute water vapor self and foreign broadened continuum optical paths
optical_o3:
Subroutine to compute optical paths for o3.
optical_rbts:
Subroutine to compute optical paths for h2o rbts continuum
optical_h2o:
Subroutine to compute water vapor optical paths
cfc_optical_depth:
Subroutine to compute CFC optical depths
optical_depth_aerosol:
Subroutine to compute aerosol optical depths


PUBLIC DATA

None.


PUBLIC ROUTINES

  1. optical_path_init

    call optical_path_init 
    
    DESCRIPTION
    Subroutine to initialize optical depth calculation and read optical path namelist from input file.


  2. optical_path_setup

    call optical_path_setup (is, ie, js, je, Atmos_input, & Rad_gases, Aerosol, Aerosol_props, Optical)
    DESCRIPTION
    Subroutine to prepare optical path calculation, such as memory allocation.


    INPUT
    is, ie, js, je    Latitude and longitude bound of model physics window.
       [integer]
    Atmos_input    Atmospheric input data
       [atmos_input_type]
    Rad_gases    Radiative gases input data
       [radiative_gases_type]
    Aerosol    Aerosol radiative properties input data
       [aerosol_type]

    INPUT/OUTPUT
    Aerosol_props    Aerosol radiative properties output (extinction coefficient, single scattering albedo and asymmetry parameter in different bands)
       [aerosol_properties_type]
    Optical    optical path output
       [optical_path_type]

  3. optical_trans_funct_from_KS

    call optical_trans_funct_from_KS (Gas_tf, to3cnt, overod, Optical, & cnttaub1, cnttaub2, cnttaub3)
    DESCRIPTION
    Subroutine to compute transmission function from level KS to another level


    INPUT/OUTPUT
    Gas_tf    Gas transmission functions
       [gas_tf_type]
    Optical    Optical depth function
       [real]

    OUTPUT
    to3cnt    Ozone continuum transmission function
       [real]
    overod    Transmission function due to h2o continuum and aerosol
       [real]
    cnttaub1, cnttaub2, cnttaub3    Transmission functions of gas continuum
       [real]

  4. optical_trans_funct_k_down

    call optical_trans_funct_k_down (Gas_tf, k, & to3cnt, overod, Optical)
    DESCRIPTION
    Subroutine to compute transmission function downward from level k


    INPUT
    k    The data level from which downward transmission functions are computed
       [integer]

    INPUT/OUTPUT
    Gas_tf    Gas transmission functions
       [gas_tf_type]
    Optical    Optical depth function
       [real]

    OUTPUT
    to3cnt    Ozone continuum transmission function
       [real]
    overod    Transmission function due to h2o continuum and aerosol
       [real]

  5. optical_trans_funct_KE

    call optical_trans_funct_KE (Gas_tf, to3cnt, Optical, overod)
    DESCRIPTION
    Subroutine to compute transmission function from level KE


    INPUT/OUTPUT
    Gas_tf    Gas transmission functions
       [gas_tf_type]
    Optical    Optical depth function
       [real]

    OUTPUT
    to3cnt    Ozone continuum transmission function
       [real]
    overod    Transmission function due to h2o continuum and aerosol
       [real]

  6. optical_trans_funct_diag

    call optical_trans_funct_diag (Atmos_input, contdg, to3dg, & Optical)
    DESCRIPTION
    Subroutine to compute diagnostic transmission function


    INPUT
    Atmos_input    Atmospheric input data
       [atmos_input_type]

    INPUT/OUTPUT
    Optical    Optical depth function
       [real]

    OUTPUT
    to3dg    Ozone continuum diagnostic transmission function
       [real]
    contdg    Diagnostic continuum transmission functions
       [real]

  7. get_totch2o

    call get_totch2o (n, Optical, totch2o, dte1, ixoe1)
    DESCRIPTION
    Subroutine to compute self broadened temperature dependent water vapor continuum


    INPUT
    n    frequency band index
       [integer]
    dte1    temperature step delta
       [real]
    ixoe1    temperature index array
       [integer]

    INPUT/OUTPUT
    Optical    Optical depth output
       [optical_path_type]

    OUTPUT
    totch2o    self broadened and temperature dependent continuum
       [real]

  8. get_totch2obd

    call get_totch2obd (n, Optical, totch2obd)
    DESCRIPTION
    Subroutine to compute self broadened temperature dependent water vapor continuum


    INPUT
    n    frequency band index
       [integer]

    INPUT/OUTPUT
    Optical    Optical depth output
       [optical_path_type]

    OUTPUT
    totch2obd    self broadened and temperature dependent h2o continuum
       [real]

  9. get_totvo2

    call get_totvo2 (n, Optical, totvo2_out)
    DESCRIPTION
    Subroutine to compute continuum coefficients in band n


    INPUT
    n    frequency band index
       [integer]

    INPUT/OUTPUT
    Optical    Optical depth output
       [optical_path_type]

    OUTPUT
    totvo2_out    Continuum coefficients in band n
       [real]

  10. optical_dealloc

    call optical_dealloc (Optical)
    DESCRIPTION
    This subroutine deallocates the array components of the optical_path_type input variable. Dependent on the namelist options chosen, some of the arrays may or may nothave been allocated.


    INPUT/OUTPUT
    Optical    Derived type variable containing information related to the computation of optical depth associated with different atmospheric constituents.
       [optical_path_type]

  11. optical_path_end

    call optical_path_end 
    
    DESCRIPTION
    optical_path_end is the destructor for optical_path_mod.


  12. optical_ckd_init

    call optical_ckd_init 
    
    DESCRIPTION
    Idckdh2o reads ckd2.1 self and foreign-broadened h2o continuum coefficients, corrections, and coefficients for temperature dependence of the self-continuum. these are tabulated at 10 cm-1 intervals from 0 to 20000 cm-1


  13. optical_path_ckd

    call optical_path_ckd (atmden, press, temp, rh2o, Optical)
    DESCRIPTION
    Subroutine to compute water vapor self and foreign broadened continuum optical paths over the frequency range specified by ioffh2o and nptch2o using the ckd algorithm, modified for the gcm parameterization.


    INPUT
    atmden    Atmospheric density profile
       [real]
    press    The pressure coordinate array
       [real]
    temp    Temperature
       [real]
    rh2o    mass mixing ratio of h2o at model data levels
       [real]

    INPUT/OUTPUT
    Optical    water vapor continuum optical path otuput
       [optical_path_type]

  14. optical_o3

    call optical_o3 (atmden, qo3, vv, Optical)
    DESCRIPTION
    Subroutine to compute optical paths for o3.


    INPUT
    atmden    Atmospheric density profile
       [real]
    qo3    mass mixing ratio of o3 at model data levels
       [real]
    vv    Ozone volume mixing atio
       [real]

    INPUT/OUTPUT
    Optical    ozone optical path otuput
       [optical_path_type]

  15. optical_rbts

    call optical_rbts (temp, rh2o, Optical)
    DESCRIPTION
    Subroutine to compute optical paths for h2o rbts continuum


    INPUT
    temp    temperature profile used in continuum calculation
       [real]
    rh2o    mass mixing ratio of h2o at model data levels
       [real]

    INPUT/OUTPUT
    Optical    water vapor robert continuum optical path
       [optical_path_type]

  16. optical_h2o

    call optical_h2o (pflux, atmden, vv, press, temp, rh2o, tflux, & Optical)
    DESCRIPTION
    Subroutine to compute water vapor optical paths


    INPUT
    pflux    pressure at flux levels of model
       [real]
    atmden    Atmospheric density profile
       [real]
    vv    volume mixing ratio of h2o at model data levels
       [real]
    press    The pressure coordinate array
       [real]
    temp    Temperature at data levels of model
       [real]
    rh2o    mass mixing ratio of h2o at model data levels
       [real]
    tflux    Temperature at flux levels of model
       [real]

    INPUT/OUTPUT
    Optical    water vapor optical path otuput
       [optical_path_type]

  17. cfc_optical_depth

    call cfc_optical_depth (density, Rad_gases, Optical)
    DESCRIPTION
    Subroutine to compute CFC optical depths. The code assumes a constant mixing ratio throughout the atmosphere.


    INPUT
    density    density profile of CFC in the atmosphere
       [real]
    Rad_gases    Radiative gases optical properties input data
       [radiative_gases_type]

    INPUT/OUTPUT
    Optical    CFC Optical depth output
       [optical_path_type]

  18. optical_depth_aerosol

    call optical_depth_aerosol (Atmos_input, n, Aerosol, & Aerosol_props, Optical)
    DESCRIPTION
    Subroutine to compute aerosol optical depths.


    INPUT
    Atmos_input    Atmospheric input data to model grid point for radiative properties calculation
       [atmos_input_type]
    n    aerosol optical index
       [integer]
    Aerosol    Aerosol climatological input data
       [aerosol_type]

    INPUT/OUTPUT
    Aerosol_props    Aerosol radiative properties
       [aerosol_properties_type]
    Optical    Aerosol Optical depth output
       [optical_path_type]


DATA SETS

None.


ERROR MESSAGES

None.


top