# 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