Stokes Vector¶

class radtran.sasktran.StokesVector(stokes, basis)

Defines a stokes vector with its associated basis.

Parameters: stokes : numpy array shape (4,) The stokes vector [I, Q, U, V] basis : numpy array shape (3,3) Coordinate basis the stokes vector is defined in. basis[0, :] is the propagation direction, basis[1, :] is the theta direction, and basis[2, :] is the phi direction. Directions are specified in ECEF coordinates. The basis must be constructed such that basis[1, :] cross basis[2, :] is equal to basis[0, :] ValueError if the basis is not correctly constructed

Methods

 I Q U V phi_direction propagation_direction theta_direction to_new_basis
phi_direction()

Returns the phi direction of the current basis in ECEF coordinates

propagation_direction()

Returns the propagation direction of the current basis in ECEF coordinates

theta_direction()

Returns the theta direction of the current basis in ECEF coordinates

to_new_basis(new_basis)

Converts the stokes vector to a new basis. A rotation matrix between the new basis and old basis is constructed and applied to the stokes vector. Note that this process overrides the old basis

Parameters: new_basis : numpy array shape (3,3) The new basis. See the class constructor documentation for the format