##
Mappings Available

The basic concept of a MappingMapping (§2.1) is rather generic and obviously it is necessary to have specific Mappings that implement specific relationships between coordinate systems. AST provides a range of these, to perform transformations such as the following and, where appropriate, their inverses:

- Conversions between various celestial coordinate systems (the SlaMapSlaMap).

- Conversions between various spectral coordinate systems (the SpecMapSpecMap and GrismMapGrismMap).

- Conversions between various time systems (the TimeMapTimeMap).

- Conversion between 2-dimensional spherical celestial coordinates (longitude and latitude) and a 3-dimensional vectorial positions (the SphMapSphMap).

- Various projections of the celestial sphere on to 2-dimensional coordinate spaces—i.e. map projections (the DssMapDssMap and WcsMapWcsMap).

- Permutation, introduction and elimination of coordinates (the PermMapPermMap).

- Various linear coordinate transformations (the MatrixMapMatrixMap, WinMapWinMap, ShiftMapShiftMap and ZoomMapZoomMap).

- General N-dimensional polynomial transformations (the PolyMapPolyMap and ChebyMapChebyMap).

- Lookup tables (the LutMapLutMap).

- General-purpose transformations expressed using arithmetic operations and functions similar to those available in C (the MathMapMathMap).

- Transformations for internal use within a program, based on private transformation functions which you write yourself in C (the IntraMapIntraMap).

Further reading: For a more complete description of each of the Mappings mentioned above, see its entry in Appendix D. In addition, see the discussion of the PermMap in §5.11, the UnitMapUnitMap in §5.10 and the IntraMap in §20. The ZoomMap is used as an example throughout §4.