DP3
Namespaces | Classes | Functions
dp3::steps Namespace Reference

Namespaces

 test
 

Classes

class  AntennaFlagger
 
class  AOFlaggerStep
 DPPP step class to flag using aoflagger's functionality. More...
 
class  ApplyBeam
 DP3 step class to ApplyBeam visibilities from a source model. More...
 
class  ApplyCal
 DP3 step class to ApplyCal visibilities from a source model. More...
 
class  Averager
 DP3 step class to average in time and/or freq. More...
 
class  BdaAverager
 
class  BdaDdeCal
 
class  BdaExpander
 DP3 step that expands BDA data in BdaBuffers to regular data in DPBuffers. More...
 
class  BdaGroupPredict
 DP3 step class to predict BDA visibilities from a source model. More...
 
class  BDAResultStep
 
class  Clipper
 DP3 step for clipping bright sources from the data This class is a Step class that predicts visibilities from a skymodel and clips the bright sources from the input data. More...
 
class  Combine
 DP3 step to combine two named buffers This class is a DP3 step to combine to named buffers. More...
 
class  Counter
 DPPP step class to count flags. More...
 
class  DDECal
 This class is a Step class to calibrate (direction dependent) gains. More...
 
class  Demixer
 DP3 step class to subtract A-team sources This class is a Step class to subtract the strong A-team sources. It is based on the demixing.py script made by Bas vd Tol and operates per time chunk as follows: More...
 
class  DummyStep
 DP3 step class that does nothing. This class is an empty Step subclass to use as implementation template. More...
 
class  DynSpec
 DP3 step class that creates visibility averaged dynamic spectra. TODO: (1) Output the weights for each pixel in the spectrum. (2) Select polarizations to output, e.g., only I or instrumental polarizations. More...
 
class  Filter
 DP3 step to filter out baselines and channels. More...
 
class  FlagTransfer
 DP3 step class to transfer flags from a lower to a MS with higher time/freq resolution. More...
 
class  GainCal
 This class is a Step class to calibrate (direction independent) gains. More...
 
class  H5ParmPredict
 DP3 step class to predict visibilities using an H5Parm file with a source model. More...
 
class  IDGImager
 
class  IDGPredict
 
class  InputStep
 Abstract base class for a Step generating input. More...
 
class  Interpolate
 
class  MadFlagger
 DP3 step class to flag data based on Median Average Deviation (MAD) filtering. More...
 
class  MockInput
 
class  MockStep
 
class  ModelDataStep
 Common interface for steps that produce model data. More...
 
class  MSBDAReader
 Step for reading BDA data from an MS. More...
 
class  MSBDAWriter
 Step for writing BDA data to an MS. More...
 
class  MsColumnReader
 
class  MsReader
 DP3 step reading from an MS. More...
 
class  MSUpdater
 DP3 step writing to an MS. More...
 
class  MSWriter
 DP3 step writing to an MS. More...
 
class  MultiMsReader
 DP3 step reading from multiple MSs. More...
 
class  MultiResultStep
 This class defines step in the DP3 pipeline that keeps the result to make it possible to get the result of another step. It keeps the result and calls process of the next step. Buffers are accumulated until cleared. More...
 
class  NullStep
 This class defines a null step in the DP3 pipeline. It can be used as the last step in the pipeline, so other steps do not need to test if there is a next step. More...
 
class  NullStokes
 DP3 step for polarisation modification. More...
 
class  OneApplyCal
 DP3 step class to apply a calibration correction to the data. More...
 
class  OnePredict
 Step class that predicts visibilities with optionally beam. The Predict class uses one or more instances of this class for predicting data with different regular shapes. More...
 
class  OutputStep
 Base class for output steps. More...
 
class  PhaseShift
 DP3 step class to shift the data to another phase center. More...
 
class  Predict
 DP3 step class that predicts visibilities from a source model. This step contains OnePredict sub-steps, that do the actual predictions and optional pre- and postprocessing sub-steps for each OnePredict sub-step. More...
 
class  PreFlagger
 DP3 step class to flag data on channel, baseline, or time. More...
 
class  ResultStep
 This class defines a step in the DP3 pipeline that keeps the result to make it possible to get the result of another step. It stores the result and does NOT call process() of the next step. More...
 
class  SagecalPredict
 
class  ScaleData
 DPPP step class for freq-dependent scaling of the data. More...
 
class  SetBeam
 DPPP step class to set the beam keywords in a ms. More...
 
class  Split
 DP3 step class to Split visibilities from a source model. More...
 
class  StationAdder
 DP3 step class to add stations as a superstation. More...
 
class  Step
 Abstract base class for a DP3 step. More...
 
class  SVPInput
 
class  Transfer
 DP3 step class to transfer visbility data and flags from a lower to a MS with higher time/freq resolution. More...
 
class  Upsample
 DPPP step class to Upsample visibilities. More...
 
class  UVWFlagger
 DP3 step class to flag data on UVW coordinates. More...
 
class  WGridderPredict
 
class  WSCleanWriter
 

Functions

void ApplyArrayFactorAndAdd (const base::DPInfo &info, size_t n_stations, const aocommon::xt::UTensor< std::complex< double >, 3 > &data, aocommon::xt::UTensor< std::complex< double >, 3 > &model_data, const std::complex< double > *beam_values)
 
void ApplyBeamToDataAndAdd (const base::DPInfo &info, size_t n_stations, const aocommon::xt::UTensor< std::complex< double >, 3 > &data, aocommon::xt::UTensor< std::complex< double >, 3 > &model_data, const aocommon::MC2x2 *beam_values)
 
size_t ComputeArrayFactor (const base::DPInfo &info, double time, const everybeam::vector3r_t &srcdir, const everybeam::telescope::Telescope *telescope, std::complex< double > *beam_values, bool invert, std::mutex *mutex, const std::vector< size_t > &skip_station_indices)
 Computes the array factor scalar values. More...
 
size_t ComputeBeam (const base::DPInfo &info, double time, const everybeam::vector3r_t &srcdir, const everybeam::telescope::Telescope *telescope, aocommon::MC2x2 *beam_values, bool invert, everybeam::BeamMode mode, std::mutex *mutex, const std::vector< size_t > &skip_station_indices)
 Computes full 2x2 Jones beam matrices using EveryBeam. More...
 
std::unique_ptr< casacore::DataManager > MakeStMan (const std::string &type_name, const std::string &instance_name, const casacore::Record &record=casacore::Record())
 
void MakeStokesIZero (std::complex< float > *visibilities)
 
void MakeStokesQZero (std::complex< float > *visibilities)
 
void MakeStokesUZero (std::complex< float > *visibilities)
 
void MakeStokesVZero (std::complex< float > *visibilities)
 

Function Documentation

◆ ApplyArrayFactorAndAdd()

void dp3::steps::ApplyArrayFactorAndAdd ( const base::DPInfo info,
size_t  n_stations,
const aocommon::xt::UTensor< std::complex< double >, 3 > &  data,
aocommon::xt::UTensor< std::complex< double >, 3 > &  model_data,
const std::complex< double > *  beam_values 
)

Corrects the values in data with the precomputed scalar array factors, and adds the corrected model data to model_data. Note that unlike ApplyBeamToDataAndAdd(), the data values are assumed to be Stokes I values only. This is used for the optimization when the sky model is unpolarized and only the array factor is applied.

Parameters
dataAn array of n_baselines x n_channels (with n_channels the fastest changing) containing the data.
model_dataArray of same shape as data ; the corrected values are added to these data.
beam_valuesArray of n_atenna x n_channels containing the pre-calculated scalar beam values.

◆ ApplyBeamToDataAndAdd()

void dp3::steps::ApplyBeamToDataAndAdd ( const base::DPInfo info,
size_t  n_stations,
const aocommon::xt::UTensor< std::complex< double >, 3 > &  data,
aocommon::xt::UTensor< std::complex< double >, 3 > &  model_data,
const aocommon::MC2x2 *  beam_values 
)

Corrects the values in data with the precomputed full Jones beam values, and adds the corrected data to model_data.

Parameters
dataAn array of n_baselines x n_channels x n_correlations (with n_correlations the fastest changing) containing the data.
model_dataArray of same shape as data0; the corrected values are added to these data.
beam_valuesArray of n_atenna x n_channels containing the pre-calculated beam matrices.

◆ ComputeArrayFactor()

size_t dp3::steps::ComputeArrayFactor ( const base::DPInfo info,
double  time,
const everybeam::vector3r_t &  srcdir,
const everybeam::telescope::Telescope *  telescope,
std::complex< double > *  beam_values,
bool  invert,
std::mutex *  mutex,
const std::vector< size_t > &  skip_station_indices 
)

Computes the array factor scalar values.

◆ ComputeBeam()

size_t dp3::steps::ComputeBeam ( const base::DPInfo info,
double  time,
const everybeam::vector3r_t &  srcdir,
const everybeam::telescope::Telescope *  telescope,
aocommon::MC2x2 *  beam_values,
bool  invert,
everybeam::BeamMode  mode,
std::mutex *  mutex,
const std::vector< size_t > &  skip_station_indices 
)

Computes full 2x2 Jones beam matrices using EveryBeam.

◆ MakeStMan()

std::unique_ptr<casacore::DataManager> dp3::steps::MakeStMan ( const std::string &  type_name,
const std::string &  instance_name,
const casacore::Record &  record = casacore::Record() 
)

◆ MakeStokesIZero()

void dp3::steps::MakeStokesIZero ( std::complex< float > *  visibilities)

This function and the other Make*Zero functions set a Stokes value to zero.

Parameters
visibilitiesThe linear polarized visibilities; should point to an array of 4 values that are modified in place.

◆ MakeStokesQZero()

void dp3::steps::MakeStokesQZero ( std::complex< float > *  visibilities)

◆ MakeStokesUZero()

void dp3::steps::MakeStokesUZero ( std::complex< float > *  visibilities)

◆ MakeStokesVZero()

void dp3::steps::MakeStokesVZero ( std::complex< float > *  visibilities)