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

Class MHO_MBDelaySearch. More...

#include <MHO_MBDelaySearch.hh>

Inheritance diagram for hops::MHO_MBDelaySearch:
[legend]

Public Member Functions

 MHO_MBDelaySearch ()
 
virtual ~MHO_MBDelaySearch ()
 
double GetAverageFrequency () const
 
double GetCoarseDR () const
 Getter for coarse dr. More...
 
double GetCoarseMBD () const
 Getter for coarse mbd. More...
 
double GetCoarseSBD () const
 Getter for coarse sbd. More...
 
delay_rate_axis_typeGetDRAxis ()
 
int GetDRMaxBin () const
 Getter for drmax bin. More...
 
void GetDRWindow (double &low, double &high) const
 Getter for dr window. More...
 
double GetFrequencySpacing () const
 
time_axis_typeGetMBDAxis ()
 
int GetMBDMaxBin () const
 Getter for mbdmax bin. More...
 
void GetMBDWindow (double &low, double &high) const
 Getter for mbd window. More...
 
int GetNDRBins () const
 Getter for ndrbins. More...
 
int GetNDRSPBins () const
 
int GetNMBDBins () const
 Getter for N mbd bins. More...
 
double GetNPointsSearched () const
 
int GetNSBDBins () const
 Getter for n sbd bins. More...
 
double GetSBDBinSeparation () const
 Getter for sbd bin separation. More...
 
int GetSBDMaxBin () const
 Getter for sbdmax bin. More...
 
void GetSBDWindow (double &low, double &high) const
 Getter for sbd window. More...
 
double GetSearchMaximumAmplitude () const
 
void SetDRWindow (double low, double high)
 Setter for dr window. More...
 
void SetMBDWindow (double low, double high)
 Setter for mbd window. More...
 
void SetReferenceFrequency (double ref_freq)
 Setter for reference frequency. More...
 
void SetSBDWindow (double low, double high)
 Setter for sbd window. More...
 
void SetWeights (weight_type *wt_data)
 Setter for weights. 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...
 
virtual double Priority () const
 Get the the priority field value. More...
 
void SetName (std::string name)
 Setter for operator name. More...
 
virtual void SetPriority (const double &priority)
 Setter for operator priority (determines order of execution within a operator category) More...
 

Protected Types

using FFT_ENGINE_TYPE = MHO_MultidimensionalFastFourierTransform< mbd_type >
 
using XArgType = visibility_type
 

Protected Member Functions

virtual bool ExecuteImpl (const XArgType *in) override
 Inspects a single const array. More...
 
void GetWindow (const MHO_Axis< double > &axis, bool win_set, const double *win, double bin_width, double &low, double &high) const
 
virtual bool InitializeImpl (const XArgType *in) override
 initializes inspection for a single const array of type XArgType. More...
 
void SetWindow (double *win, double low, double high)
 

Protected Attributes

double fAverageFreq
 
std::vector< double > fChannelFreqs
 
std::map< std::size_t, std::size_t > fChannelIndexToFreqPointIndex
 
double fCoarseDR
 
double fCoarseMBD
 
double fCoarseSBD
 
MHO_CyclicRotator< mbd_typefCyclicRotator
 
MHO_DelayRate fDelayRateCalc
 
MHO_Axis< double > fDRAxis
 
double fDRBinSep
 
int fDRMaxBin
 
double fDRWin [2]
 
bool fDRWinSet
 
FFT_ENGINE_TYPE fFFTEngine
 
MHO_UniformGridPointsCalculator fGridCalc
 
double fGridSpace
 
double fGridStart
 
bool fInitialized
 
double fMax
 
MHO_ExtremaSearch< mbd_amp_typefMaxSearch
 
mbd_amp_type fMBDAmpWorkspace
 
MHO_Axis< double > fMBDAxis
 
std::map< std::size_t, std::size_t > fMBDBinMap
 
double fMBDBinSep
 
int fMBDMaxBin
 
double fMBDWin [2]
 
bool fMBDWinSet
 
mbd_type fMBDWorkspace
 
std::size_t fNDR
 
std::size_t fNDRSP
 
std::size_t fNGridPoints
 
double fNPointsSearched
 
std::size_t fNSBD
 
double fRefFreq
 
MHO_Axis< double > fSBDAxis
 
double fSBDBinSep
 
visibility_type fSBDDrWorkspace
 
int fSBDMaxBin
 
int fSBDStart
 
int fSBDStop
 
double fSBDWin [2]
 
bool fSBDWinSet
 
weight_typefWeights
 
weight_type fWeightsWorkspace
 
visibility_type sbd_dr_data
 
- Protected Attributes inherited from hops::MHO_InspectingOperator< visibility_type >
const visibility_typefArg
 

Detailed Description

Class MHO_MBDelaySearch.

implements the coarse MBD/SBD/DR search, see search.c

Author
J. Barrett - barre.nosp@m.ttj@.nosp@m.mit.e.nosp@m.du
Date
Tue Apr 11 16:50:11 2023 -0400

Member Typedef Documentation

◆ FFT_ENGINE_TYPE

◆ XArgType

Constructor & Destructor Documentation

◆ MHO_MBDelaySearch()

hops::MHO_MBDelaySearch::MHO_MBDelaySearch ( )

◆ ~MHO_MBDelaySearch()

hops::MHO_MBDelaySearch::~MHO_MBDelaySearch ( )
virtual

Member Function Documentation

◆ ExecuteImpl()

bool hops::MHO_MBDelaySearch::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 >.

Reimplemented in hops::MHO_MBDelaySearchCUDA.

◆ GetAverageFrequency()

double hops::MHO_MBDelaySearch::GetAverageFrequency ( ) const
inline

◆ GetCoarseDR()

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

Getter for coarse dr.

Returns
Current coarse delay rate as a double

◆ GetCoarseMBD()

double hops::MHO_MBDelaySearch::GetCoarseMBD ( ) const
inline

Getter for coarse mbd.

Returns
The current coarse MBD value as a double.

◆ GetCoarseSBD()

double hops::MHO_MBDelaySearch::GetCoarseSBD ( ) const
inline

Getter for coarse sbd.

Returns
The current coarse sbd value as a double.

◆ GetDRAxis()

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

◆ GetDRMaxBin()

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

Getter for drmax bin.

Returns
Current location of the bin containing the delay rate maximum as an integer

◆ GetDRWindow()

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

Getter for dr window.

Parameters
lowReference to store the lower bound of the delay-rate window.
highReference to store the higher bound of the delay-rate window.

◆ GetFrequencySpacing()

double hops::MHO_MBDelaySearch::GetFrequencySpacing ( ) const
inline

◆ GetMBDAxis()

time_axis_type* hops::MHO_MBDelaySearch::GetMBDAxis ( )
inline

◆ GetMBDMaxBin()

int hops::MHO_MBDelaySearch::GetMBDMaxBin ( ) const
inline

Getter for mbdmax bin.

Returns
Current location of the bin containing the multi-band delay maximum as an integer

◆ GetMBDWindow()

void hops::MHO_MBDelaySearch::GetMBDWindow ( double &  low,
double &  high 
) const

Getter for mbd window.

Parameters
lowReference to store the lower bound of the MBD window.
highReference to store the higher bound of the MBD window.

◆ GetNDRBins()

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

Getter for ndrbins.

Returns
The number of delay rate (DR) bins as an integer.

◆ GetNDRSPBins()

int hops::MHO_MBDelaySearch::GetNDRSPBins ( ) const
inline

◆ GetNMBDBins()

int hops::MHO_MBDelaySearch::GetNMBDBins ( ) const
inline

Getter for N mbd bins.

Returns
Number of grid points (MBD)

◆ GetNPointsSearched()

double hops::MHO_MBDelaySearch::GetNPointsSearched ( ) const

◆ GetNSBDBins()

int hops::MHO_MBDelaySearch::GetNSBDBins ( ) const
inline

Getter for n sbd bins.

Returns
N SBD bins value as int

◆ GetSBDBinSeparation()

double hops::MHO_MBDelaySearch::GetSBDBinSeparation ( ) const
inline

Getter for sbd bin separation.

Returns
Current SBDBin separation as a double.

◆ GetSBDMaxBin()

int hops::MHO_MBDelaySearch::GetSBDMaxBin ( ) const
inline

Getter for sbdmax bin.

Returns
Current location of the bin containing the single band delay maximum as an integer

◆ GetSBDWindow()

void hops::MHO_MBDelaySearch::GetSBDWindow ( double &  low,
double &  high 
) const

Getter for sbd window.

Parameters
lowReference to store the lower limit of the SBD window
highReference to store the upper limit of the SBD window

◆ GetSearchMaximumAmplitude()

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

◆ GetWindow()

void hops::MHO_MBDelaySearch::GetWindow ( const MHO_Axis< double > &  axis,
bool  win_set,
const double *  win,
double  bin_width,
double &  low,
double &  high 
) const
protected

◆ InitializeImpl()

bool hops::MHO_MBDelaySearch::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 >.

Reimplemented in hops::MHO_MBDelaySearchCUDA.

◆ SetDRWindow()

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

Setter for dr window.

Parameters
lowLower bound of the delay rate window.
highUpper bound of the delay rate window.

◆ SetMBDWindow()

void hops::MHO_MBDelaySearch::SetMBDWindow ( double  low,
double  high 
)

Setter for mbd window.

Parameters
lowLower bound of MBD window
highUpper bound of MBD window

◆ SetReferenceFrequency()

void hops::MHO_MBDelaySearch::SetReferenceFrequency ( double  ref_freq)
inline

Setter for reference frequency.

Parameters
ref_freqNew reference frequency value in MHz

◆ SetSBDWindow()

void hops::MHO_MBDelaySearch::SetSBDWindow ( double  low,
double  high 
)

Setter for sbd window.

Parameters
lowLower limit of the SBD window
highUpper limit of the SBD window

◆ SetWeights()

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

Setter for weights.

Parameters
wt_dataPointer to weight_type data

◆ SetWindow()

void hops::MHO_MBDelaySearch::SetWindow ( double *  win,
double  low,
double  high 
)
protected

Member Data Documentation

◆ fAverageFreq

double hops::MHO_MBDelaySearch::fAverageFreq
protected

◆ fChannelFreqs

std::vector< double > hops::MHO_MBDelaySearch::fChannelFreqs
protected

◆ fChannelIndexToFreqPointIndex

std::map< std::size_t, std::size_t > hops::MHO_MBDelaySearch::fChannelIndexToFreqPointIndex
protected

◆ fCoarseDR

double hops::MHO_MBDelaySearch::fCoarseDR
protected

◆ fCoarseMBD

double hops::MHO_MBDelaySearch::fCoarseMBD
protected

◆ fCoarseSBD

double hops::MHO_MBDelaySearch::fCoarseSBD
protected

◆ fCyclicRotator

MHO_CyclicRotator< mbd_type > hops::MHO_MBDelaySearch::fCyclicRotator
protected

◆ fDelayRateCalc

MHO_DelayRate hops::MHO_MBDelaySearch::fDelayRateCalc
protected

◆ fDRAxis

MHO_Axis< double > hops::MHO_MBDelaySearch::fDRAxis
protected

◆ fDRBinSep

double hops::MHO_MBDelaySearch::fDRBinSep
protected

◆ fDRMaxBin

int hops::MHO_MBDelaySearch::fDRMaxBin
protected

◆ fDRWin

double hops::MHO_MBDelaySearch::fDRWin[2]
protected

◆ fDRWinSet

bool hops::MHO_MBDelaySearch::fDRWinSet
protected

◆ fFFTEngine

FFT_ENGINE_TYPE hops::MHO_MBDelaySearch::fFFTEngine
protected

◆ fGridCalc

MHO_UniformGridPointsCalculator hops::MHO_MBDelaySearch::fGridCalc
protected

◆ fGridSpace

double hops::MHO_MBDelaySearch::fGridSpace
protected

◆ fGridStart

double hops::MHO_MBDelaySearch::fGridStart
protected

◆ fInitialized

bool hops::MHO_MBDelaySearch::fInitialized
protected

◆ fMax

double hops::MHO_MBDelaySearch::fMax
protected

◆ fMaxSearch

MHO_ExtremaSearch< mbd_amp_type > hops::MHO_MBDelaySearch::fMaxSearch
protected

◆ fMBDAmpWorkspace

mbd_amp_type hops::MHO_MBDelaySearch::fMBDAmpWorkspace
protected

◆ fMBDAxis

MHO_Axis< double > hops::MHO_MBDelaySearch::fMBDAxis
protected

◆ fMBDBinMap

std::map< std::size_t, std::size_t > hops::MHO_MBDelaySearch::fMBDBinMap
protected

◆ fMBDBinSep

double hops::MHO_MBDelaySearch::fMBDBinSep
protected

◆ fMBDMaxBin

int hops::MHO_MBDelaySearch::fMBDMaxBin
protected

◆ fMBDWin

double hops::MHO_MBDelaySearch::fMBDWin[2]
protected

◆ fMBDWinSet

bool hops::MHO_MBDelaySearch::fMBDWinSet
protected

◆ fMBDWorkspace

mbd_type hops::MHO_MBDelaySearch::fMBDWorkspace
protected

◆ fNDR

std::size_t hops::MHO_MBDelaySearch::fNDR
protected

◆ fNDRSP

std::size_t hops::MHO_MBDelaySearch::fNDRSP
protected

◆ fNGridPoints

std::size_t hops::MHO_MBDelaySearch::fNGridPoints
protected

◆ fNPointsSearched

double hops::MHO_MBDelaySearch::fNPointsSearched
protected

◆ fNSBD

std::size_t hops::MHO_MBDelaySearch::fNSBD
protected

◆ fRefFreq

double hops::MHO_MBDelaySearch::fRefFreq
protected

◆ fSBDAxis

MHO_Axis< double > hops::MHO_MBDelaySearch::fSBDAxis
protected

◆ fSBDBinSep

double hops::MHO_MBDelaySearch::fSBDBinSep
protected

◆ fSBDDrWorkspace

visibility_type hops::MHO_MBDelaySearch::fSBDDrWorkspace
protected

◆ fSBDMaxBin

int hops::MHO_MBDelaySearch::fSBDMaxBin
protected

◆ fSBDStart

int hops::MHO_MBDelaySearch::fSBDStart
protected

◆ fSBDStop

int hops::MHO_MBDelaySearch::fSBDStop
protected

◆ fSBDWin

double hops::MHO_MBDelaySearch::fSBDWin[2]
protected

◆ fSBDWinSet

bool hops::MHO_MBDelaySearch::fSBDWinSet
protected

◆ fWeights

weight_type* hops::MHO_MBDelaySearch::fWeights
protected

◆ fWeightsWorkspace

weight_type hops::MHO_MBDelaySearch::fWeightsWorkspace
protected

◆ sbd_dr_data

visibility_type hops::MHO_MBDelaySearch::sbd_dr_data
protected

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