Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Public Types | Public Member Functions | List of all members
ska::cheetah::data::Candidate< Arch, T > Class Template Reference

A simple record to hold 'candidate' proprerties. More...

#include <cheetah/data/Candidate.h>

Inheritance diagram for ska::cheetah::data::Candidate< Arch, T >:
Inheritance graph
Collaboration diagram for ska::cheetah::data::Candidate< Arch, T >:
Collaboration graph

Public Types

typedef DedispersionMeasureType< T > Dm
 
typedef boost::units::quantity< MilliSeconds, double > MsecTimeType
 
typedef MsecTimeType TimeType
 
typedef boost::units::quantity< boost::units::si::dimensionless, T > SecPerSecType
 

Public Member Functions

 Candidate ()
 Create a zero-sized Candidate.
 
 Candidate (MsecTimeType pulse_period, SecPerSecType pulse_pdot, Dm dm, std::size_t ident=0)
 Construct a defined size Candidate object. More...
 
 Candidate (MsecTimeType pulse_period, SecPerSecType pulse_pdot, Dm dm, MsecTimeType pulse_width, T sigma, std::size_t ident=0)
 Construct a defined size Candidate object. More...
 
 ~Candidate ()
 destroy a Candidate
 
MsecTimeType const & period () const
 access a reference to pulsar period. More...
 
void period (MsecTimeType c_period)
 Set the candidate period. More...
 
SecPerSecType const & pdot () const
 access a reference to pulse_pdot. More...
 
void pdot (SecPerSecType c_pulse_pdot)
 Set the candidate pulse_pdot value. More...
 
Dm const & dm () const
 access a reference to dm. More...
 
void dm (Dm c_dm)
 Set the candidate dm value. More...
 
MsecTimeType const & width () const
 access a reference to width. More...
 
void width (MsecTimeType c_width)
 set the candidate width value. More...
 
T const & sigma () const
 access a reference to _sigma. More...
 
void sigma (T c_sigma)
 Set the candidate sigma value. More...
 
std::size_t const & ident () const
 access a reference to ident. More...
 
void ident (std::size_t c_ident)
 set the candidate ident value. More...
 

Detailed Description

template<typename Arch, typename T>
class ska::cheetah::data::Candidate< Arch, T >

A simple record to hold 'candidate' proprerties.

A collection of values which hold the 'candidate' proprerties to be used in more complex vector-type classes

Template Parameters
Tthe underlying data representation (double, float uin8_t, etc) for the Dedispersion measure, sigma and pulse_pdot.

Most data are double type.

Definition at line 60 of file Candidate.h.

Constructor & Destructor Documentation

◆ Candidate() [1/2]

template<typename Arch, typename T>
ska::cheetah::data::Candidate< Arch, T >::Candidate ( MsecTimeType  pulse_period,
SecPerSecType  pulse_pdot,
Dm  dm,
std::size_t  ident = 0 
)

Construct a defined size Candidate object.

Parameters
pulse_period= estimated/computed pulse period
pulse_pdot= estimated/computed period acceleration
dm= estimated/computed dispersion measure
ident= candidate identifier, to be held constant along pipeline (debug tracing)

◆ Candidate() [2/2]

template<typename Arch, typename T>
ska::cheetah::data::Candidate< Arch, T >::Candidate ( MsecTimeType  pulse_period,
SecPerSecType  pulse_pdot,
Dm  dm,
MsecTimeType  pulse_width,
sigma,
std::size_t  ident = 0 
)

Construct a defined size Candidate object.

Parameters
pulse_period= estimated/computed pulse period
pulse_pdot= estimated/computed period acceleration
dm= estimated/computed dispersion measure
pulse_width= computed pulse width
sigma= computed significance
ident= candidate identifier, to be held constant along pipeline (debug tracing)

Member Function Documentation

◆ dm() [1/2]

template<typename Arch , typename T >
Candidate< Arch, T >::Dm const & ska::cheetah::data::Candidate< Arch, T >::dm ( ) const

access a reference to dm.

The dispersion measure is a measure on how much interstellar electrons disperse the pulsar's signal causing lower observing frequencies to arrive later than higher observing frequencies. It express electon column density so its units are pc cm-3.

Returns
The candidate dispersion measure in pc cm-3

Definition at line 85 of file Candidate.cpp.

86 {
87  return this->_dm;
88 }

◆ dm() [2/2]

template<typename Arch , typename T >
void ska::cheetah::data::Candidate< Arch, T >::dm ( Dm  c_dm)

Set the candidate dm value.

The dispersion measure (dm) is a measure on how much interstellar electrons disperse the pulsar's signal causing lower observing frequencies to arrive later than higher observing frequencies. It express electon column density so its units are pc cm-3

Parameters
[in]dmthe candidate dispersion measure

Definition at line 91 of file Candidate.cpp.

92 {
93  this->_dm = c_dm;
94 }

◆ ident() [1/2]

template<typename Arch , typename T >
std::size_t const & ska::cheetah::data::Candidate< Arch, T >::ident ( ) const

access a reference to ident.

ident is an optional identifier label to let follow the trail of a specific candidate across different modules.

Returns
The candidate ID number.

Definition at line 123 of file Candidate.cpp.

124 {
125  return (this->_ident);
126 }

◆ ident() [2/2]

template<typename Arch , typename T >
void ska::cheetah::data::Candidate< Arch, T >::ident ( std::size_t  c_ident)

set the candidate ident value.

ident is an optional identifier label to let follow the trail of a specific candidate across different modules.

Parameters
[in]c_identthe candidate ID number

Definition at line 129 of file Candidate.cpp.

130 {
131  this->_ident = c_ident;
132 }

◆ pdot() [1/2]

template<typename Arch , typename T >
Candidate< Arch, T >::SecPerSecType const & ska::cheetah::data::Candidate< Arch, T >::pdot ( ) const

access a reference to pulse_pdot.

The pulse_pdot, or Period Derivative, is the first time derivative of the period. It has units of seconds per second. This change could be induced by a companion star or planets orbiting the pulsar.

Returns
The period derivative value in units od sec/sec

Definition at line 73 of file Candidate.cpp.

74 {
75  return this->_pulse_pdot;
76 }

◆ pdot() [2/2]

template<typename Arch , typename T >
void ska::cheetah::data::Candidate< Arch, T >::pdot ( SecPerSecType  c_pulse_pdot)

Set the candidate pulse_pdot value.

The pulse_pdot, or Period Derivative, is the first time derivative of the period. It has units of seconds per second. This change could be induced by a companion star or planets orbiting the pulsar.

Parameters
[in]c_pulse_pdotthe candidate period derivative in sec/sec

Definition at line 79 of file Candidate.cpp.

80 {
81  this->_pulse_pdot = c_pulse_pdot;
82 }

◆ period() [1/2]

template<typename Arch , typename T >
Candidate< Arch, T >::MsecTimeType const & ska::cheetah::data::Candidate< Arch, T >::period ( ) const

access a reference to pulsar period.

Returns
The candidate period in msec.

Definition at line 61 of file Candidate.cpp.

62 {
63  return this->_pulse_period;
64 }

◆ period() [2/2]

template<typename Arch, typename T>
void ska::cheetah::data::Candidate< Arch, T >::period ( MsecTimeType  c_period)

Set the candidate period.

Parameters
[in]c_periodthe candidate period in msec.

◆ sigma() [1/2]

template<typename Arch , typename T >
T const & ska::cheetah::data::Candidate< Arch, T >::sigma ( ) const

access a reference to _sigma.

sigma is the computed significance of the candidate. Here we assume the use of Gaussian equivalent significance that maps p-values to the corresponding sigma (standard deviation) that they would represent were the p-values drawn from a normal distribution of zero mean and unit variance.

Returns
The candidate signal-to-noise ratio.

Definition at line 111 of file Candidate.cpp.

112 {
113  return this->_sigma;
114 }

◆ sigma() [2/2]

template<typename Arch , typename T >
void ska::cheetah::data::Candidate< Arch, T >::sigma ( c_sigma)

Set the candidate sigma value.

sigma is the computed significance of the candidate. Here we assume the use of Gaussian equivalent significance that maps p-values to the corresponding sigma (standard deviation) that they would represent were the p-values drawn from a normal distribution of zero mean and unit variance.

Parameters
[in]c_sigmathe candidate signal-to-noise ratio

Definition at line 117 of file Candidate.cpp.

118 {
119  this->_sigma = c_sigma;
120 }

◆ width() [1/2]

template<typename Arch , typename T >
Candidate< Arch, T >::MsecTimeType const & ska::cheetah::data::Candidate< Arch, T >::width ( ) const

access a reference to width.

width is the length of the pulses as computed by FLDO module. It is expressed in milliseconds

Returns
The candidate pulse width in msec.

Definition at line 98 of file Candidate.cpp.

99 {
100  return this->_pulse_width;
101 }

◆ width() [2/2]

template<typename Arch, typename T>
void ska::cheetah::data::Candidate< Arch, T >::width ( MsecTimeType  c_width)

set the candidate width value.

width is the length of the pulses as computed by FLDO module. It is expressed in milliseconds.

Parameters
[in]c_widththe candidate pulse width in msec.

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