CCPP Scientific Documentation
v4.1.0
module_radiation_aerosols Module Reference

This module contains climatological atmospheric aerosol schemes for radiation computations.

Data Types

type  gocart_index_type
 index for gocart aerosol species to be included in the calculations of aerosol optical properties (ext, ssa, asy) More...
 
type  tracer_index_type
 index for gocart aerosols from prognostic tracer fields More...
 

Functions/Subroutines

subroutine, public aer_init (NLAY, me)
 The initialization program is to set up necessary parameters and working arrays. More...
 
subroutine clim_aerinit (solfwv, eirfwv, me )
 This subroutine is the opac-climatology aerosol initialization program to set up necessary parameters and working arrays. More...
 
subroutine, public aer_update (iyear, imon, me)
 This subroutine checks and updates time varying climatology aerosol data sets. More...
 
subroutine, public setaer (prsi, prsl, prslk, tvly, rhlay, slmsk, tracer, xlon, xlat, IMAX, NLAY, NLP1, lsswr, lslwr, aerosw, aerolw , aerodp )
 This subroutine computes aerosols optical properties. More...
 
subroutine 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 gocart_init (NWVTOT, solfwv, soltot, NWVTIR, eirfwv, NBDSW, NLWBND, NSWLWBD, imon, me, raddt, fdaer )
 The initialization program for gocart aerosols. More...
 
subroutine setgocartaer (alon, alat, prslk, rhlay, dz, hz, NSWLWBD, prsl, tvly, trcly, IMAX, NLAY, NLP1, ivflip, lsswr, lslwr, aerosw, aerolw )
 This subroutine computes SW + LW aerosol optical properties for gocart aerosol species (merged from fcst and clim fields). More...
 

Variables

character(40), parameter vtagaer ='NCEP-Radiation_aerosols v5.2 Jan 2013 '
 
integer, parameter, public nf_aesw = 3
 number of output fields for SW rad More...
 
integer, parameter, public nf_aelw = 3
 number of output fields for LW rad More...
 
integer, parameter, public nlwstr = 1
 starting band number in IR region More...
 
integer, parameter, public nspc = 5
 
integer, parameter, public nspc1 = NSPC + 1
 
real(kind=kind_phys), parameter f_zero = 0.0
 
real(kind=kind_phys), parameter f_one = 1.0
 
integer, save nswbnd = NBDSW
 
integer, save nlwbnd = NBDLW
 
integer, save nswlwbd = NBDSW+NBDLW
 
logical, save lalwflg = .true.
 
logical, save laswflg = .true.
 
logical, save lavoflg = .true.
 
logical, save lmap_new = .true.
 
integer, parameter, public nwvsol = 151
 
integer, parameter, public nwvtot = 57600
 
integer, parameter, public nwvtir = 4000
 
integer, dimension(nwvsol), save nwvns0
 
real(kind=kind_phys), dimension(nwvsol), save s0intv
 
real(kind=kind_phys), dimension(nbdsw), save wvn_sw1
 
real(kind=kind_phys), dimension(nbdsw), save wvn_sw2
 
real(kind=kind_phys), dimension(nbdlw), save wvn_lw1
 
real(kind=kind_phys), dimension(nbdlw), save wvn_lw2
 
integer, parameter minvyr = 1850
 
integer, parameter maxvyr = 1999
 
integer, dimension(:,:,:), allocatable, save ivolae
 
integer kyrstr
 
integer kyrend
 
integer kyrsav
 
integer kmonsav
 
integer, parameter nxc = 5
 num of max componets in a profile More...
 
integer, parameter nae = 7
 
integer, parameter ndm = 5
 
integer, parameter imxae = 72
 
integer, parameter jmxae = 37
 
integer, parameter naerbnd =61
 
integer, parameter nrhlev =8
 
integer, parameter ncm1 = 6
 
integer, parameter ncm2 = 4
 
integer, parameter ncm = NCM1+NCM2
 
real(kind=kind_phys), dimension(nrhlev), save rhlev
 
real(kind=kind_phys), dimension(ndm, nae), save haer
 
real(kind=kind_phys), dimension(ndm, nae), save prsref
 
real(kind=kind_phys), dimension(ndm, nae), save sigref
 
real(kind=kind_phys), dimension(:,:), allocatable, save extrhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save scarhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save ssarhi
 
real(kind=kind_phys), dimension(:,:), allocatable, save asyrhi
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save extrhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save scarhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save ssarhd
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save asyrhd
 
real(kind=kind_phys), dimension(:), allocatable, save extstra
 
real(kind=kind_phys), dimension(nxc, imxae, jmxae), save cmixg
 
real(kind=kind_phys), dimension(2,imxae, jmxae), save denng
 
integer, dimension(nxc, imxae, jmxae), save idxcg
 
integer, dimension( imxae, jmxae), save kprfg
 
integer, parameter kaerbnd =61
 
integer, parameter krhlev =36
 
integer, save kcm1 = 0
 
integer, save kcm2 = 0
 
integer, save kcm
 
real(kind=kind_phys), dimension(krhlevrhlev_grt
 
integer, dimension(:), allocatable iendwv_grt
 
real(kind=kind_phys), dimension(:,:), allocatable rhidext0_grt
 
real(kind=kind_phys), dimension(:,:), allocatable rhidssa0_grt
 
real(kind=kind_phys), dimension(:,:), allocatable rhidasy0_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable rhdpext0_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable rhdpssa0_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable rhdpasy0_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save extrhi_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save ssarhi_grt
 
real(kind=kind_phys), dimension(:,:), allocatable, save asyrhi_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save extrhd_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save ssarhd_grt
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save asyrhd_grt
 
integer, parameter imxg = 144
 
integer, parameter jmxg = 91
 
integer, parameter kmxg = 30
 
integer, save nmxg
 
real(kind=kind_phys), parameter dltx = 360.0 / float(IMXG)
 
real(kind=kind_phys), parameter dlty = 180.0 / float(JMXG-1)
 
real(kind=kind_phys), dimension(:,:,:), allocatable, save psclmg
 
real(kind=kind_phys), dimension(:,:,:,:), allocatable, save dmclmg
 
real(kind=kind_phys), dimension(:), allocatable, save geos_rlon
 
real(kind=kind_phys), dimension(:), allocatable, save geos_rlat
 
character *4, save gocart_climo = 'xxxx'
 
real(kind=kind_io4), dimension(:), allocatable molwgt
 
logical, save lgrtint = .true.
 
logical, save lckprnt = .false.
 
real(kind=kind_phys), save ctaer = f_zero
 
logical, save get_fcst = .true.
 
logical, save get_clim = .true.
 
integer, save isoot
 
integer, save iwaso
 
integer, save isuso
 
integer, save issam
 
integer, save isscm
 
type(gocart_index_type), save dm_indx
 index for aer spec to be included in aeropt calculations More...
 
type(tracer_index_type), save dmfcs_indx
 index for prognostic aerosol fields More...
 
integer, save num_gridcomp = 0
 number of aerosol grid components More...
 
character, dimension(:), allocatable, save gridcomp
 aerosol grid components More...
 
integer, parameter max_num_gridcomp = 5
 default full-package setting More...
 
character *2, dimension(max_num_gridcompmax_gridcomp
 
integer, dimension(ncmidxspc
 index conversion array More...
 
real(kind=kind_phys), parameter wvn550 = 1.0e4/0.55
 the wavenumber ( \(cm^-1\)) of wavelength 550nm for diagnostic aod output More...
 
integer, save nv_aod = 1
 the SW spectral band covering wvn550 (comp in aer_init) More...