HOPS
HOPS class reference
Public Member Functions | Protected Types | Protected Member Functions | List of all members
hops::MHO_SpectralLineFringeSearch Class Reference

Class MHO_SpectralLineFringeSearch. More...

#include <MHO_SpectralLineFringeSearch.hh>

Inheritance diagram for hops::MHO_SpectralLineFringeSearch:
[legend]

Public Member Functions

 MHO_SpectralLineFringeSearch ()
 
virtual ~MHO_SpectralLineFringeSearch ()
 
int GetChanMaxBin () const
 Channel index of the coarse peak (-1 if not found). More...
 
double GetCoarseDR () const
 Delay rate (sec/sec) at the coarse peak. More...
 
double GetCoarsePeakSkyFrequencyMHz () const
 Sky frequency (MHz) at the coarse peak channel. This is the CHANNEL_AXIS value for the peak channel. More...
 
delay_rate_axis_typeGetDRAxis ()
 Pointer to the delay-rate axis (size = GetNDRBins()). Values are delay rates in sec/sec, centred on zero. More...
 
double GetDRBinSeparation () const
 Delay-rate bin spacing (sec/sec). More...
 
int GetDRMaxBin () const
 Delay-rate bin index of the coarse peak (-1 if not found). More...
 
void GetDRWindow (double &low, double &high) const
 Retrieve the delay-rate window actually used (sec/sec). More...
 
int GetFreqMaxBin () const
 Intra-channel frequency bin index of the coarse peak (-1 if not found). More...
 
void GetFrequencyWindow (double &low_mhz, double &high_mhz) const
 Retrieve the sky-frequency search window (MHz). More...
 
int GetNDRBins () const
 Number of delay-rate bins after zero-padding. More...
 
double GetSearchMaximumAmplitude () const
 Raw (un-normalised) amplitude at the search maximum. More...
 
visibility_typeGetSpecDRData ()
 Pointer to the internal (channel x DR x freq) workspace. Valid after Execute(); used by MHO_InterpolateSpectralLinePeak. More...
 
void SetDRWindow (double low, double high)
 Restrict the delay-rate search to low, high. More...
 
void SetFrequencyWindow (double low_mhz, double high_mhz)
 Restrict the frequency search to channels whose sky frequency falls in [low_mhz, high_mhz]. Both bounds are in MHz. More...
 
void SetReferenceFrequency (double ref_freq_mhz)
 Set the reference frequency in MHz (used to convert fringe rate -> delay rate). More...
 
void SetWeights (weight_type *wt_data)
 Set the weight array (per polprod x channel x AP, freq dim ignored). More...
 
- Public Member Functions inherited from hops::MHO_InspectingOperator< visibility_type >
 MHO_InspectingOperator ()
 
virtual ~MHO_InspectingOperator ()
 
virtual bool Execute () override
 Executes the inspection on the input array. More...
 
virtual bool Initialize () override
 initializes inspection for a single const array of type XArgType. More...
 
virtual void SetArgs (const visibility_type *in)
 Setter for args. More...
 
- Public Member Functions inherited from hops::MHO_Operator
 MHO_Operator ()
 
virtual ~MHO_Operator ()
 
std::string GetName () const
 Getter for operator name. More...
 
double Priority () const
 Get the the priority field value. More...
 
void SetName (std::string name)
 Setter for operator name. More...
 
void SetPriority (double priority)
 Setter for operator priority (determines order of execution within a operator category) More...
 

Protected Types

using XArgType = visibility_type
 

Protected Member Functions

virtual bool ExecuteImpl (const XArgType *in) override
 Inspects a single const array. More...
 
virtual bool InitializeImpl (const XArgType *in) override
 initializes inspection for a single const array of type XArgType. More...
 

Additional Inherited Members

- Protected Attributes inherited from hops::MHO_InspectingOperator< visibility_type >
const visibility_typefArg
 

Detailed Description

Class MHO_SpectralLineFringeSearch.

Coarse fringe search for spectral line (narrow-band) VLBI data.

Author
J. Barrett - barre.nosp@m.ttj@.nosp@m.mit.e.nosp@m.du
Date

Instead of the broadband (SBD, MBD, DR) search, this operator works in (channel, intra-channel frequency bin, delay rate) space. It applies a 1-D FFT along the accumulation-period (time) axis of the weighted visibilities to produce a coherent delay-rate spectrum for every spectral bin, then finds the global amplitude peak.

Assumes the polarization-product axis has size 1 (either a single pol product or a pre-summed coherent combination).

Member Typedef Documentation

◆ XArgType

Constructor & Destructor Documentation

◆ MHO_SpectralLineFringeSearch()

hops::MHO_SpectralLineFringeSearch::MHO_SpectralLineFringeSearch ( )

◆ ~MHO_SpectralLineFringeSearch()

hops::MHO_SpectralLineFringeSearch::~MHO_SpectralLineFringeSearch ( )
virtual

Member Function Documentation

◆ ExecuteImpl()

bool hops::MHO_SpectralLineFringeSearch::ExecuteImpl ( const XArgType in)
overrideprotectedvirtual

Inspects a single const array.

Parameters
inInput const array of type XArgType to inspect.
Returns
Boolean indicating successful execution.
Note
This is a virtual function.

Implements hops::MHO_InspectingOperator< visibility_type >.

◆ GetChanMaxBin()

int hops::MHO_SpectralLineFringeSearch::GetChanMaxBin ( ) const
inline

Channel index of the coarse peak (-1 if not found).

◆ GetCoarseDR()

double hops::MHO_SpectralLineFringeSearch::GetCoarseDR ( ) const
inline

Delay rate (sec/sec) at the coarse peak.

◆ GetCoarsePeakSkyFrequencyMHz()

double hops::MHO_SpectralLineFringeSearch::GetCoarsePeakSkyFrequencyMHz ( ) const
inline

Sky frequency (MHz) at the coarse peak channel. This is the CHANNEL_AXIS value for the peak channel.

◆ GetDRAxis()

delay_rate_axis_type* hops::MHO_SpectralLineFringeSearch::GetDRAxis ( )
inline

Pointer to the delay-rate axis (size = GetNDRBins()). Values are delay rates in sec/sec, centred on zero.

◆ GetDRBinSeparation()

double hops::MHO_SpectralLineFringeSearch::GetDRBinSeparation ( ) const
inline

Delay-rate bin spacing (sec/sec).

◆ GetDRMaxBin()

int hops::MHO_SpectralLineFringeSearch::GetDRMaxBin ( ) const
inline

Delay-rate bin index of the coarse peak (-1 if not found).

◆ GetDRWindow()

void hops::MHO_SpectralLineFringeSearch::GetDRWindow ( double &  low,
double &  high 
) const

Retrieve the delay-rate window actually used (sec/sec).

◆ GetFreqMaxBin()

int hops::MHO_SpectralLineFringeSearch::GetFreqMaxBin ( ) const
inline

Intra-channel frequency bin index of the coarse peak (-1 if not found).

◆ GetFrequencyWindow()

void hops::MHO_SpectralLineFringeSearch::GetFrequencyWindow ( double &  low_mhz,
double &  high_mhz 
) const

Retrieve the sky-frequency search window (MHz).

◆ GetNDRBins()

int hops::MHO_SpectralLineFringeSearch::GetNDRBins ( ) const
inline

Number of delay-rate bins after zero-padding.

◆ GetSearchMaximumAmplitude()

double hops::MHO_SpectralLineFringeSearch::GetSearchMaximumAmplitude ( ) const
inline

Raw (un-normalised) amplitude at the search maximum.

◆ GetSpecDRData()

visibility_type* hops::MHO_SpectralLineFringeSearch::GetSpecDRData ( )
inline

Pointer to the internal (channel x DR x freq) workspace. Valid after Execute(); used by MHO_InterpolateSpectralLinePeak.

◆ InitializeImpl()

bool hops::MHO_SpectralLineFringeSearch::InitializeImpl ( const XArgType in)
overrideprotectedvirtual

initializes inspection for a single const array of type XArgType.

Parameters
inInput const array of type XArgType to inspect
Returns
True if inspection is successful, false otherwise
Note
This is a virtual function.

Implements hops::MHO_InspectingOperator< visibility_type >.

◆ SetDRWindow()

void hops::MHO_SpectralLineFringeSearch::SetDRWindow ( double  low,
double  high 
)

Restrict the delay-rate search to low, high.

◆ SetFrequencyWindow()

void hops::MHO_SpectralLineFringeSearch::SetFrequencyWindow ( double  low_mhz,
double  high_mhz 
)

Restrict the frequency search to channels whose sky frequency falls in [low_mhz, high_mhz]. Both bounds are in MHz.

◆ SetReferenceFrequency()

void hops::MHO_SpectralLineFringeSearch::SetReferenceFrequency ( double  ref_freq_mhz)
inline

Set the reference frequency in MHz (used to convert fringe rate -> delay rate).

◆ SetWeights()

void hops::MHO_SpectralLineFringeSearch::SetWeights ( weight_type wt_data)
inline

Set the weight array (per polprod x channel x AP, freq dim ignored).


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