SlantOrthographicProjection

class sofia_redux.scan.coordinate_systems.projection.slant_orthographic_projection.SlantOrthographicProjection[source]

Bases: ZenithalProjection

Initialize a slant orthographic projection.

The slant orthographic projection is a zenithal (or azimuthal) projection depicting a one hemisphere from an infinite distance, with the horizon as a great circle, with the origin at (0, 90) degrees LON/LAT.

The forward projection is given by:

x = cos(theta)sin(phi) y = -cos(theta)cos(phi)

and the inverse transform (deprojection) is given by:

phi = arctan(x, -y) theta = acos(sqrt(x^2 + y^2))

Methods Summary

get_fits_id()

Return the FITS ID for the projection.

get_full_name()

Return the full name of the projection.

r(theta)

Return the radius of a point from the center of the projection.

theta_of_r(r)

Return theta (latitude) given a radius from the central point.

Methods Documentation

classmethod get_fits_id()[source]

Return the FITS ID for the projection.

Returns:
str
classmethod get_full_name()[source]

Return the full name of the projection.

Returns:
str
classmethod r(theta)[source]

Return the radius of a point from the center of the projection.

For the slant orthographic projection, the radius of a point from the center of the projection, given the latitude (theta) is:

r = cos(theta)

Parameters:
thetafloat or numpy.ndarray or units.Quantity

The latitude angle.

Returns:
runits.Quantity

The distance of the point from the central point.

classmethod theta_of_r(r)[source]

Return theta (latitude) given a radius from the central point.

For the slant orthographic projection, the latitude (theta) of a point at a distance r from the center of the projection is given as:

theta = acos(r)

Parameters:
rfloat or numpy.ndarray or units.Quantity

The distance of the point from the central point.

Returns:
thetaunits.Quantity

The latitude angle.