#### Description:

A SpecFrame is a specialised form of one-dimensional Frame which represents various coordinate systems used to describe positions within an electro-magnetic spectrum. The particular coordinate system to be used is specified by setting the SpecFrame`’` s System attribute (the default is wavelength) qualified, as necessary, by other attributes such as the rest frequency, the standard of rest, the epoch of observation, units, etc (see the description of the System attribute for details).

By setting a value for thr SpecOrigin attribute, a SpecFrame can be made to represent offsets from a given spectral position, rather than absolute spectral values.

#### Constructor Function

astSpecFrame

#### Inheritance

The SpecFrame class inherits from the Frame class.

#### Attributes

In addition to those attributes common to all Frames, every SpecFrame also has the following attributes:

- AlignSpecOffset: Align SpecFrames using the offset coordinate system?

- AlignStdOfRest: Standard of rest in which to align SpecFrames

- RefDec: Declination of the source (FK5 J2000)

- RefRA: Right ascension of the source (FK5 J2000)

- RestFreq: Rest frequency

- SourceSys: Source velocity spectral system

- SourceVel: Source velocity

- SourceVRF: Source velocity rest frame

- SpecOrigin: The zero point for SpecFrame axis values

- StdOfRest: Standard of rest

Several of the Frame attributes inherited by the SpecFrame class refer to a specific axis of the Frame (for instance Unit(axis), Label(axis), etc). Since a SpecFrame is strictly one-dimensional, it allows these attributes to be specified without an axis index. So for instance, `"` Unit`"` is allowed in place of `"` Unit(1)`"` .

#### Functions

In addition to those functions applicable to all Frames, the following functions may also be applied to all SpecFrames:

- astSetRefPos: Set reference position in any celestial system

- astGetRefPos: Get reference position in any celestial system

Copyright (C) 2021 East Asian Observatory