Phase-coherent dispersion removal frequency response function. More...

#include <Dedispersion.h>

Inherits dsp::PlasmaResponse.

Public Member Functions

 Dedispersion ()
 Default constructor.
 
 ~Dedispersion ()
 Default constructor.
 
void prepare (const Observation *input, unsigned channels)
 Set up and calculate the impulse_pos and impulse_neg attributes.
 
virtual void mark (Observation *output)
 Set the dispersion measure attribute in the output Observation.
 
void set_dispersion_measure (double dm)
 Set the dispersion measure in ${\rm pc\,cm}^{-3}$.
 
double get_dispersion_measure () const
 Get the dispersion measure in ${\rm pc\,cm}^{-3}$.
 
double delay_time (double freq) const override
 Return the dispersive delay for the given frequency.
 
void set_sample_delay (SampleDelay *)
 Correct fractional inter-channel delay given the integer sample inter-channel delay.
 
SampleDelay * get_sample_delay ()
 Get the integer sample inter-channel delay.
 
virtual void build (const Observation *input=0)
 Build the frequency response kernel.
 
void build (std::vector< float > &phases, unsigned npts, unsigned nchan)
 Compute the phases for a dedispersion kernel.
 
void set_build_delays (bool delay=true)
 Build delays in microseconds instead of phases.
 

Static Public Attributes

static const double dm_dispersion = 2.41e-4
 Conversion factor between dispersion measure, DM, and dispersion, D. More...
 

Protected Member Functions

void build (unsigned ndat, unsigned nchan)
 
void build_setup (double chan_freq)
 Set up for the specified channel.
 
double build_compute (double chan_freq, double freq)
 Return the phase of the kernel response.
 

Protected Attributes

double dispersion_measure = 0.0
 The dispersion measure (DM)
 
Reference::To< SampleDelay > sample_delay
 Used to compute inter-channel fractional sample delay.
 
bool build_delays = false
 Build method returns delay in microseconds instead of phase.
 
double interchannel_fractional_sample_delay = 0.0
 

Friends

class PlasmaResponse
 

Detailed Description

Phase-coherent dispersion removal frequency response function.

Member Data Documentation

◆ dm_dispersion

const double dsp::Dedispersion::dm_dispersion = 2.41e-4
static

Conversion factor between dispersion measure, DM, and dispersion, D.

Although the value:

$ DM\,({\rm pc\,cm^{-3}})=2.410331(2)\times10^{-4}D\,({\rm s\,MHz^{2}}) $

has been derived from "fundamental and primary physical and astronomical constants" (section 3 of Backer, Hama, van Hook and Foster 1993. ApJ 404, 636-642), the rounded value is in standard use by pulsar astronomers (page 129 of Manchester and Taylor 1977).


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

Generated using doxygen 1.8.17