Computes fourth-order moment pulse profile statistics. More...

#include <FourthMomentStats.h>

Inheritance diagram for Pulsar::FourthMomentStats:
Pulsar::PolnProfileStats Pulsar::Algorithm Reference::Able Reference::HeapTracked

Public Member Functions

 FourthMomentStats (const PolnProfile *profile=0)
 Default constructor.
 ~FourthMomentStats ()
 Destructor.
void set_profile (const PolnProfile *_profile)
 Set the FourthMoment from which statistics will be derived.
void set_bandwidth (double bw)
void set_duration (double T)
void set_folding_period (double P)
void set_remove_eigen_baseline (bool flag)
bool get_remove_eigen_baseline () const
Matrix< 4, 4, Estimate< double > > get_covariance (unsigned ibin) const
 Get the estimated covariance matrix for the specified phase bin.
const StokesCovarianceget_covariance () const
void eigen (PolnProfile *=0, PolnProfile *=0, PolnProfile *=0)
 Get the eigen polarization profiles.
void smooth_eigenvectors (PolnProfile *, PolnProfile *, PolnProfile *)
const Profileget_eigen_value (unsigned k)
 Get the eigen values of the polarization vector space.
const Profileget_regression_coefficient (unsigned k)
 Get the regression coefficients for each polarization vector.
const Profileget_natural_covariance (unsigned k)
 Get covariance between polarized and total intensity in natural basis.
void separate (PolnProfile &modeA, PolnProfile &modeB)
 Get the mode-separated profiles.
Reference::To< Profileget_modulation_index ()
 Return the phase-resolved modulation index.
Reference::To< Profileget_nonorthogonality ()
Reference::To< Profileget_sin_theta ()
Reference::To< Profileget_cos_theta ()
Reference::To< Profileget_norm_theta ()
Estimate< double > get_moment_variance (unsigned) const
 Returns the variance of the baseline for the specified moment.
Public Member Functions inherited from Pulsar::PolnProfileStats
 PolnProfileStats (const PolnProfile *profile=0)
 Default constructor.
 ~PolnProfileStats ()
 Destructor.
void set_avoid_zero_determinant (bool flag=true)
 Avoid on-pulse phase bins with det(rho) close to zero.
void set_profile (const PolnProfile *)
 Set the PolnProfile from which statistics will be derived.
void select_profile (const PolnProfile *)
 Set the PolnProfile that defines the baseline and on-pulse regions.
void select_profile (const Profile *)
 Set the Profile that defines the baseline and on-pulse regions.
void set_regions (const PhaseWeight &pulse, const PhaseWeight &baseline)
 Set the on-pulse and baseline regions.
void get_regions (PhaseWeight &pulse, PhaseWeight &base) const
 Set the on-pulse and baseline regions.
ProfileStatsget_stats ()
 Get the ProfileStats estimator.
const ProfileStatsget_stats () const
void set_stats (ProfileStats *s)
 Set the ProfileStats estimator.
Stokes< Estimate< double > > get_stokes (unsigned ibin) const
 Get the Stokes parameters for the specified phase bin.
Estimate< double > get_total_intensity () const
 Returns the total flux of the on-pulse phase bins.
Estimate< double > get_total_polarized () const
 Returns the total polarized flux of the on-pulse phase bins.
Estimate< double > get_total_polarized_squared () const
 Returns the total squared polarized flux of the on-pulse phase bins.
Estimate< double > get_total_squared_invariant () const
 Returns the total squared invariant of the on-pulse phase bins.
Estimate< double > get_total_determinant () const
 Returns the total determinant of the on-pulse phase bins.
Estimate< double > get_total_linear () const
 Returns the total linearly polarized flux of the on-pulse phase bins.
Estimate< double > get_total_linear_squared () const
 Returns the total linearly polarized flux squared of the on-pulse phase bins.
Estimate< double > get_total_circular () const
 Returns the total circularly polarized flux of the on-pulse phase bins.
Estimate< double > get_total_abs_circular () const
 Returns the total absolute value of circularly polarized flux.
Estimate< double > get_baseline_variance (unsigned ipol) const
 Returns the variance of the baseline for the specified polarization.
Estimate< double > get_invariant () const
 Returns the square root of the total squared invariant.
double get_linear_variance () const
 Returns the vairance of the linearly polarized flux.
TextInterface::Parserget_interface ()
 Return a text interface that can be used to configure this instance.
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 void debias (Archive *, bool xcovar=true)
 Worker function corrects bias in output of psr4th.
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 smooth (unsigned poln, unsigned ibin, Stokes< double > &match, std::vector< PolnProfile * > &eigen_vector)
Protected Member Functions inherited from Pulsar::PolnProfileStats
void build ()
Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
void __dereference (bool auto_delete=true) const

Protected Attributes

Reference::To< const StokesCovariancecovariance
double duration
 The integration length.
double folding_period
 The folding period.
double bandwidth
 The bandwidth in MHz.
bool remove_eigen_baseline
 Subtract the bias induced by sorting the eigen values.
std::vector< Reference::To< Profile > > eigen_value
std::vector< Reference::To< Profile > > regression_coefficient
std::vector< Reference::To< Profile > > natural_covariance
Reference::To< Profilenonorthogonality
Reference::To< Profilesin_theta
Reference::To< Profilecos_theta
Reference::To< Profilenorm_theta
std::vector< Estimate< double > > moment_variance
 The variance of the baseline for each moment.
Protected Attributes inherited from Pulsar::PolnProfileStats
Reference::To< const PolnProfile, false > profile
 The PolnProfile from which statistics will be derived.
Reference::To< ProfileStatsstats
 Computes the statistics of a single pulse profile.
bool regions_set
 True when the onpulse and baseline regions have been set.
bool avoid_zero_determinant
 True when zero determinant phase bins should be avoided.
Stokes< Estimate< double > > baseline_variance
 The variance of the total intensity baseline.

Detailed Description

Computes fourth-order moment pulse profile statistics.

Member Function Documentation

◆ get_covariance()

Matrix< 4, 4, Estimate< double > > Pulsar::FourthMomentStats::get_covariance ( unsigned ibin) const

Get the estimated covariance matrix for the specified phase bin.

Get the Stokes parameters of the specified phase bin.

References get_moment_variance().

Referenced by separate().


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

Generated using doxygen 1.14.0