VariableBackend.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/VariableBackend.h
10 
11 #ifndef __CalibrationVariableBackend_H
12 #define __CalibrationVariableBackend_H
13 
14 #include "MEAL/ChainRule.h"
15 #include "MEAL/Complex2.h"
16 #include "MEAL/ScalarParameter.h"
17 
18 #include "Estimate.h"
19 #include "Stokes.h"
20 
21 namespace Calibration {
22 
23  class SingleAxis;
24 
26 
30  class VariableBackend : public MEAL::ChainRule<MEAL::Complex2>
31  {
32 
33  public:
34 
36  VariableBackend ();
37 
40 
43 
46 
48  VariableBackend* clone () const;
49 
51  void set_cyclic (bool flag = true);
52 
54  Estimate<double> get_gain () const;
55 
58 
61 
63  void set_gain (const Estimate<double>& gain);
64 
66  void set_diff_gain (const Estimate<double>& gamma);
67 
69  void set_diff_phase (const Estimate<double>& phi);
70 
72  const SingleAxis* get_backend () const;
73  SingleAxis* get_backend ();
74 
77 
80 
83 
85  const MEAL::Scalar* get_gain_variation () const;
86 
88  const MEAL::Scalar* get_diff_gain_variation () const;
89 
91  const MEAL::Scalar* get_diff_phase_variation () const;
92 
93  // ///////////////////////////////////////////////////////////////////
94  //
95  // Model implementation
96  //
97  // ///////////////////////////////////////////////////////////////////
98 
100  std::string get_name () const;
101 
102  protected:
103 
106 
109 
112 
115 
116  private:
117 
119  void init ();
120 
121  };
122 
123 }
124 
125 #endif
126 
Calibrator
Definition: Integration.h:429
static bool no_amps
When true, no memory is allocated for amps.
Definition: ProfileAmps.h:38
Reference::To< MEAL::Scalar > diff_gain_variation
Scalar function used to model differential gain variation.
Definition: VariableBackend.h:116
Stores information about the instrument backend.
Definition: Backend.h:26
const SingleAxis * get_backend() const
Provide access to the SingleAxis model.
Definition: VariableBackend.C:127
const MEAL::Scalar * get_diff_phase_variation() const
Get the differential phase variation.
Definition: VariableBackend.C:209
Reference::To< MEAL::Scalar > gain_variation
Scalar function used to model gain variation.
Definition: VariableBackend.h:113
Stores information about the tape on which the data were recorded.
Definition: TapeInfo.h:24
Instrumental passband (or bandpass)
Definition: Passband.h:25
Estimate< double > get_gain() const
Get the instrumental gain, , in calibrator flux units.
Definition: VariableBackend.C:71
Tracking
Different modes of feed rotational tracking.
Definition: Receiver.h:70
void set_diff_phase_variation(MEAL::Scalar *)
Set the differential phase variation.
Definition: VariableBackend.C:176
The primary interface to pulsar observational data.
Definition: Archive.h:45
Reference::To< SingleAxis > backend
SingleAxis model: , , and .
Definition: VariableBackend.h:110
Contains information about the receiver and receiver platform.
Definition: Receiver.h:28
static void set_verbosity(unsigned level)
Set the verbosity level (0 to 3)
Definition: Archive_verbose.C:19
char code(const std::string &telescope_name)
Stores Parkes Wideband Correlator parameters.
Definition: WidebandCorrelator.h:27
VariableBackend * clone() const
Clone operator.
Definition: VariableBackend.C:52
Stores PSRFITS header extensions.
Definition: FITSHdrExtension.h:25
Type * get() const
Reference::To< MEAL::Scalar > diff_phase_variation
Scalar function used to model differential phase variation.
Definition: VariableBackend.h:119
International Terrestrial Reference Frame Extension.
Definition: ITRFExtension.h:27
const MEAL::Scalar * get_gain_variation() const
Get the instrumental gain variation.
Definition: VariableBackend.C:197
Estimate< double > get_diff_phase() const
Get the differential phase, , in radians.
Definition: VariableBackend.C:89
Instrumental gain, differential gain, and differential phase.
Definition: SingleAxis.h:38
static bool very_verbose
const MEAL::Scalar * get_diff_gain_variation() const
Get the differential gain variation.
Definition: VariableBackend.C:203
Stores PSRFITS SUBINT header parameters.
Definition: FITSSUBHdrExtension.h:28
Stores PolnCalibrator parameters in an Archive instance.
Definition: PolnCalibratorExtension.h:28
Stores digitizer histograms.
Definition: DigitiserCounts.h:25
Observation Information Extension.
Definition: ObsExtension.h:29
Angle get_feed_angle() const
Get the Feed angle at subint centre.
Definition: Pointing.C:136
Stores digitizer statistics.
Definition: DigitiserStatistics.h:25
void set_gain(const Estimate< double > &gain)
Set the instrumental gain, , in calibrator flux units.
Definition: VariableBackend.C:98
virtual MJD get_epoch() const
Get the reference epoch of the calibration experiment.
Definition: CalibratorExtension.C:58
bool verbose
Definition: timer++.C:25
Flux Calibrator Extension.
Definition: FluxCalibratorExtension.h:28
void set_cyclic(bool flag=true)
Set cyclical bounds on the differential phase.
Definition: VariableBackend.C:64
void set_diff_gain(const Estimate< double > &gamma)
Set the differential gain, , in hyperbolic radians.
Definition: VariableBackend.C:108
double get_scale(size_t nfft, type t)
Stores Calibrator parameters in an Archive.
Definition: CalibratorExtension.h:27
Estimate< double > get_diff_gain() const
Get the differential gain, , in hyperbolic radians.
Definition: VariableBackend.C:80
void set_diff_phase(const Estimate< double > &phi)
Set the differential phase, , in radians.
Definition: VariableBackend.C:118
const Type * ptr() const
void set_diff_gain_variation(MEAL::Scalar *)
Set the differential gain variation.
Definition: VariableBackend.C:153
Auxiliary cold plasma dispersion and birefringence corrections.
Definition: AuxColdPlasma.h:26
const std::string get_message() const
std::string get_name() const
Return the name of the class.
Definition: VariableBackend.C:58
Defines the PSRCHIVE library.
Definition: CalSource.h:17
std::string get_name() const
Return the name of the class.
Definition: SingleAxis.C:78
Physical parameterization of the instrumental response.
Definition: VariableBackend.h:35
Stores information about the reference source (ATNF)
Definition: CalInfoExtension.h:28
const VariableBackend & operator=(const VariableBackend &s)
Assignment Operator.
Definition: VariableBackend.C:38
void set_gain_variation(MEAL::Scalar *)
Set the instrumental gain variation.
Definition: VariableBackend.C:138
VariableBackend()
Default Constructor.
Definition: VariableBackend.C:25
~VariableBackend()
Destructor.
Definition: VariableBackend.C:45
Telescope pointing parameters recorded during the observation.
Definition: Pointing.h:27

Generated using doxygen 1.8.17