Replaces impulsive DM=0 spikes with randomly selected noise. More...

#include <Mower.h>

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

Public Member Functions

 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

Protected Member Functions

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

Protected Attributes

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.

Additional Inherited Members

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 ()

Detailed Description

Replaces impulsive DM=0 spikes with randomly selected noise.

By adding preconditions, this class can be made interactive

Member Function Documentation

◆ compute()

virtual void Pulsar::Mower::compute ( PhaseWeight * mask,
const Profile * difference )
protectedpure virtual

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

Implemented in Pulsar::LawnMower, and Pulsar::RobustMower.

Referenced by build_mask().

◆ get_interface()

TextInterface::Parser * Pulsar::Mower::get_interface ( )
virtual

Get the text interface to the mower attributes.

Get the text interface to the configuration attributes.

◆ set_threshold()

void Pulsar::Mower::set_threshold ( float madm)
virtual

Set the threshold above which samples are mown.

Reimplemented in Pulsar::LawnMower.

References cutoff_threshold.

Referenced by Pulsar::LawnMower::set_threshold().

◆ transform()


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

Generated using doxygen 1.14.0