Smooth a statistic vs time freq. More...

#include <TimeFrequencySmooth.h>

Inheritance diagram for Pulsar::TimeFrequencySmooth:
Pulsar::Algorithm Reference::Able Reference::HeapTracked Pulsar::DoubleMedian Pulsar::TwoDeeMedian

Public Member Functions

virtual void smooth (std::vector< float > &smoothed, std::vector< float > &raw, std::vector< float > &weight, std::vector< float > &freqs, std::vector< float > &times)=0
 Smooth the data given in raw, output to smoothed.
virtual TextInterface::Parserget_interface ()
 Return a text interface that can be used to configure this instance.
virtual TimeFrequencySmoothclone () const =0
 Derived types must also define clone method.
Public Member Functions inherited from Reference::Able
 Able (const Able &)
Ableoperator= (const Able &)
unsigned get_reference_count () const
Public Member Functions inherited from Reference::HeapTracked
 HeapTracked (const HeapTracked &)
HeapTrackedoperator= (const HeapTracked &)
bool __is_on_heap () const

Static Public Member Functions

static TimeFrequencySmoothfactory (const std::string &name)
 Create a new instance of TimeFrequencySmooth based on name.
static const std::vector< TimeFrequencySmooth * > & children ()
 Returns a list of available TimeFrequencySmooth children.
Static Public Member Functions inherited from Reference::Able
static size_t get_instance_count ()
Static Public Member Functions inherited from Reference::HeapTracked
static void * operator new (size_t size, void *ptr=0)
static void operator delete (void *location, void *ptr)
static void operator delete (void *location)
static size_t get_heap_queue_size ()

Protected Member Functions

void check_dimensions (std::vector< float > &smoothed, std::vector< float > &raw, std::vector< float > &weight, std::vector< float > &freqs, std::vector< float > &times)
unsigned idx (unsigned isubint, unsigned ichan) const
 Index into (nsub, nchan) arrays.
unsigned idx (unsigned isubint, unsigned ichan, unsigned ipol) const
 Index into (nsub, nchan, npol) arrays.
Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
void __dereference (bool auto_delete=true) const

Protected Attributes

unsigned nsub
unsigned nchan
unsigned npol

Detailed Description

Smooth a statistic vs time freq.

Base class for algorithms that smooth data vs time and frequency in order to normalize out for example bandpass shape as a first step in RFI removal.

Member Function Documentation

◆ clone()

virtual TimeFrequencySmooth * Pulsar::TimeFrequencySmooth::clone ( ) const
pure virtual

Derived types must also define clone method.

Implemented in Pulsar::DoubleMedian, and Pulsar::TwoDeeMedian.

◆ get_interface()

virtual TextInterface::Parser * Pulsar::TimeFrequencySmooth::get_interface ( )
inlinevirtual

Return a text interface that can be used to configure this instance.

Reimplemented in Pulsar::DoubleMedian, and Pulsar::TwoDeeMedian.

◆ smooth()

virtual void Pulsar::TimeFrequencySmooth::smooth ( std::vector< float > & smoothed,
std::vector< float > & raw,
std::vector< float > & weight,
std::vector< float > & freqs,
std::vector< float > & times )
pure virtual

Smooth the data given in raw, output to smoothed.

Dimensions of input arrays should be: raw = (nsub, nchan, npol) weight = (nsub, nchan) freqs = (nsub, nchan) times = (nsub,)

Implemented in Pulsar::DoubleMedian, and Pulsar::TwoDeeMedian.


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

Generated using doxygen 1.14.0