class sunpy.coordinates.frames.HeliographicStonyhurst(*args, **kwargs)[source]

Bases: sunpy.coordinates.frames.BaseHeliographic

A coordinate or frame in the Stonyhurst Heliographic (HGS) system.

  • The origin is the center of the Sun.

  • The Z-axis (+90 degrees latitude) is aligned with the Sun’s north pole.

  • The X-axis (0 degrees longitude and 0 degrees latitude) is aligned with the projection of the Sun-Earth line onto the Sun’s equatorial plane.

This system is also know as the Heliocentric Earth Equatorial (HEEQ) system when represented using Cartesian components.

A new instance can be created using the following signatures (note that if supplied, obstime and representation_type must be keyword arguments):

HeliographicStonyhurst(lon, lat, obstime=obstime)
HeliographicStonyhurst(lon, lat, radius, obstime=obstime)
HeliographicStonyhurst(x, y, z, representation_type='cartesian', obstime=obstime)
  • data (BaseRepresentation or None) – A representation object or None to have no data (or use the coordinate component arguments, see below).

  • lon (Angle or Quantity, optional) – The longitude coordinate for this object (lat must also be given and data must be None). Not needed if data is given.

  • lat (Angle or Quantity, optional) – The latitude coordinate for this object (lon must also be given and data must be None). Not needed if data is given.

  • radius (Quantity, optional) – The radial distance coordinate from Sun center for this object. Defaults to the radius of the Sun. Not needed if data is given.

  • obstime (tuple, list, str, pandas.Timestamp, pandas.Series, pandas.DatetimeIndex, datetime.datetime, datetime.date, numpy.datetime64, numpy.ndarray, astropy.time.Time) – The time of the observation. This is used to determine the position of solar-system bodies (e.g., the Sun and the Earth) as needed to define the origin and orientation of the frame.

  • representation_type (BaseRepresentation, str, optional) – A representation class or string name of a representation class. This may change the valid coordinate component arguments from the defaults (see above). For example, passing representation_type='cartesian' will make the frame expect Cartesian coordinate component arguments (typically, x, y, and z).

  • copy (bool, optional) – If True (default), make copies of the input coordinate arrays.


>>> from astropy.coordinates import SkyCoord
>>> import sunpy.coordinates
>>> import astropy.units as u
>>> sc = SkyCoord(1*u.deg, 1*u.deg, 2*u.km,
...               frame="heliographic_stonyhurst",
...               obstime="2010/01/01T00:00:45")
>>> sc
<SkyCoord (HeliographicStonyhurst: obstime=2010-01-01T00:00:45.000): (lon, lat, radius) in (deg, deg, km)
    (1., 1., 2.)>
>>> sc.frame
<HeliographicStonyhurst Coordinate (obstime=2010-01-01T00:00:45.000): (lon, lat, radius) in (deg, deg, km)
    (1., 1., 2.)>
>>> sc = SkyCoord(HeliographicStonyhurst(-10*u.deg, 2*u.deg))
>>> sc
<SkyCoord (HeliographicStonyhurst: obstime=None): (lon, lat, radius) in (deg, deg, km)
    (-10., 2., 695700.)>
>>> sc = SkyCoord(CartesianRepresentation(0*u.km, 45*u.km, 2*u.km),
...               obstime="2011/01/05T00:00:50",
...               frame="heliographic_stonyhurst")
>>> sc
<SkyCoord (HeliographicStonyhurst: obstime=2011-01-05T00:00:50.000): (lon, lat, radius) in (deg, deg, km)
(90., 2.54480438, 45.04442252)>


This frame will always be converted a 3D frame where the radius defaults to rsun.

Attributes Summary






Attributes Documentation

frame_attributes = {'obstime': <sunpy.coordinates.frameattributes.TimeFrameAttributeSunPy object>}
name = 'heliographic_stonyhurst'