ObservationUncertainty.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/Polarimetry/Pulsar/ObservationUncertainty.h
10
11#ifndef __Calibration_ObservationUncertainty_H
12#define __Calibration_ObservationUncertainty_H
13
14#include "Pulsar/CoherencyMeasurement.h"
15
16namespace Calibration {
17
20 {
21
22 public:
23
26
28 ObservationUncertainty (const Stokes<double>& variance);
29
32
34 virtual void add (const Uncertainty*);
35
37 virtual void set_variance (const Stokes<double>&);
38
40 virtual void set_variance (const Stokes< std::complex<double> >&);
41
43 virtual double get_weighted_norm (const Jones<double>&) const;
44
47
49 Stokes<std::complex<double>> get_weighted_components (const Jones<double>&) const;
50
52 Stokes< std::complex<double> > get_variance () const;
53
55 void scale (double);
56
57 protected:
58
60 Stokes< std::complex<double> > inv_variance;
61
62 };
63
64}
65
66#endif
Estimates the uncertainty of a CoherencyMeasurement.
Definition CoherencyMeasurement.h:110
Combines the uncertainty of the template and the observation.
Definition ObservationUncertainty.h:20
virtual Jones< double > get_weighted_conjugate(const Jones< double > &) const
Given a coherency matrix, return the weighted conjugate matrix.
Definition ObservationUncertainty.C:36
Stokes< std::complex< double > > get_variance() const
Return the variance of each Stokes parameter.
Definition ObservationUncertainty.C:137
Stokes< std::complex< double > > inv_variance
The inverse of the observation variance.
Definition ObservationUncertainty.h:60
virtual void set_variance(const Stokes< double > &)
Set the uncertainty of the observation.
Definition ObservationUncertainty.C:116
ObservationUncertainty * clone() const
Return a copy constructed clone of self.
Definition ObservationUncertainty.C:164
virtual void add(const Uncertainty *)
Add the uncertainty of another instance.
Definition ObservationUncertainty.C:183
void scale(double)
Scale the variance by the square of a scalar.
Definition ObservationUncertainty.C:214
virtual double get_weighted_norm(const Jones< double > &) const
Given a coherency matrix, return the weighted norm.
Definition ObservationUncertainty.C:18
Stokes< std::complex< double > > get_weighted_components(const Jones< double > &) const
Given a coherency matrix, return the weighted Stokes parameters.
Definition ObservationUncertainty.C:67
ObservationUncertainty()
Default constructor.
Definition ObservationUncertainty.h:25

Generated using doxygen 1.14.0