API Reference

Commonly Used Options

EngineDO.num_streams

The number of streams used inside the calculation. Together with the number of layers, the number of streams is one of the primary settings that controls the accuracy of the model. Default: 16

EngineDO.num_layers
EngineDO.num_stokes

Number of stokes parameters to include in the calculation and output. Set to 1 for scalar calculations, and to 3 for vector calculations. Default: 1

EngineDO.alt_grid

Internal altitude grid inside the model. ALl climatologies/optical properties are sampled on this grid, and then integrated over it to find the layer quantities. Default: Linearly spaced from 0 to 100 km with spacing of 0.5 km

EngineDO.num_threads

Number of threads to use in the calculation when running on multiple wavelengths. The value of 0 indicates use every logical core present on the machine. It is recommended to set this value to the number of physical cores on the machine for maximum performance. Default: 0

Less Commonly Used Options

EngineDO.num_brdf_quadrature_terms

The number of quadrature terms used to calculate the Legendre coefficients for the BRDF. Only has an effect if a Non-Lambertian surface is being used. Default: 64

EngineDO.layer_construction

Method used to place the layer boundaries in altitude. Should be one of uniform_pressure for uniform pressure layers, uniform_optical_depth for layers of equal optical depth, uniform_height for layers spaced linearly in height, match_altitude_grid to match layers with the internal altitude grid, or a numpy array of altitudes for manually specified layer boundaries. Default: uniform_pressure

EngineDO.num_spherical_sza

Number of solar zenith angles to calculate the plane parallel solution at when operating in spherical mode. Default: 2

EngineDO.viewing_mode

Geometry viewing mode of the model for the line of sight rays, either spherical or plane_parallel. Default: plane_parallel

Low Level Interface

class sasktran.disco.lowlevel.Atmosphere(nstr: int, nlyr: int, nwavel: int, nlos: int = 0, nstokes: int = 1)

Bases: object

property a1

returns: Layer a1 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property a2

returns: Layer a2 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property a3

returns: Layer a3 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property a4

returns: Layer a4 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property albedo

returns: Surface albedo, shape (nwavel) :rtype: np.ndarray

property b1

returns: Layer b1 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property b2

returns: Layer b2 Legendre coefficient, shape (nstr, nlayer, nwavel) :rtype: np.ndarray

property f

returns: Layer delta scaling coefficient, shape (nlayer, nwavel) :rtype: np.ndarray

property layer_boundary_altitudes

returns: Boundary altitudes of the layer, shape (nlyr+1). :rtype: np.ndarray

property od

returns: Layer Optical Depths, shape (nlayer, nwavel) :rtype: np.ndarray

property ss_phase

returns: Single scatter phase function, shape (nstokes, nlos, nlayer, nwavel) :rtype: np.ndarray

property ssa

returns: Layer single scatter albedo, shape (nlayer, nwavel) :rtype: np.ndarray