ModeCoherency.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2011 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/More/MEAL/MEAL/ModeCoherency.h
10
11#ifndef __MEAL_ModeCoherency_H
12#define __MEAL_ModeCoherency_H
13
14#include "MEAL/Coherency.h"
15#include "MEAL/Wrap.h"
16#include "Vector.h"
17
18namespace MEAL {
19
20 class Scalar;
21 class ScalarParameter;
22 class BoostUnion;
23 class UnitTangent;
24
26
33 class ModeCoherency : public Wrap<Coherency>
34 {
35
36 public:
37
40
43
46
49
52
54 void set_axis (UnitTangent*);
55
57 Scalar* get_beta ();
58
61
63 virtual void set_stokes (const Stokes<double>& stokes);
64
66 virtual void set_stokes (const Stokes< Estimate<double> >& stokes);
67
69 virtual Stokes< Estimate<double> > get_stokes () const;
70
71 // ///////////////////////////////////////////////////////////////////
72 //
73 // Function implementation
74 //
75 // ///////////////////////////////////////////////////////////////////
76
78 std::string get_name () const;
79
80 protected:
81
83 void init ();
84
89
91 Reference::To<Scalar> intensity;
92 };
93
94}
95
96#endif
Represents a boost (Hermitian, dichroic) transformation.
Definition BoostUnion.h:29
virtual void copy(const Function *model)
Does the work for operator =.
Definition Function.C:58
ModeCoherency()
Default constructor.
Definition ModeCoherency.C:48
ModeCoherency & operator=(const ModeCoherency &copy)
Assignment operator.
Definition ModeCoherency.C:62
virtual Stokes< Estimate< double > > get_stokes() const
Get the Stokes parameters and their estimated errors.
Definition ModeCoherency.C:158
Scalar * get_beta()
Get beta.
Definition ModeCoherency.C:99
UnitTangent * get_axis()
Get the model of the unit vector.
Definition ModeCoherency.C:86
std::string get_name() const
Return the name of the class.
Definition ModeCoherency.C:80
~ModeCoherency()
Destructor.
Definition ModeCoherency.C:75
Scalar * get_intensity()
Get the intensity.
Definition ModeCoherency.C:105
void init()
Works for the constructors.
Definition ModeCoherency.C:24
void set_axis(UnitTangent *)
Set the model of the unit vector.
Definition ModeCoherency.C:92
virtual void set_stokes(const Stokes< double > &stokes)
Set the Stokes parameters of the model.
Definition ModeCoherency.C:111
Represents a scalar parameter, .
Definition ScalarParameter.h:19
Pure virtual base class of scalar functions.
Definition Scalar.h:20
Represents a unit vector in three-dimensional space.
Definition UnitTangent.h:42
Wrap another function.
Definition Wrap.h:24
Namespace in which all modeling and calibration related code is declared.
Definition ExampleComplex2.h:16

Generated using doxygen 1.14.0