SingleAxisCalibrator.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2003 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/Polarimetry/Pulsar/SingleAxisCalibrator.h
10 
11 #ifndef __Pulsar_SingleAxisCalibrator_H
12 #define __Pulsar_SingleAxisCalibrator_H
13 
14 #include "Pulsar/ReferenceCalibrator.h"
15 #include "Pulsar/SingleAxis.h"
16 #include "Pulsar/SingleAxisSolver.h"
17 
18 namespace Pulsar {
19 
21  class SingleAxisCalibrator : public ReferenceCalibrator {
22 
23  public:
24 
26  SingleAxisCalibrator (const Archive* archive);
27 
30 
32  SingleAxisCalibrator* clone () const;
33 
36 
38  class Info : public PolnCalibrator::Info {
39 
40  public:
41 
43  Info (const PolnCalibrator* calibrator);
44 
46  std::string get_title () const;
47 
49  unsigned get_nclass () const;
50 
52  std::string get_name (unsigned iclass) const;
53 
55  unsigned get_nparam (unsigned iclass) const;
56 
57  Estimate<float> get_param (unsigned ichan,
58  unsigned iclass,
59  unsigned iparam) const;
60 
61  };
62 
64  Info* get_Info () const;
65 
66  protected:
67 
68  // ///////////////////////////////////////////////////////////////////
69  //
70  // Pulsar::ReferenceCalibrator implementation
71  //
72  // ///////////////////////////////////////////////////////////////////
73 
75  MEAL::Complex2* solve (const std::vector<Estimate<double> >& hi,
76  const std::vector<Estimate<double> >& lo);
77 
80 
81  };
82 
83 }
84 
85 #endif
unsigned get_nparam(unsigned iclass) const
Return the number of parameters in the specified class.
Definition: SingleAxisCalibrator.C:110
Info(const PolnCalibrator *calibrator)
Constructor.
Definition: SingleAxisCalibrator.C:78
SingleAxisCalibrator * clone() const
Clone operator.
Definition: SingleAxisCalibrator.C:32
~SingleAxisCalibrator()
Destructor.
Definition: SingleAxisCalibrator.C:37
Derives SingleAxis parameters from input and output states.
Definition: SingleAxisSolver.h:29
The primary interface to pulsar observational data.
Definition: Archive.h:45
Communicates SingleAxisCalibrator parameters.
Definition: SingleAxisCalibrator.h:48
Type * release()
Reference::To< Type > type
The type of the Calibrator.
Definition: Calibrator.h:115
static unsigned verbose
Verbosity level.
Definition: Calibrator.h:40
SingleAxisCalibrator(const Archive *archive)
Construct from an single PolnCal Pulsar::Archive.
Definition: SingleAxisCalibrator.C:18
Instrumental gain, differential gain, and differential phase.
Definition: SingleAxis.h:38
std::string get_title() const
Return the title.
Definition: SingleAxisCalibrator.C:83
Info * get_Info() const
Return the SingleAxisCalibrator information.
Definition: SingleAxisCalibrator.C:142
static Type * factory(const std::string &name)
Construct a new instance of Calibrator::Type, based on name.
Definition: CalibratorType.C:12
Calibrators derived from reference source observations.
Definition: ReferenceCalibrator.h:31
std::string get_name(unsigned iclass) const
Return the name of the specified class.
Definition: SingleAxisCalibrator.C:95
Reference::To< Calibration::SingleAxisSolver > solver
Optimization for SingleAxis solve.
Definition: SingleAxisCalibrator.h:89
Polarimetric calibrators.
Definition: PolnCalibrator.h:41
Estimate< float > get_param(unsigned ichan, unsigned iclass, unsigned iparam) const
Return the estimate of the specified parameter.
Definition: SingleAxisCalibrator.C:118
Defines the PSRCHIVE library.
Definition: CalSource.h:17
Represents the system as a Calibration::SingleAxis.
Definition: SingleAxisCalibrator.h:26
Stokes< Estimate< double > > reference_source
The Stokes parameters of the reference source.
Definition: ReferenceCalibrator.h:102
bool source_set
Flag raised when the reference_source attribute is set.
Definition: ReferenceCalibrator.h:108
MEAL::Complex2 * solve(const std::vector< Estimate< double > > &hi, const std::vector< Estimate< double > > &lo)
Return a new Calibration::SingleAxis instance.
Definition: SingleAxisCalibrator.C:45
unsigned get_nclass() const
Return the number of parameter classes.
Definition: SingleAxisCalibrator.C:89

Generated using doxygen 1.8.17