Config#

class sasktran2.Config(self: sasktran2._core.Config)#

Bases: pybind11_object

Object which stores all of the configuration settings for the radiative transfer calculation.

property delta_m_scaling#

Controls whether the delta-M scaling is applied to the calculation. Defaults to False.

property init_successive_orders_with_discrete_ordinates#

If set to true, when using the successive orders source, it will be initialized with a source calculated with the discrete ordinates source instead of a single scattering source. This greatly reduces the number of iterations required for the method, as well as provides a better weighting function approximation.

property multiple_scatter_source#

Sets which (if any) multiple scatter source is to be used inside the calculation.

sasktran2.MultipleScatterSource.NoSource (Default)

Multiple scattering is disabled

sasktran2.MultipleScatterSource.DiscreteOrdinates

The discrete ordinates technique is used to estimate the multiple scatter signal

sasktran2.MultipleScatterSource.SuccessiveOrders

The successive orders of scattering method is used to estimate the multiple scatter signal

property num_forced_azimuth#

If set to a value greater than 0, the discrete ordinates method will use this number of azimuth terms independent of convergence. Defaults to -1, which means to use the number of azimuth terms required for convergence.

property num_singlescatter_moments#

The number of Legendre expansion moments to use in the single scatter calculation. Must be greater or equal to num_streams. Default to 16.

property num_stokes#

Sets the number of Stokes parameters used in the calculation. 1 is equivalent to the scalar approximation. Currently the only supported values are 1, and 3.

property num_streams#

The number of streams to use in the discrete ordinates method. This is the number of streams in full space, i.e. each hemisphere has num_streams / 2 angular discretizations. Must be an even number. Default to 16.

property num_successive_orders_incoming#

The number of integration nodes to use in the successive orders algorithm when calculating the incoming radiance at each grid point. Must be one of [6, 14, 26, 38, 50, 74, 86, 110, 146, 170, 194, 230, 266, 302, 350, 434, 590, 770, 974, 1202, 1454, 1730, 2030, 2354, 2702, 3074, 3470, 3890]. Default is 110.

property num_successive_orders_iterations#

The number of iterations to perform when using the successive orders of scattering multiple scatter source.

property num_successive_orders_outgoing#

The number of sample points to use in the successive orders algorithm to calculate the outgoing source function on radiance at each grid point. Must be one of [6, 14, 26, 38, 50, 74, 86, 110, 146, 170, 194, 230, 266, 302, 350, 434, 590, 770, 974, 1202, 1454, 1730, 2030, 2354, 2702, 3074, 3470, 3890]. Default is 110.

property num_successive_orders_points#

The number of incoming points to use in the successive orders calculation for each solar zenith angle. Must be equal to or less than the number of atmosphere altitude grid points. Default is -1 which means to use every altitude grid point.

property num_sza#

The number of solar zenith angle discretizations to use when calculating the multiple scatter source. For the discrete ordinates source, this determines the number of independent discrete ordinates calculations to perform. In the successive orders of scattering source, this is directly the number of discretizations. Defaults to 1, indicating that the multiple scatter source is estimated only at the reference point.

property num_threads#

Controls the number of threads used in the calculation. For maximum performance it is recommended to set this to the number of physical cores on your machine. Defaults to 1

property occultation_source#

Sets which (if any) occultation source is to be used inside the calculation.

sasktran2.OccultationSource.NoSource (Default)

No occultation source included

sasktran2.OccultationSource.Standard

A constant source of 1 is placed at the end of every individual line of sight.

property single_scatter_source#

Sets which (if any) single scatter source is to be used inside the calculation.

sasktran2.SingleScatterSource.Exact (Default)

A single scatter source where exact ray tracing is performed at each quadrature point along the observer lines of sight towards the sun

sasktran2.SingleScatterSource.Table

A single scatter source where a pre-computed table is used to calculate solar transmission to quadrature points along the line of sight.

sasktran2.SingleScatterSource.DiscreteOrdinates

Lets the discrete ordinates source function calculate the single scatter source. Only has an effect if the geometry mode is set to PlaneParallel or PseudoSpherical, and if the DiscreteOrdinates source function is also used for multiple scatter.

sasktran2.SingleScatterSource.NoSource

Disables the single scatter source

property stokes_basis#
property threading_model#

Sets the multi-threading mode to use in the calculation.

sasktran2.ThreadingModel.Wavelength (Default)

Calculation is multi-threaded over the wavelength (batch) dimension only. This method works very well when this dimension is large, but may increase memory usage. It also is not very effective for a small number of wavelengths.

sasktran2.ThreadingModel.Source

Calculation is multi-threaded individually by each source function for each wavelength. This method is recommended when memory is a concern, or when the number of wavelengths is small.