VariableGain.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2021 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/Polarimetry/Pulsar/VariableGain.h
10 
11 #ifndef __CalibrationVariableGain_H
12 #define __CalibrationVariableGain_H
13 
14 #include "MEAL/Gain.h"
15 #include "MEAL/ChainRule.h"
16 #include "MEAL/Complex2.h"
17 #include "MEAL/ScalarParameter.h"
18 
19 #include "Estimate.h"
20 
21 namespace Calibration {
22 
24 
28  class VariableGain : public MEAL::ChainRule<MEAL::Complex2>
29  {
30 
31  public:
32 
34  VariableGain ();
35 
37  VariableGain (const VariableGain& s);
38 
40  const VariableGain& operator = (const VariableGain& s);
41 
43  ~VariableGain ();
44 
46  Estimate<double> get_gain () const;
47 
49  void set_gain (const Estimate<double>& gain);
50 
53 
55  const MEAL::Scalar* get_gain_variation () const;
56 
57  // ///////////////////////////////////////////////////////////////////
58  //
59  // Model implementation
60  //
61  // ///////////////////////////////////////////////////////////////////
62 
64  std::string get_name () const;
65 
66  protected:
67 
70 
73 
74  private:
75 
77  void init ();
78 
79  };
80 
81 }
82 
83 #endif
84 
Physical parameterization of the instrumental response.
Definition: VariableGain.h:33
void set_gain_variation(MEAL::Scalar *)
Set the instrumental gain variation.
Definition: VariableGain.C:74
~VariableGain()
Destructor.
Definition: VariableGain.C:42
void set_gain(const Estimate< double > &gain)
Set the instrumental gain, , in calibrator flux units.
Definition: VariableGain.C:64
Estimate< double > get_gain() const
Get the instrumental gain, , in calibrator flux units.
Definition: VariableGain.C:55
VariableGain()
Default Constructor.
Definition: VariableGain.C:22
Reference::To< MEAL::Scalar > gain_variation
Scalar function used to model gain variation.
Definition: VariableGain.h:82
const VariableGain & operator=(const VariableGain &s)
Assignment Operator.
Definition: VariableGain.C:35
const Type * ptr() const
Reference::To< MEAL::Gain< MEAL::Complex2 > > gain
gain
Definition: VariableGain.h:79
Definition: SingleAxis.h:27
const MEAL::Scalar * get_gain_variation() const
Get the instrumental gain variation.
Definition: VariableGain.C:81
std::string get_name() const
Return the name of the class.
Definition: VariableGain.C:49

Generated using doxygen 1.8.17