ARTS built-in documentation server
Workspace Method DisortCalc
Description
Interface to the DISORT scattering solver (by Stamnes et al.).
DISCLAIMER: There is a couple of known issues with the current
implementation (see below). Use this WSM with care and only if
these limitations/requirements are fulfilled. Results might be
erroneous otherwise.
DISORT provides the radiation field (cloudbox_field) from a scalar
1D scattering solution assuming a plane-parallel atmosphere (flat
Earth). Only totally randomly oriented particles are allowed.
Refraction is not taken into account. Only Lambertian surface
reflection is handled.
*nstreams* is the number of polar angles taken into account
internally in the scattering solution, za_grid is the
polar angle grid on which cloudbox_field is provided.
*nstreams* determines the angular resolution, hence the accuracy,
of the scattering solution. The more anisotropic the bulk scattering
matrix, the more streams are required. The computational burden
increases approximately linearly with *nstreams*. The default value
(8) is sufficient for most microwave scattering calculations. It is
likely insufficient for IR calculations involving ice clouds,
though.
Further, za_grid determines the resolution of the output
radiation field. The size of za_grid has no practical
impact on computation time in the case of Disort and higher
resolution generally improves the interpolation results, hence
larger za_grid are recommended. To ensure sufficient
interpolation accuracy, we require a (hardcoded) minimum size of 38.
Different sphericity levels are emulated here by embedding DISORT
in different ways and using different output. The available options
(from low to high sphericity level) are:
- Cloudbox extends over whole atmosphere (e.g. by setting cloudbox
from cloudboxSetFullAtm).
- Cloudbox extends over a limited part of the atmosphere only (e.g.
by setting cloudbox from cloudboxSetAutomatically or
cloudboxSetManually). Internally, DISORT is run over the whole
atmosphere, but only the radiation field within the cloudbox is
passed on and used further in ARTS (e.g. by yCalc).
Known issues of ARTS implementation:
- Surface altitude is not an interface parameter. Surface is
implicitly assumed to be at the lowest atmospheric level.
- Scattering angle grids of all scattering elements have to be
identical (except if *pfct_method* is 'interpolate').
Keyword *pfct_method* allows to chose the method to extract phase
function. 'interpolate' considers temperature dependence. Others
neglect it by chosing one specific temperature grid point from the
single scattering data: 'low' choses the lowest T-point, 'high' the
highest T-point, and 'median' the median T-point. As different
scattering elements can have different temperature grids, the actual
temperature value used can differ between the scattering elements.
Currently, other methods than 'interpolate' require all scattering
elements to be given on identical scattering angle grids.
Note that this keyword solely affects the phase function;
extinction/absorption/scattering cross sections are always
interpolated to the actual temperature.
Authors: Claudia Emde, Jana Mendrok
Synopsis
DisortCalc( | cloudbox_field, atmfields_checked, atmgeom_checked, scat_data_checked, cloudbox_checked, cloudbox_on, cloudbox_limits, propmat_clearsky_agenda, atmosphere_dim, pnd_field, t_field, z_field, vmr_field, p_grid, scat_data, f_grid, za_grid, stokes_dim, z_surface, surface_skin_t, surface_scalar_reflectivity, nstreams, pfct_method, Npfct, quiet ) |
Variables