Description of the codes used in the comparison

Official code comparison Web site of the MODIS atmospheric correction group

6SV1Monte CarloCoulson's tabulated valuesRT3SHARMMODTRANVPD

6SV1  (vector)

6SV1 (Second Simulation of a Satellite Signal in the Solar Spectrum, V version 1) is a basic RT code used for calculation of look-up tables in the MODIS atmospheric correction algorithm. It enables accurate simulations of satellite and plane observations, accounting for elevated targets, use of anisotropic and Lambertian surfaces, and calculation of gaseous absorption. The code is based on the method of successive orders of scattering (SOS) approximations. The effects of polarization are included through the calculation of four components of the Stokes vector. (Download the code)

References
S.Y. Kotchenova, E.F. Vermote, R. Matarrese, & F.J. Klemm, Jr., 2006. Validation of a vector version of the 6S radiative transfer code for atmospheric correction of satellite data. Part I: Path radiance,  Applied Optics, Vol. 45, No. 26, p. 6762-6774.

S.Y. Kotchenova & E.F. Vermote, 2007. Validation of a vector version of the 6S radiative transfer code for atmospheric correction of satellite data. Part II: Homogeneous Lambertian and anisotropic surfaces,  Applied Optics, Vol. 46, No. 20, p. 4455-4464.

Coulson's tabulated values  (vector)

Coulson's tabulated values represent the complete solution of the Rayleigh problem for a molecular atmosphere. The present set of tables gives the exact distribution and polarization of the reflected and transmitted light in a plane-parallel atmosphere scattering for a wide range of geometrical, surface boundary reflectance and atmospheric optical conditions. These values are generally considered a benchmark for everybody who is willing to validate a vector RT code.

Reference
K.L. Coulson, J.V. Dave, and Z. Sekera. Tables related to radiation emerging from a planetary atmosphere with Rayleigh scattering,   University of California Press, 1960

MODTRAN  (scalar)

MODTRAN is a scalar RT code developed by the Air Force Research Laboratory in collaboration with Spectral Sciences, Inc. The code calculates atmospheric transmittance and radiance, and efficiently simulates molecular and cloud-aerosol emission. It assumes a stratified atmosphere and a spherical earth surface. Different atmospheric characteristics, such as temperature, pressure and atmospheric species concentrations need to be specified at the boundaries of each layer. The DISORT (Discrete Ordinates) code is used as a subroutine in MODTRAN to enable the azimuth dependence of multiple scattering. The latest publicly released version of the code is MOD4v3r1 (MODTRAN 4 Version 3 Revision 1), which is available from its authors by request.

References
A. Berk et al., MODTRAN4 radiative transfer modeling for atmospheric correction, in Optical Spectroscopic Techniques and Instrumentation for Atmospheric and Space Research III,   Proc. SPIE 3756, July 1999.

A. Berk et al., MODTRAN4 Version 3 Revision 1 User's manual,   February 11, 2003.

Monte Carlo  (vector)

Monte Carlo is a three-dimensional (3-D) RT code where one photon at a time is followed on its 3-D path through the atmosphere starting from the moment of its emission. Each photon is characterized by a statistical weight whose value is initially set to unity. Absorption and scattering events which may happen to the photon on its way through the scattering media change its statistical weight. The photon is considered terminated when it emerges from the top of the atmosphere or when its statistical weight becomes less than a specially indicated minimum. The absorption and scattering processes are described by suitable probability functions. A Monte Carlo code is generally considered a benchmark for comparison with other RT codes, because it does not have any limitations except for large amounts of calculation time and angular space discretization.

Reference
F.-M. Bréon, 1992.  Reflectance of broken cloud fields: simulation and parameterization,   Journal of Atmospheric Sciences, Vol. 49, No. 14, p. 1221-1232.

RT3  (vector)

RT3 is a plane-parallel fully-polarized atmospheric RT model which calculates the monochromatic radiation emerging from the top of an atmosphere consisting of randomly-oriented particles (isotropic media). Both solar and thermal sources of radiation can be simulated. Multiple scattering of radiation is calculated based on the doubling/adding approach, which is considered numerically stable for large optical depths. (Download the code)

Reference
F.F. Evans and G.L. Stephens, A new polarized atmospheric radiative transfer model,   J. Quant. Spectrosc. Radiat. Transfer, Vol. 5, p. 413-423, 1991.

SHARM  (scalar)

SHARM is a plane-parallel 1-D RT code designed to perform simultaneous computations of monochromatic radiance/fluxes in the shortwave spectral region for arbitrary view geometries and multiple wavelengths. The code uses the method of spherical harmonics and presently does not take polarization into account. It has several common built-in models of anisotropic reflectance of land surface and wind-ruffled water surface. There are two versions of the code. In the first code SHARM, the atmospheric properties can vary arbitrarily in the vertical dimension, and the user should provide the aerosol or cloud scattering function, single scattering albedo and optical thickness for each layer. The second code SHARM-Mie was developed for calculations with spherical aerosols. It uses W. Wiscombe's code for Mie calculations. The aerosol type is the same for all layers, though its concentration is variable. The gaseous absorption model is not included in these versions of the code, and the user should provide the gaseous absorption coefficients as an input.  (Download the code)

Reference
A. Lyapustin, 2005.  Radiative transfer code SHARM for atmospheric and terrestrial applications,  Applied Optics, Vol. 44, No. 36, p. 7764-7772.

VPD  (vector)

VPD (the Dave code) is an accurate RT code consisting of a four-module package, simply called as Programs A, B, C, and D. The code contains packages for both vector and scalar modes. The vector program A (the VPA module) computes Legendre series for 4 different scattering functions, which are used for evaluating the Stokes parameters of the radiation scattered by a sphere of a known refractive index. The VPB module computes Legendre series representing 4 scattering functions of the normalized scattering phase matrix of a unit volume containing a known size distribution of spherical particles of the same type. The VPC module calculates Fourier series representing the normalized 4x4 scattering phase matrix of a unit volume containing an arbitrary distribution of spherical particles. The VPD module is the actual RT code that calculates the Stokes parameters. In this project, the Dave code is simply referred to as VPD.

References
J.V. Dave, 1970.  Coefficients of the Legendre and Fourier series for the scattering functions of spherical particles,   Applied Optics, Vol. 9, No. 8, p. 1888-1896.

J.V. Dave and J. Gazdag, 1970.  A modified Fourier transform method for multiple scattering calculations in a plane parallel Mie atmosphere,   Applied Optics, Vol. 9, No. 6, p. 1457-1466


6SV1Monte CarloCoulson's tabulated valuesRT3SHARMMODTRANVPD