# UnitSphericalRepresentation¶

class astropy.coordinates.UnitSphericalRepresentation(lon, lat, differentials=None, copy=True)[source]

Representation of points on a unit sphere.

Parameters: lon, lat : Quantity or str The longitude and latitude of the point(s), in angular units. The latitude should be between -90 and 90 degrees, and the longitude will be wrapped to an angle between 0 and 360 degrees. These can also be instances of Angle, Longitude, or Latitude. differentials : dict, BaseDifferential, optional Any differential classes that should be associated with this representation. The input must either be a single BaseDifferential instance (see _compatible_differentials for valid types), or a dictionary of of differential instances with keys set to a string representation of the SI unit with which the differential (derivative) is taken. For example, for a velocity differential on a positional representation, the key would be 's' for seconds, indicating that the derivative is a time derivative. copy : bool, optional If True (default), arrays will be copied rather than referenced.

Attributes Summary

 attr_classes lat The latitude of the point(s). lon The longitude of the point(s).

Methods Summary

 cross(self, other) Cross product of two representations. from_cartesian(cart) Converts 3D rectangular cartesian coordinates to spherical polar coordinates. mean(self, \*args, \*\*kwargs) Vector mean. norm(self) Vector norm. represent_as(self, other_class[, …]) Convert coordinates to another representation. scale_factors(self[, omit_coslat]) Scale factors for each component’s direction. sum(self, \*args, \*\*kwargs) Vector sum. to_cartesian(self) Converts spherical polar coordinates to 3D rectangular cartesian coordinates. unit_vectors(self) Cartesian unit vectors in the direction of each component.

Attributes Documentation

attr_classes = {'lat': <class 'astropy.coordinates.angles.Latitude'>, 'lon': <class 'astropy.coordinates.angles.Longitude'>}
lat

The latitude of the point(s).

lon

The longitude of the point(s).

Methods Documentation

cross(self, other)[source]

Cross product of two representations.

The calculation is done by converting both self and other to CartesianRepresentation, and converting the result back to SphericalRepresentation.

Parameters: other : representation The representation to take the cross product with. cross_product : SphericalRepresentation With vectors perpendicular to both self and other.
classmethod from_cartesian(cart)[source]

Converts 3D rectangular cartesian coordinates to spherical polar coordinates.

mean(self, *args, **kwargs)[source]

Vector mean.

The representation is converted to cartesian, the means of the x, y, and z components are calculated, and the result is converted to a SphericalRepresentation.

Refer to mean for full documentation of the arguments, noting that axis is the entry in the shape of the representation, and that the out argument cannot be used.

norm(self)[source]

Vector norm.

The norm is the standard Frobenius norm, i.e., the square root of the sum of the squares of all components with non-angular units, which is always unity for vectors on the unit sphere.

Returns: norm : Quantity Dimensionless ones, with the same shape as the representation.
represent_as(self, other_class, differential_class=None)[source]

Convert coordinates to another representation.

If the instance is of the requested class, it is returned unmodified. By default, conversion is done via cartesian coordinates.

Parameters: other_class : BaseRepresentation subclass The type of representation to turn the coordinates into. differential_class : dict of BaseDifferential, optional Classes in which the differentials should be represented. Can be a single class if only a single differential is attached, otherwise it should be a dict keyed by the same keys as the differentials.
scale_factors(self, omit_coslat=False)[source]

Scale factors for each component’s direction.

Given unit vectors $$\hat{e}_c$$ and scale factors $$f_c$$, a change in one component of $$\delta c$$ corresponds to a change in representation of $$\delta c \times f_c \times \hat{e}_c$$.

Returns: scale_factors : dict of Quantity The keys are the component names.
sum(self, *args, **kwargs)[source]

Vector sum.

The representation is converted to cartesian, the sums of the x, y, and z components are calculated, and the result is converted to a SphericalRepresentation.

Refer to sum for full documentation of the arguments, noting that axis is the entry in the shape of the representation, and that the out argument cannot be used.

to_cartesian(self)[source]

Converts spherical polar coordinates to 3D rectangular cartesian coordinates.

unit_vectors(self)[source]

Cartesian unit vectors in the direction of each component.

Given unit vectors $$\hat{e}_c$$ and scale factors $$f_c$$, a change in one component of $$\delta c$$ corresponds to a change in representation of $$\delta c \times f_c \times \hat{e}_c$$.

Returns: unit_vectors : The keys are the component names.