CARMA C++
carma::sdp::SpwBandRelationships Class Reference

Mapping of correlator bands and sidebands to output spectral windows. More...

#include <carma/sdp/SpwBandRelationships.h>

Public Types

enum  SIDEBAND { LSB = 0, USB = 1, DSB = 2 }
 Enumerated sideband types. More...
 

Public Member Functions

 SpwBandRelationships ()
 Constructor. More...
 
 ~SpwBandRelationships ()
 Desctructor. More...
 

Static Public Member Functions

static int bandFreqIndex (const int &band, const SIDEBAND &sideband)
 Map a (band,sideband) tuple to a bandfreq astro header index. More...
 
static int bandSbIndex (const int &band, const SIDEBAND &sideband)
 Map a (band,sideband) tuple to a unique sequential array index. More...
 
static std::pair< int, SIDEBANDbandSbIndexInv (const int &index)
 Compute inverse mapping of bandSbIndex method. More...
 
static std::vector< int > bandSbToSpw (const int &band, const SIDEBAND &sideband)
 Map a (band,sideband) tuple to the matching spectral windows. More...
 
static bool isLSB (const int &spw)
 Return true if specified spectral window is LSB. More...
 
static bool isUSB (const int &spw)
 Return true if specified spectral window is USB. More...
 
static int matchingSbSpw (const int &spw)
 Return the matching sideband spw for a specified input spw. More...
 
static int numSpw ()
 Return the number of output spectral windows. More...
 
static int psysIndex (const int &ant, const int &nant, const int &band)
 Map a (ant,band) pair to a psys astro header index. More...
 
static void setNumWin (const int &num)
 Set the number of windows in the data set(6 or 16) More...
 
static int spwToBand (const int &spw)
 Map a spectral window to the matching band number. More...
 
static SIDEBAND spwToSideband (const int &spw)
 Map a spectral window to the matching (single) sideband. More...
 
static int sysTempIndex (const int &ant, const int &nant, const int &band, const SIDEBAND &sideband)
 Map a (ant,band,sideband) tuple to a systemp astro header index. More...
 

Detailed Description

Mapping of correlator bands and sidebands to output spectral windows.

This class encodes the system-wide assumptions about the mapping of correlator (band, sideband) tuples to output miriad spectral window number. This is a fixed mapping that, by agreed convention, ensures that a given band and sideband maps to the same spectral window under all correlator and observing configurations. The agreed spw order is: [LSB1, LSB2, LSB3, USB1, USB2, USB3], where [1,2,3] are CARMA band numbers. This class also encodes information about the fixed index order of band-related astro header variables.

Definition at line 40 of file SpwBandRelationships.h.

Member Enumeration Documentation

Enumerated sideband types.

Definition at line 45 of file SpwBandRelationships.h.

Constructor & Destructor Documentation

carma::sdp::SpwBandRelationships::SpwBandRelationships ( )

Constructor.

Null constructor.

carma::sdp::SpwBandRelationships::~SpwBandRelationships ( )

Desctructor.

Member Function Documentation

static int carma::sdp::SpwBandRelationships::bandFreqIndex ( const int &  band,
const SIDEBAND sideband 
)
static

Map a (band,sideband) tuple to a bandfreq astro header index.

static int carma::sdp::SpwBandRelationships::bandSbIndex ( const int &  band,
const SIDEBAND sideband 
)
static

Map a (band,sideband) tuple to a unique sequential array index.

This is used in class XMLHandler to index correlator bands.

static std::pair<int, SIDEBAND> carma::sdp::SpwBandRelationships::bandSbIndexInv ( const int &  index)
static

Compute inverse mapping of bandSbIndex method.

static std::vector<int> carma::sdp::SpwBandRelationships::bandSbToSpw ( const int &  band,
const SIDEBAND sideband 
)
static

Map a (band,sideband) tuple to the matching spectral windows.

Note that autocorrelation DSB maps to two spectral windows.

static bool carma::sdp::SpwBandRelationships::isLSB ( const int &  spw)
static

Return true if specified spectral window is LSB.

static bool carma::sdp::SpwBandRelationships::isUSB ( const int &  spw)
static

Return true if specified spectral window is USB.

static int carma::sdp::SpwBandRelationships::matchingSbSpw ( const int &  spw)
static

Return the matching sideband spw for a specified input spw.

static int carma::sdp::SpwBandRelationships::numSpw ( )
static

Return the number of output spectral windows.

static int carma::sdp::SpwBandRelationships::psysIndex ( const int &  ant,
const int &  nant,
const int &  band 
)
static

Map a (ant,band) pair to a psys astro header index.

static void carma::sdp::SpwBandRelationships::setNumWin ( const int &  num)
static

Set the number of windows in the data set(6 or 16)

static int carma::sdp::SpwBandRelationships::spwToBand ( const int &  spw)
static

Map a spectral window to the matching band number.

static SIDEBAND carma::sdp::SpwBandRelationships::spwToSideband ( const int &  spw)
static

Map a spectral window to the matching (single) sideband.

static int carma::sdp::SpwBandRelationships::sysTempIndex ( const int &  ant,
const int &  nant,
const int &  band,
const SIDEBAND sideband 
)
static

Map a (ant,band,sideband) tuple to a systemp astro header index.


The documentation for this class was generated from the following file: