Pulsar::RobustMower Class Reference

Lawn mower algorithm uses robust statistics to find spikes. More...

#include <RobustMower.h>

Inheritance diagram for Pulsar::RobustMower:
Pulsar::Mower Pulsar::Transformation< Integration > Pulsar::Algorithm Reference::Able Reference::HeapTracked

Protected Member Functions

void compute (PhaseWeight *mask, const Profile *difference)
 Find the spikes in median smoothed difference and flag them in mask.
Protected Member Functions inherited from Pulsar::Mower
virtual bool build_mask (Profile *profile)
 Create mask and return true if all preconditions are satisfied.
Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
void __dereference (bool auto_delete=true) const

Additional Inherited Members

Public Member Functions inherited from Pulsar::Mower
 Mower ()
 Default constructor.
virtual TextInterface::Parserget_interface ()
 Get the text interface to the mower attributes.
void transform (Integration *)
 Set the Profile from which baseline PhaseWeight will be computed.
virtual void set_threshold (float madm)
 Set the threshold above which samples are mown.
float get_threshold () const
virtual void set_median_smoothing (float turns)
 Set the size of the window used during median smoothing.
float get_median_smoothing () const
virtual void set_broadband (bool)
 If set, search for spikes in fscrunched (DM=0) total.
virtual void set_prune (const PhaseWeight *prune_mask)
 If set, mow only the points flagged in the prune mask.
const PhaseWeightget_prune () const
virtual void add_precondition (Functor< bool(Profile *, PhaseWeight *) >)
 One or more preconditions can be added.
Public Member Functions inherited from Pulsar::Transformation< Integration >
void operator() (Integration *container)
 Functor interface.
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 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 Attributes inherited from Pulsar::Mower
Reference::To< PhaseWeightmowed
 Points to be mowed.
Reference::To< const PhaseWeightprune
 Specific points to be pruned.
float median_smoothing_turns
 Size of median smoothing window in turns.
float cutoff_threshold
 Cutoff threshold.
bool broadband
 Search for spikes in fscrunch (DM=0) total.
std::vector< Functor< bool(Profile *, PhaseWeight *) > > precondition
 Preconditions.

Detailed Description

Lawn mower algorithm uses robust statistics to find spikes.

Member Function Documentation

◆ compute()

void Pulsar::RobustMower::compute ( PhaseWeight * mask,
const Profile * difference )
protectedvirtual

Find the spikes in median smoothed difference and flag them in mask.

Implements Pulsar::Mower.

References Pulsar::Mower::cutoff_threshold, Pulsar::ProfileAmps::get_amps(), Pulsar::ProfileAmps::get_nbin(), and Pulsar::Mower::mowed.


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

Generated using doxygen 1.14.0