phase_to_angles

pyrt.observation.phase_to_angles(incidence, emission, phase)[source]

Construct an instance of Angles in the case where phase angles are known but azimuth angles are unknown.

Parameters
  • incidence (ArrayLike) – Incidence (solar zenith) angles [degrees]. All values must be between 0 and 90.

  • emission (ArrayLike) – Emission (emergence) angles [degrees]. All values must be between 0 and 180.

  • phase (ArrayLike) – Phase angles [degrees]. All values must be between 0 and 180.

Raises
  • TypeError – Raised if any values in the input arrays are nonnumerical.

  • ValueError – Raised if any values of the input arrays are outside their mathematically valid range or if the input arrays do not have the same shapes.

Return type

pyrt.observation.Angles

Examples

For a random assortment of input angles:

>>> import numpy as np
>>> from pyrt.observation import phase_to_angles
>>> incidence = [20, 30, 40]
>>> emission = [30, 40, 50]
>>> phase = [25, 30, 35]
>>> phase_to_angles(incidence, emission, phase)
Angles:
   mu0 = [0.93969262 0.8660254  0.76604444]
   phi0 = [0. 0. 0.]
   mu = [[0.8660254 ]
 [0.76604444]
 [0.64278761]]
   phi = [[122.74921226]
 [129.08074256]
 [131.57329276]]