# PhysicsSphericalRepresentation¶

class astropy.coordinates.PhysicsSphericalRepresentation(phi, theta, r, differentials=None, copy=True)[source]

Representation of points in 3D spherical coordinates (using the physics convention of using phi and theta for azimuth and inclination from the pole).

Parameters
phi, thetaQuantity or str

The azimuth and inclination of the point(s), in angular units. The inclination should be between 0 and 180 degrees, and the azimuth will be wrapped to an angle between 0 and 360 degrees. These can also be instances of Angle. If copy is False, phi will be changed inplace if it is not between 0 and 360 degrees.

rQuantity

The distance to the point(s). If the distance is a length, it is passed to the Distance class, otherwise it is passed to the Quantity class.

differentialsdict, PhysicsSphericalDifferential, optional

Any differential classes that should be associated with this representation. The input must either be a single PhysicsSphericalDifferential instance, 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.

copybool, optional

If True (default), arrays will be copied rather than referenced.

Attributes Summary

 attr_classes phi The azimuth of the point(s). r The distance from the origin to the point(s). theta The elevation of the point(s).

Methods Summary

 from_cartesian(cart) Converts 3D rectangular cartesian coordinates to spherical polar coordinates. norm(self) Vector norm. represent_as(self, other_class[, …]) Convert coordinates to another representation. scale_factors(self) Scale factors for each component’s direction. 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 = {'phi': <class 'astropy.coordinates.angles.Angle'>, 'r': <class 'astropy.units.quantity.Quantity'>, 'theta': <class 'astropy.coordinates.angles.Angle'>}
phi

The azimuth of the point(s).

r

The distance from the origin to the point(s).

theta

The elevation of the point(s).

Methods Documentation

classmethod from_cartesian(cart)[source]

Converts 3D rectangular cartesian coordinates to spherical polar coordinates.

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. For spherical coordinates, this is just the absolute value of the radius.

Returns
normastropy.units.Quantity

Vector norm, 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_classBaseRepresentation subclass

The type of representation to turn the coordinates into.

differential_classdict 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)[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_factorsdict of Quantity

The keys are the component names.

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.