Let's say you have a spectral cube in which the WCS axes are wavelength, RA and Dec. In this case, the current co-ordinate Frame will actually be a `compound' Frame containing two `component' Frames; a one-dimensional spectral Frame and a two-dimensional sky Frame. If we consider an attribute such as System (which all classes of Frame have), we now seem to have three different Systems to consider; the System value for the component spectral Frame, the System value for the component sky Frame and the System value for the compound Frame as a whole. So if we want to set the spectral system to "optical velocity", and celestial system to "Galactic" what do we do? The answer is to include the index of an axis within the attribute name. If WCS axis 1 is the spectral axis, 2 is the RA axis and 3 is the Dec. axis, then we would do the following:
% wcsattrib fred set "System(1)" vopt
% wcsattrib fred set "System(2)" galactic
In fact, we could have used "System(3)" in place of "System(2)" since axes 2 and 3 are both contained within the same sky Frame and so setting the System attribute for either one will have the same effect. We could now examine the attributes as follows:
% wcsattrib fred get "System(1)"
% wcsattrib fred get "System(2)"
These commands will display vopt and Galactic, as expected. Note, the following command:
% wcsattrib fred get "System"
will display Compound since it is displaying the System value of the compound Frame as a whole (because no axis index was included).
To continue this example, the SpecFrame class (which represents spectral axes) has an attribute called StdOfRest (standard of rest). This attribute is specific to the SpecFrame class and is not recognised by other classes of Frames. If we do:
% wcsattrib fred set "StdOfRest" LSRK
we will get an error saying the attribute name is unknown. This is because compound Frames do not have a StdOfRest attribute. If we want to set the standard of rest, we must indicate the index of the spectral axis as follows:
% wcsattrib fred set "StdOfRest(1)" LSRK
Likewise, if we wanted to set the Equinox attribute of the sky Frame, we could say:
% wcsattrib fred set "Equinox(2)" "J2003.5"
KAPPA --- Kernel Application Package