SingleAxisSolver.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2004 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/Polarimetry/Pulsar/SingleAxisSolver.h
10 
11 #ifndef __Calibration_SingleAxisSolver_H
12 #define __Calibration_SingleAxisSolver_H
13 
14 #include "Quaternion.h"
15 #include "Stokes.h"
16 #include "Estimate.h"
17 #include "MEAL/ScalarMath.h"
18 
19 namespace Calibration {
20 
21  class SingleAxis;
22 
24  class SingleAxisSolver : public Reference::Able {
25 
26  public:
27 
30 
33 
36 
39 
41  void set_input (const Stokes< Estimate<double> >& stokes);
42 
44  void set_output (const Stokes< Estimate<double> >& stokes);
45 
47  void solve (SingleAxis* model);
48 
49  protected:
50 
53 
56 
59 
62 
65 
68 
69  private:
70 
72  void init ();
73 
74  };
75 
76 }
77 
78 #endif
~SingleAxisSolver()
Destructor.
Definition: SingleAxisSolver.C:28
Derives SingleAxis parameters from input and output states.
Definition: SingleAxisSolver.h:29
SingleAxisSolver()
Default constructor.
Definition: SingleAxisSolver.C:18
const ScalarMath sqrt(const ScalarMath &x)
MEAL::ScalarMath gain
The gain solution.
Definition: SingleAxisSolver.h:66
Quaternion< MEAL::ScalarMath, Hermitian > output
The output Stokes parameters.
Definition: SingleAxisSolver.h:60
Vector< 3, MEAL::ScalarMath > axis
The Axis about which the rotations take place.
Definition: SingleAxisSolver.h:63
MEAL::ScalarMath diff_phase
The differential phase solution.
Definition: SingleAxisSolver.h:72
static bool verbose
Instrumental gain, differential gain, and differential phase.
Definition: SingleAxis.h:38
const ScalarMath atanh(const ScalarMath &x)
void solve(SingleAxis *model)
Set the SingleAxis parameters with the current solution.
Definition: SingleAxisSolver.C:75
MEAL::ScalarMath diff_gain
The differential gain solution.
Definition: SingleAxisSolver.h:69
void set_output(const Stokes< Estimate< double > > &stokes)
Set the input Stokes parameters.
Definition: SingleAxisSolver.C:59
void set_input(const Stokes< Estimate< double > > &stokes)
Set the input Stokes parameters.
Definition: SingleAxisSolver.C:42
const ScalarMath atan2(const ScalarMath &y, const ScalarMath &x)
Quaternion< MEAL::ScalarMath, Hermitian > input
The input Stokes parameters.
Definition: SingleAxisSolver.h:57
SingleAxisSolver & operator=(const SingleAxisSolver &)
Assignment operator.
Definition: SingleAxisSolver.C:34

Generated using doxygen 1.8.17