Integrator class

class pySCATMECH.integrate.Integrator(gridsize, detector, type=1)

Bases: object

Class designed to integrate scattering models.

Class designed to integrate a BRDF_Model (to obtain reflectance) or a Local_BRDF_Model (to obtain scattering cross section).

x, y, z

The x and y projected cosines

Type:

ndarray(float)

w

The weights

Type:

ndarray(float)

sens

The Stokes sensitivities

Type:

list of StokesVectors

theta

The polar angles in radians.

Type:

ndarray(float)

phi

The azimuthal angles in radians.

Type:

ndarray(float)

BRDF(model, thetai, incpol=StokesVector(1, 0, 0, 0), rotation=0)

Returns the BRDF at each integration point.

Parameters:
  • model (BRDF_Model) – The BRDF model to be integrated

  • thetai (float) – The incident angle in radians

  • incpol (StokesVector) – The incident Stokes vector

  • rotation (float) – The angle of rotation of the material in radians

Returns:

BRDF – An array of BRDF

Return type:

np.array

CrossSection(model, thetai, incpol=StokesVector(1, 0, 0, 0), rotation=0)

Integrates a Local_BRDF_Model to obtain differential scattering cross section.

Parameters:
  • model (Local_BRDF_Model) – The model to be integrated.

  • thetai (float) – The incident angle in radians

  • incpol (StokesVector) – Incident Stokes vector

Returns:

crosssection – The integrated cross section

Return type:

float

DSC(model, thetai, incpol=StokesVector(1, 0, 0, 0), rotation=0)

Returns the differential scattering cross section at each integration point.

Parameters:
  • model (Local_BRDF_Model) – The BRDF model to be integrated

  • thetai (float) – The incident angle in radians

  • incpol (StokesVector) – Incident Stokes vector

  • rotation (float) – The angle of rotation of the material in radians

Returns:

DSC – An array of differential scattering cross-section.

Return type:

np.array

PlotSamplingPoints(figsize=5, expand=1, color='b', circlecolor='r')

Graphs the integration points on the projected hemisphere.

Parameters:
  • figsize (float, optional) – Size of figure, which will be square (default is 5)

  • expand (float, optional) – Scaling of sampling point size (default is 1)

  • color (str, optional) – Color to use for the sampling points (default is ‘b’)

  • circlecolor (str, optional) – Color to use for the horizon (default is ‘r’)

  • Requires (matplotlib) –

Reflectance(model, thetai, incpol=StokesVector(1, 0, 0, 0), rotation=0)

Integrates a BRDF_Model and returns reflectance.

Parameters:
  • model (BRDF_Model) – The model to be integrated.

  • thetai (float) – The incident angle in radians

  • incpol (StokesVector) – The incident Stokes vector

  • rotation (float) – The angle of rotation of the material in radians

Returns:

reflectance – The integrated reflectance

Return type:

float