BoostShiftAnalysis.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2010 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/Polarimetry/Pulsar/BoostShiftAnalysis.h
10 
11 #ifndef __Pulsar_BoostShiftAnalysis_h
12 #define __Pulsar_BoostShiftAnalysis_h
13 
14 #include "Pulsar/PolnProfile.h"
15 
16 namespace Pulsar {
17 
19  class BoostShiftAnalysis {
20 
21  public:
22 
24  static bool verbose;
25 
28 
30  void set_profile (const PolnProfile*);
31 
33 
34  double delvarphi_delb (unsigned k) const;
35 
38 
40 
41  double delvarphi_delbeta () const;
42 
43  protected:
44 
47 
49  unsigned max_harmonic;
50 
52  std::complex<double> delS_delb (unsigned k, unsigned m) const;
53 
55  double S0sq (unsigned m) const;
56 
57  };
58 }
59 
60 #endif
Signal::State get_state() const
Get the State of the poln profile.
Definition: PolnProfile.h:94
unsigned max_harmonic
The maximum harmonic to include in the analysis.
Definition: BoostShiftAnalysis.h:59
void find(const Profile *, double rms)
Find the last significant bin.
Definition: LastSignificant.C:58
Any quantity recorded as a function of pulse phase.
Definition: Profile.h:45
std::complex< double > delS_delb(unsigned k, unsigned m) const
Partial derivative of S_m with respect to b_k (beta=0)
Definition: BoostShiftAnalysis.C:61
double delvarphi_delb(unsigned k) const
Partial derivative of varphi with respect to b_k (beta=0)
Definition: BoostShiftAnalysis.C:86
double S0sq(unsigned m) const
Magnitude squared of S0 in mth harmonic.
Definition: BoostShiftAnalysis.C:77
virtual Profile * clone() const
returns a pointer to a new copy of self
Definition: Profile.C:124
BoostShiftAnalysis()
Default constructor.
Definition: BoostShiftAnalysis.h:37
Find the last significant harmonic in a PSD.
Definition: LastSignificant.h:29
Vector< 3, double > dotvarphi() const
Three-vector of partial derivatives of varphi with respect to b_k.
Definition: BoostShiftAnalysis.C:103
Profile * fourier_transform(const Profile *, FTransform::Plan *=0)
Return the forward Fourier transform of the input Profile.
Definition: Fourier.C:41
Polarimetric pulse profile transformations and derivations.
Definition: PolnProfile.h:34
PhaseWeight * baseline(const Profile *)
Returns a new PhaseWeight instance.
Definition: BaselineEstimator.C:73
Reference::To< PolnProfile > fourier
The fourier transform of the polarization profile.
Definition: BoostShiftAnalysis.h:56
Finds a baseline that contains gaussian white noise.
Definition: ExponentialBaseline.h:24
void detect(Profile *input)
Square-law detect the input complex-valued Profile.
Definition: Fourier.C:103
Defines the PSRCHIVE library.
Definition: CalSource.h:17
unsigned get() const
Get the last signficant bin.
Definition: LastSignificant.C:46
void set_profile(const PolnProfile *)
Set the maximum harmonic used when optimizing.
Definition: BoostShiftAnalysis.C:20
double delvarphi_delbeta() const
Partial derivative of varphi with respect to beta.
Definition: BoostShiftAnalysis.C:111
static bool verbose
Verbosity flag.
Definition: BoostShiftAnalysis.h:34

Generated using doxygen 1.8.17