CorrDataKeywords.h
Classes
- CorrDataKeywords -- CorrDataKeywords: process CORRDATA-ALMATI FITS keywords (full description)
Types
- LO1 = 0
-
- LO2 = 1
-
- LSB = 0
-
- USB = 1
-
- A = 0
-
- B = 1
-
Interface
- Public Members
- CorrDataKeywords(ConstFitsKeywordList& kwl)
- ~CorrDataKeywords()
- Int scanNum()
- Int obsNum()
- Int nPolznCorr()
- Int nSideBand()
- Int nLO()
- Int nPhasCorr()
- Int nChan()
- Int baseBandNo()
- Int tableId()
- Bool isLOPresent(const lo& loEnum)
- MFrequency freqLO(const lo& loEnum)
- Int loSideBand(const lo& loEnum)
- MFrequency intermediateFreq()
- CStokesVector fluxDensity()
- Bool isFluxDensityPresent()
- Bool isLinePresent(const line& lineEnum)
- MFrequency restFreq(const line& lineEnum)
- String lineName(const line& lineEnum)
- Bool isSideBandPresent(const sideBand& sbEnum)
- Float refChan(const sideBand& sbEnum)
- MFrequency refFreq(const sideBand& sbEnum)
- MVFrequency chanWidth(const sideBand& sbEnum)
- Vector<MFrequency> chanFreq(const sideBand& sbEnum)
- Bool chanFreqLSRK(const sideBand& sbEnum, Vector<MFrequency>& freqAxis)
- Bool chanFreqLSRK(const sideBand& sbEnum, const MRadialVelocity& dopVel, Vector<MFrequency>& freqAxis)
- Bool isVelocityPresent(const sideBand& sbEnum)
- Float velRefChan(const sideBand& sbEnum)
- MRadialVelocity refVel(const sideBand& sbEnum)
- MVRadialVelocity chanWidthVel(const sideBand& sbEnum)
- MRadialVelocity sysVel(const sideBand& sbEnum)
- Float stokesRefPixel(const sideBand& sbEnum)
- Float stokesFITSRefVal(const sideBand& sbEnum)
- Stokes::StokesTypes stokesRefVal(const sideBand& sbEnum)
- Float stokesIncr(const sideBand& sbEnum)
- Vector<Int> stokesAxis(const sideBand& sbEnum)
- Bool isPhasCorrPresent(const sideBand& sbEnum)
- Private Members
- CorrDataKeywords()
Prerequisite
Etymology
From "CORRDATA-ALMATI" and keywords
Synopsis
This class processes and holds FITS keywords from the CORRDATA-ALMATI
binary table extension, as defined in the ALMA-TI data format. This
is a helper class for AlmaTI2MS.
Example
Motivation
Encapsulate all keyword processing and access for CORRDATA-ALMATI tables
To Do
$Id: CorrDataKeywords.h,v 19.4 2004/11/30 17:50:06 ddebonis Exp $
Member Description
Enum for LO number (LO1 and LO2)
Enum for sideband type (LSB or USB)
Enum for line identifier and rest frequency pair (A or B)
Construct from a const FITS keyword list
Destructor
Data accessor methods
Scan number
Observation number
Number of polarization products
Number of side bands
Number of LO's
Number of phase correction axes
Number of channels
Baseband number
Table id.
LO1/2 information: frequency and sideband for (LO1, LO2)
Intermediate frequency at reference channel
Flux density (I, Q, U, V) as Stokes vector
Rest frequency and line identifiers (lines A and B)
Indicate whether USB and/or LSB data are present
Frequency axis information: reference channel, reference frequency,
channel spacing and array of frequencies for (USB, LSB)
Return the frequency axis in the reference frequency frame (topocentric)
Compute the frequency axis in the LSRK frame using the rest frequency
and the source systemic velocity given in the CORRDATA-ALMATI table
Compute the frequency axis in the LSRK frame using the total Doppler
velocity (VFRAME) given in the DATAPAR-ALMATI table
Velocity axis information: reference channel, reference velocity,
source systemic velocity and velocity channel spacing for (USB, LSB)
Stokes axis information: reference pixel, reference pixel value
and increment per pixel. The reference value is returned in FITS
form or as the associated AIPS++ Stokes enum value (in class Stokes).
The full Stokes axis is also available as a vector of Stokes enums.
Stokes::StokesTypes stokesRefVal(const sideBand& sbEnum)
Phase correction axis information: indicate if present for (LSB, USB)
Default constructor is prohibited - no useful object produced