CCPP Scientific Documentation
v5.0.0
radiation_aerosols.f File Reference

This file contains climatological atmospheric aerosol schemes for radiation computations. More...

Modules

module  module_radiation_aerosols
 

Functions/Subroutines

subroutine module_radiation_aerosols::aer_property (prsi, prsl, prslk, tvly, rhlay, dz, hz, tracer, alon, alat, slmsk, laersw, laerlw, IMAX, NLAY, NLP1, aerosw, aerolw, aerodp )
 This subroutine maps the 5 degree global climatological aerosol data set onto model grids, and compute aerosol optical properties for SW and LW radiations. More...
 
subroutine radclimaer
 This subroutine computes aerosols optical properties in NSWLWBD bands. there are seven different vertical profile structures. in the troposphere, aerosol distribution at each grid point is composed from up to six components out of ten different substances. More...
 
subroutine module_radiation_aerosols::gocart_aerinit (solfwv, eirfwv, me )
 This subroutine is the gocart aerosol initialization program to set up necessary parameters and working arrays. More...
 
subroutine rd_gocart_luts
 This subroutine is the gocart aerosol initialization program to set up necessary parameters and working arrays. More...
 
subroutine optavg_gocart
 This subroutine is the gocart aerosol initialization program to set up necessary parameters and working arrays. More...
 
subroutine module_radiation_aerosols::aer_property_gocart
 This subroutine compute aerosol optical properties for SW and LW radiations. More...
 
subroutine aeropt
 This subroutine is the gocart aerosol initialization program to set up necessary parameters and working arrays. More...
 

Variables

character(40), parameter module_radiation_aerosols::vtagaer ='NCEP-Radiation_aerosols v5.2 Jan 2013 '
 
integer, parameter, public module_radiation_aerosols::nf_aesw = 3
 num of output fields for SW rad More...
 
integer, parameter, public module_radiation_aerosols::nf_aelw = 3
 num of output fields for LW rad More...
 
integer, parameter, public module_radiation_aerosols::nlwstr = 1
 starting band number in ir region More...
 
integer, parameter, public module_radiation_aerosols::nspc = 5
 num of species for output aod (opnl) More...
 
integer, parameter, public module_radiation_aerosols::nspc1 = NSPC + 1
 total+species More...
 
real(kind=kind_phys), parameter module_radiation_aerosols::f_zero = 0.0
 
real(kind=kind_phys), parameter module_radiation_aerosols::f_one = 1.0
 
integer, save module_radiation_aerosols::nswbnd = NBDSW
 number of actual bands for sw aerosols; calculated according to laswflg setting More...
 
integer, save module_radiation_aerosols::nlwbnd = NBDLW
 number of actual bands for lw aerosols; calculated according to lalwflg and lalw1bd settings More...
 
integer, save module_radiation_aerosols::nswlwbd = NBDSW+NBDLW
 total number of bands for sw+lw aerosols More...
 
logical, save module_radiation_aerosols::lalwflg = .true.
 
logical, save module_radiation_aerosols::laswflg = .true.
 
logical, save module_radiation_aerosols::lavoflg = .true.
 
logical, save module_radiation_aerosols::lmap_new = .true.
 
integer, parameter, public module_radiation_aerosols::nwvsol = 151
 num of wvnum regions where solar flux is constant More...
 
integer, parameter, public module_radiation_aerosols::nwvtot = 57600
 total num of wvnum included More...
 
integer, parameter, public module_radiation_aerosols::nwvtir = 4000
 total num of wvnum in ir range More...
 
integer, dimension(nwvsol), save module_radiation_aerosols::nwvns0
 number of wavenumbers in each region where the solar flux is constant More...
 
real(kind=kind_phys), dimension(nwvsol), save module_radiation_aerosols::s0intv
 solar flux \(w/m^2\) in each wvnumb region where it is constant More...
 
real(kind=kind_phys), dimension(nbdsw), save module_radiation_aerosols::wvn_sw1
 
real(kind=kind_phys), dimension(nbdsw), save module_radiation_aerosols::wvn_sw2
 
real(kind=kind_phys), dimension(nbdlw), save module_radiation_aerosols::wvn_lw1
 
real(kind=kind_phys), dimension(nbdlw), save module_radiation_aerosols::wvn_lw2
 
integer, parameter module_radiation_aerosols::minvyr = 1850
 lower limit (year) data available More...
 
integer, parameter module_radiation_aerosols::maxvyr = 1999
 upper limit (year) data available More...
 
integer, dimension(:,:,:), allocatable, save module_radiation_aerosols::ivolae
 monthly, 45-deg lat-zone aerosols data set in subroutine 'aer_init' More...
 
integer module_radiation_aerosols::kyrstr
 starting year of data in the input file More...
 
integer module_radiation_aerosols::kyrend
 ending year of data in the input file More...
 
integer module_radiation_aerosols::kyrsav
 the year of data in use in the input file More...
 
integer module_radiation_aerosols::kmonsav
 the month of data in use in the input file More...
 
integer, parameter module_radiation_aerosols::nxc = 5
 num of max componets in a profile More...
 
integer, parameter module_radiation_aerosols::nae = 7
 num of aerosols profile structures More...
 
integer, parameter module_radiation_aerosols::ndm = 5
 num of atmos aerosols domains More...
 
integer, parameter module_radiation_aerosols::imxae = 72
 num of lon-points in glb aeros data set More...
 
integer, parameter module_radiation_aerosols::jmxae = 37
 num of lat-points in glb aeros data set More...
 
integer, parameter module_radiation_aerosols::naerbnd =61
 num of bands for clim aer data (opac) More...
 
integer, parameter module_radiation_aerosols::nrhlev =8
 num of rh levels for rh-dep components More...
 
integer, parameter module_radiation_aerosols::ncm1 = 6
 num of rh independent aeros species More...
 
integer, parameter module_radiation_aerosols::ncm2 = 4
 num of rh dependent aeros species More...
 
integer, parameter module_radiation_aerosols::ncm = NCM1+NCM2
 
real(kind=kind_phys), dimension(nrhlev), save module_radiation_aerosols::rhlev
 predefined relative humidity levels More...
 
real(kind=kind_phys), dimension(ndm, nae), save module_radiation_aerosols::haer
 scale height of aerosols (km) More...
 
real(kind=kind_phys), dimension(ndm, nae), save module_radiation_aerosols::prsref
 ref pressure lev (sfc to toa) in mb (100Pa) More...
 
real(kind=kind_phys), dimension(ndm, nae), save module_radiation_aerosols::sigref
 ref sigma lev (sfc to toa) More...
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::extrhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::scarhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::ssarhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::asyrhi
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::extrhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::scarhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::ssarhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::asyrhd
 
real(kind=kind_phys), dimension(:), allocatable, save module_radiation_aerosols::extstra
 
topospheric aerosol profile distribution
real(kind=kind_phys), dimension(nxc, imxae, jmxae), save module_radiation_aerosols::cmixg
 aeros component mixing ratio More...
 
real(kind=kind_phys), dimension(2,imxae, jmxae), save module_radiation_aerosols::denng
 aeros number density More...
 
integer, dimension(nxc, imxae, jmxae), save module_radiation_aerosols::idxcg
 aeros component index More...
 
integer, dimension( imxae, jmxae), save module_radiation_aerosols::kprfg
 aeros profile index More...
 
module variables for gocart aerosol optical properties
integer, parameter module_radiation_aerosols::kaerbndd =61
 num of bands for aer data (gocart) More...
 
integer, parameter module_radiation_aerosols::kaerbndi =56
 num of bands for aer data (gocart) More...
 
integer, parameter module_radiation_aerosols::krhlev =36
 num of rh levels for rh-dep components More...
 
integer, parameter module_radiation_aerosols::kcm1 = 5
 num of gocart rh indep aerosols More...
 
integer, parameter module_radiation_aerosols::kcm2 = 10
 num of gocart rh dep aerosols More...
 
integer, parameter module_radiation_aerosols::kcm = KCM1 + KCM2
 num of gocart aerosols More...
 
real(kind=kind_phys), dimension(:) module_radiation_aerosols::rhlev_grt
 num of bands for aer data (gocart) More...
 
real(kind=kind_phys), dimension(krhlev) module_radiation_aerosols::data
 num of bands for aer data (gocart) More...
 
relative humidity independent aerosol optical properties:

species: du001, du002, du003, du004, du005

real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::extrhi_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::scarhi_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::ssarhi_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save module_radiation_aerosols::asyrhi_grt
 

relative humidity dependent aerosol optical properties:

species : ss001, ss002, ss003, ss004, ss005, so4, bcphobic, bcphilic, ocphobic, ocphilic

real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::extrhd_grt
 extinction coefficient More...
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::scarhd_grt
 extinction coefficient More...
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::ssarhd_grt
 extinction coefficient More...
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save module_radiation_aerosols::asyrhd_grt
 extinction coefficient More...
 
integer, parameter module_radiation_aerosols::num_gc = 5
 gocart species More...
 
character *2, dimension(num_gc) module_radiation_aerosols::gridcomp
 extinction coefficient More...
 
integer, dimension(num_gc) module_radiation_aerosols::num_radius
 extinction coefficient More...
 
integer, dimension(num_gc) module_radiation_aerosols::radius_lower
 extinction coefficient More...
 
integer, dimension(num_gc) module_radiation_aerosols::trc_to_aod
 extinction coefficient More...
 
integer, dimension(ncm) module_radiation_aerosols::idxspc
 index conversion array:data idxspc / 1, 2, 1, 1, 1, 1, 3, 5, 5, 4 / More...
 
real(kind=kind_phys), parameter module_radiation_aerosols::wvn550 = 1.0e4/0.55
 the wavenumber ( \(cm^-1\)) of wavelength 550nm for diagnostic aod output More...
 
integer, save module_radiation_aerosols::nv_aod = 1
 the sw spectral band covering wvn550 (comp in aer_init) More...
 
subroutine, public module_radiation_aerosols::aer_init (NLAY, me)
 The initialization program is to set up necessary parameters and working arrays. More...
 
subroutine wrt_aerlog
 This subroutine writes aerosol parameter configuration to run log file. More...
 
subroutine set_spectrum
 This subroutine defines the one wavenumber solar fluxes based on toa solar spectral distribution, and define the one wavenumber IR fluxes based on black-body emission distribution at a predefined temperature. More...
 
subroutine set_volcaer
 The initialization program for stratospheric volcanic aerosols. More...
 
subroutine module_radiation_aerosols::clim_aerinit (solfwv, eirfwv, me )
 This subroutine is the opac-climatology aerosol initialization program to set up necessary parameters and working arrays. More...
 
subroutine set_aercoef
 The initialization program for climatological aerosols. The program reads and maps the pre-tabulated aerosol optical spectral data onto corresponding SW radiation spectral bands. More...
 
subroutine optavg
 This subroutine computes mean aerosols optical properties over each SW radiation spectral band for each of the species components. This program follows GFDL's approach for thick cloud optical property in SW radiation scheme (2000). More...
 
subroutine, public module_radiation_aerosols::aer_update (iyear, imon, me)
 This subroutine checks and updates time varying climatology aerosol data sets. More...
 
subroutine trop_update
 This subroutine updates the monthly global distribution of aerosol profiles in five degree horizontal resolution. More...
 
subroutine volc_update
 This subroutine searches historical volcanic data sets to find and read in monthly 45-degree lat-zone band of optical depth. More...
 
subroutine, public module_radiation_aerosols::setaer (prsi, prsl, prslk, tvly, rhlay, slmsk, tracer, aerfld, xlon, xlat, IMAX, NLAY, NLP1, lsswr, lslwr, aerosw, aerolw , aerodp )
 This subroutine computes aerosols optical properties. More...