ComponentFTMachine.h

Classes

ComponentFTMachine -- ComponentFTMachine: a abstract base class defining the interface for a Fourier Transform Machine to be used in the SkyEquation for the transformation of SkyComponents (full description)

class ComponentFTMachine

Interface

Public Members
ComponentFTMachine()
ComponentFTMachine(const ComponentFTMachine& other)
ComponentFTMachine& operator=(const ComponentFTMachine& other)
virtual ~ComponentFTMachine()
virtual void get(VisBuffer& vb, SkyComponent& component, Int row=-1) = 0
virtual void get(VisBuffer& vb, const ComponentList& componentList, Int row=-1) = 0
void rotateUVW(Matrix<Double>& uvw, Vector<Double>& dphase, const VisBuffer& vb, const MDirection& mDesired)
Protected Members
LogIO& logIO()
virtual void ok()

Description

Prerequisite

Etymology

FTMachine is a Machine for Fourier Transforms

Synopsis

The SkyEquation needs to be able to perform Fourier transforms on visibility data. FTMachine allows efficient Fourier Transform processing using a VisBuffer which encapsulates a chunk of visibility (typically all baselines for one time) together with all the information needed for processing (e.g. UVW coordinates).

Example

A simple example of an ComponentFTMachine is found in SimpleComponentFTMachine. See the example for SkyModel.

Motivation

Define an interface to allow efficient processing of chunks of visibility data

To Do

Forward declarations

Member Description

ComponentFTMachine()

ComponentFTMachine(const ComponentFTMachine& other)

ComponentFTMachine& operator=(const ComponentFTMachine& other)

virtual ~ComponentFTMachine()

virtual void get(VisBuffer& vb, SkyComponent& component, Int row=-1) = 0

Get actual coherence : this is the only virtual method

virtual void get(VisBuffer& vb, const ComponentList& componentList, Int row=-1) = 0

Get actual coherence : this is the other only virtual method

void rotateUVW(Matrix<Double>& uvw, Vector<Double>& dphase, const VisBuffer& vb, const MDirection& mDesired)

Rotate the uvw from the observed phase center to the desired phase center.

LogIO& logIO()

virtual void ok()