.BG
.FN disort
.TL
Discrete Ordinates Radiative Transfer Solver
.DN
provides an interface to the Fortran 
package of the same name developed by Warren Wiscombe et. al. The 
package solves the radiative transfer equation for multiple scattering in 
one-dimensional media.
.CS
disort(input.list = disort.input, 
       layer.tau = input.list$layer.tau, 
       ssa       = input.list$ssa, 
       moments   = input.list$moments, 
       mu0       = input.list$mu0, 
       observation.tau = input.list$observation.tau, 
       observation.mu  = input.list$observation.mu, 
       observation.phi = input.list$observation.phi, 
       surface.albedo  = 0)
.OA
.AG input.list
The medium in which the radiative transfer equations are to be solved
may be descibed by providing each argument described below, or 
by providing a list with components with names and values corresponding 
to wach argument. By default, the disort function looks in the current search path 
for a list named "disort.input". 
.AG layer.tau
optical depth of each layer in the medium. 
.AG ssa
single scatter albedo of the medium. May be a vector as long
as layer.tau or a single value, assumed constant throughout the medium.
.AG moments
moments (starting from 0) of the Legendre polynomial expansion of the 
single scattering phase function. May be either a vector (phase 
function is constant though the medium) or a matrix with as many columns 
as layer.tau. The number of moments provided determines the number of 
streams used in the solution. 
.AG mu0
cosine of the direct beam solar zenith angles. Each value of mu0 
requires a separate call to DISORT, although this is transparent from
within Splus. 
.AG observation.tau
vertical coordinate of the observation locations. These values are
entirely decoupled from the computional layers described by layer.tau. 
.AG observation.mu
cosine of observational polar angles. 
.AG observation.phi
azimuthal angle relative to direct beam, in degrees. 
.AG surface.albedo
lambertian albedo of underlying surface. 
.RT
A list with the following components:
.RC layer.tau
copy of the input argument layer.tau
.RC ssa
copy of the input argument ssa, replicated if need be to 
the length of layer.tau.
.RC moments
copy of the input argument moments, replicated if need be to 
a matrix with length(layer.tau) columns.
.RC observation.tau
copy of the input argument observation.tau
.RC observation.mu
copy of the input argument observation.mu
.RC observation.phi
copy of the input argument observation.phi
.RC surface.albedo
copy of the input argument surface.albedo
.RC direct
direct beam flux at each observation level, without delta-M scaling. 
.RC diff.dn
diffuse downward flux at each observation level, without delta-M scaling. 
.RC diff.up
diffuse upward flux at each observation level, without delta-M scaling. 
.RC dfdt
flux divergence  d(net flux)/d(optical depth), including 
direct beam, at each observation level.
.RC uavg
mean intensity (including the direct beam) at each observation level.
.RC intensity
intensity as a matrix with dimensions 
(and dimension names) 
corresponding to observation.mu, observation.tau, 
observation.phi, and mu0. 
.RC azim.average.I
azimuthally averaged intensity as a matrix with dimensions 
(and dimension names) corresponding to observation.mu, observation.tau, 
and mu0.
.DT
Users unfamiliar with DISORT will have a difficult time using this 
package, and should be sure to consult the extensive documentation 
provided with the Fortran code for an explanation of terms, coordinate
systems, output variables, etc. 

Intensity is reported as a fraction of the incident beam.

The DISORT Fortran code does extensive checking for arguments out
of bounds, numerical stability, etc. If the Fortran 
subroutines encounter an error is preorted back to Splus using 
the xerror.summary() mechanism. 

The Splus interface does not allow for thermal emmision in the medium. 
.SH REFERENCES
The DISORT Fortran package, available from
ftp://climate.gsfc.nasa.gov/pub/wiscombe/Discr_Ord/, 
contains extensive documentation. The DISORT.doc
file and the source code for DISORT contain many references to the
numerical method used to solve the radiative transfer equation.
.EX
# To compute the reflectance from a 
.KW ~keyword
.WR
