StokesCovariance.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2006 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/MEAL/MEAL/StokesCovariance.h
10 
11 #ifndef __MEAL_StokesCovariance_H
12 #define __MEAL_StokesCovariance_H
13 
14 #include "Pauli.h"
15 #include "Reference.h"
16 
17 namespace MEAL {
18 
20  class StokesCovariance : public Reference::Able {
21 
22  public:
23 
26 
28  void set_variance (const Stokes<double>&);
29 
31  void set_transformation (const Jones<double>&);
32 
34  void set_transformation (const Matrix<4,4,double>&);
35 
37  Matrix<4,4,double> get_covariance () const;
38 
40  void set_transformation_gradient (const Jones<double>&);
41 
43  void set_transformation_gradient (const Matrix<4,4,double>&);
44 
46  Matrix<4,4,double> get_covariance_gradient () const;
47 
49  Stokes<double> get_input_variance () const;
50 
51  protected:
52 
54  Stokes<double> input;
55 
57  Jones<double> jones;
58 
60  Jones<double> jones_grad;
61 
63  bool built;
64 
66  void build();
67 
69  Matrix<4,4,double> xform;
70 
72  Matrix<4,4,double> xform_grad;
73 
74  };
75 
76 }
77 
78 #endif
Matrix< 4, 4, double > xform_grad
The Mueller matrix of the transformation gradient component.
Definition: StokesCovariance.h:82
void set_transformation(const Jones< double > &)
Set the transformation.
Definition: StokesCovariance.C:30
Propagates Stokes parameter covariances through congruence transformation.
Definition: StokesCovariance.h:25
StokesCovariance()
Default constructor.
Definition: StokesCovariance.C:11
Matrix< 4, 4, double > get_covariance() const
Get the variances of the output Stokes parameters.
Definition: StokesCovariance.C:46
Matrix< 4, 4, double > xform
The Mueller matrix of the transformation.
Definition: StokesCovariance.h:79
void build()
Computes xform_grad.
Definition: StokesCovariance.C:84
void set_transformation_gradient(const Jones< double > &)
Set the transformation gradient component.
Definition: StokesCovariance.C:56
Namespace in which all modeling and calibration related code is declared.
Definition: ExampleComplex2.h:16
Stokes< double > get_input_variance() const
Get the input variance (not transformed)
Definition: StokesCovariance.C:24
bool built
Flag set to false when xform_grad must be recomputed.
Definition: StokesCovariance.h:73
void set_variance(const Stokes< double > &)
Set the variances of the input Stokes parameters.
Definition: StokesCovariance.C:18
Matrix< 4, 4, double > get_covariance_gradient() const
Get the variances of the output Stokes parameters gradient component.
Definition: StokesCovariance.C:72
Jones< double > jones
The Jones matrix of the transformation.
Definition: StokesCovariance.h:67
Stokes< double > input
The input Stokes parameter variances.
Definition: StokesCovariance.h:64
Jones< double > jones_grad
The Jones matrix of the transformation gradient component.
Definition: StokesCovariance.h:70

Generated using doxygen 1.8.17