DP3
Public Member Functions | Static Public Member Functions | List of all members
dp3::steps::PhaseShift Class Reference

DP3 step class to shift the data to another phase center. More...

#include <PhaseShift.h>

Inheritance diagram for dp3::steps::PhaseShift:
dp3::steps::Step

Public Member Functions

 PhaseShift (const common::ParameterSet &, const std::string &prefix)
 
 PhaseShift (const common::ParameterSet &, const std::string &prefix, const std::vector< std::string > &defVal)
 
 ~PhaseShift () override
 
void finish () override
 Finish the processing of this step and subsequent steps. More...
 
const std::vector< std::string > & getPhaseCenter () const
 Get the phase center. More...
 
const xt::xtensor< std::complex< double >, 2 > & getPhasors () const
 
common::Fields getProvidedFields () const override
 
common::Fields getRequiredFields () const override
 Get the fields required by the current step. More...
 
bool process (std::unique_ptr< base::DPBuffer > buffer) override
 
void show (std::ostream &) const override
 Show the step parameters. More...
 
void showTimings (std::ostream &, double duration) const override
 Show the timings. More...
 
void updateInfo (const base::DPInfo &) override
 Update the general info. More...
 
- Public Member Functions inherited from dp3::steps::Step
 Step ()
 
virtual ~Step ()
 
virtual bool accepts (MsType dt) const
 Boolean if this step can process this type of data. More...
 
const base::DPInfogetInfoIn () const
 Get access to the info of the input. More...
 
const base::DPInfogetInfoOut () const
 Get access to the info of the output. More...
 
const Step::ShPtrgetNextStep () const
 Get the next step. More...
 
StepgetPrevStep () const
 Get the previous step. More...
 
virtual MsType outputs () const
 Return which datatype this step outputs. More...
 
virtual bool process (std::unique_ptr< base::BdaBuffer >)
 
void setInfo (const base::DPInfo &)
 
virtual void setNextStep (Step::ShPtr nextStep)
 Set the next step. More...
 
void setPrevStep (Step *prevStep)
 Set the previous step. More...
 
virtual void showCounts (std::ostream &) const
 

Static Public Member Functions

static void fillEulerMatrix (casacore::Matrix< double > &mat, const base::Direction &direction)
 Fill the Euler rotation matrix for given ra/dec. More...
 
- Static Public Member Functions inherited from dp3::steps::Step
static void SetThreadingIsInitialized ()
 

Additional Inherited Members

- Public Types inherited from dp3::steps::Step
enum class  MsType { kRegular , kBda }
 To check compatibility between steps before running. More...
 
typedef std::shared_ptr< StepShPtr
 
- Static Public Attributes inherited from dp3::steps::Step
static constexpr dp3::common::Fields kDataField
 
static constexpr dp3::common::Fields kFlagsField
 
static constexpr dp3::common::Fields kUvwField
 
static constexpr dp3::common::Fields kWeightsField
 
- Protected Member Functions inherited from dp3::steps::Step
virtual void addToMS (const std::string &msName)
 
base::DPInfoGetWritableInfoOut ()
 

Detailed Description

DP3 step class to shift the data to another phase center.

This class is a Step class to shift the data and UVW coordinates to another phase center. If no phase center is given, a shift is done back to the original phase center. The code is based on the script phaseshift.py by Bas vd Tol.

Constructor & Destructor Documentation

◆ PhaseShift() [1/2]

dp3::steps::PhaseShift::PhaseShift ( const common::ParameterSet ,
const std::string &  prefix 
)

Construct the object. Parameters are obtained from the parset using the given prefix. This is the standard constructor where the phasecenter must be given.

◆ PhaseShift() [2/2]

dp3::steps::PhaseShift::PhaseShift ( const common::ParameterSet ,
const std::string &  prefix,
const std::vector< std::string > &  defVal 
)

Construct the object. Parameters are obtained from the parset using the given prefix. This is a constructor for Demixer where the phasecenter has the given default value.

◆ ~PhaseShift()

dp3::steps::PhaseShift::~PhaseShift ( )
override

Member Function Documentation

◆ fillEulerMatrix()

static void dp3::steps::PhaseShift::fillEulerMatrix ( casacore::Matrix< double > &  mat,
const base::Direction direction 
)
static

Fill the Euler rotation matrix for given ra/dec.

◆ finish()

void dp3::steps::PhaseShift::finish ( )
overridevirtual

Finish the processing of this step and subsequent steps.

Implements dp3::steps::Step.

◆ getPhaseCenter()

const std::vector<std::string>& dp3::steps::PhaseShift::getPhaseCenter ( ) const
inline

Get the phase center.

◆ getPhasors()

const xt::xtensor<std::complex<double>, 2>& dp3::steps::PhaseShift::getPhasors ( ) const
inline

Get the phasors resulting from the last process step. This is used in the Demixer.

◆ getProvidedFields()

common::Fields dp3::steps::PhaseShift::getProvidedFields ( ) const
inlineoverridevirtual

Get the fields provided (modified and/or created) by the current step. The returned fields thus should not include (required) fields that are forwarded without modifications.

Implements dp3::steps::Step.

◆ getRequiredFields()

common::Fields dp3::steps::PhaseShift::getRequiredFields ( ) const
inlineoverridevirtual

Get the fields required by the current step.

Implements dp3::steps::Step.

◆ process()

bool dp3::steps::PhaseShift::process ( std::unique_ptr< base::DPBuffer buffer)
overridevirtual

Process the data. It keeps the data. When processed, it invokes the process function of the next step.

Reimplemented from dp3::steps::Step.

◆ show()

void dp3::steps::PhaseShift::show ( std::ostream &  ) const
overridevirtual

Show the step parameters.

Implements dp3::steps::Step.

◆ showTimings()

void dp3::steps::PhaseShift::showTimings ( std::ostream &  ,
double  duration 
) const
overridevirtual

Show the timings.

Reimplemented from dp3::steps::Step.

◆ updateInfo()

void dp3::steps::PhaseShift::updateInfo ( const base::DPInfo )
overridevirtual

Update the general info.

Reimplemented from dp3::steps::Step.


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