Britton2000.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2009 - 2016 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/More/Polarimetry/Pulsar/Britton2000.h
10
11#ifndef __CalibrationBritton2000_H
12#define __CalibrationBritton2000_H
13
14#include "Pulsar/BackendFeed.h"
15#include "Pulsar/HasOrientation.h"
16
17namespace Calibration
18{
19 class Feed;
20
22
31 class Britton2000 : public BackendFeed, public HasOrientation
32 {
33
34 public:
35
37 Britton2000 (bool isolate_degeneracy = false);
38
40 Britton2000 (const Britton2000& s);
41
43 const Britton2000& operator = (const Britton2000& s);
44
46 Britton2000* clone () const;
47
49 ~Britton2000 ();
50
52 void equal_ellipticities ();
53
55 void equal_orientations ();
56
58 void set_constant_orientation (bool);
59 bool get_constant_orientation () const;
60
61 const MEAL::Complex2* get_frontend () const;
62
63 bool get_degeneracy_isolated() const { return isolate_degeneracy; }
64
65 // ///////////////////////////////////////////////////////////////////
66 //
67 // HasOrientation implementation
68 //
69 // ///////////////////////////////////////////////////////////////////
70
72 Estimate<double> get_orientation () const override;
73
75 void offset_orientation (double delta_rad) override;
76
77 // ///////////////////////////////////////////////////////////////////
78 //
79 // Model implementation
80 //
81 // ///////////////////////////////////////////////////////////////////
82
84 std::string get_name () const;
85
86 protected:
87
88 class Feed;
89
92 bool isolate_degeneracy;
93
94 private:
95
97 void init (bool iso);
98
99 };
100
101}
102
103#endif
104
const MEAL::Complex2 * get_frontend() const
Provide access to the frontend model.
Definition BackendFeed.h:64
BackendFeed()
Default constructor.
Definition BackendFeed.C:26
Britton2000 * clone() const
Clone operator.
Definition Britton2000.C:96
~Britton2000()
Destructor.
Definition Britton2000.C:101
Reference::To< Feed > feed
Feed model.
Definition Britton2000.h:91
void set_constant_orientation(bool)
Fix the orientation of the frontend.
Definition Britton2000.C:138
Britton2000(bool isolate_degeneracy=false)
Default Constructor.
Definition Britton2000.C:73
void equal_ellipticities()
Model the ellipticities of both receptors using the same value.
Definition Britton2000.C:113
const Britton2000 & operator=(const Britton2000 &s)
Assignment Operator.
Definition Britton2000.C:86
Estimate< double > get_orientation() const override
Get the rotation of the feed about the line of sight, in radians.
Definition Britton2000.C:151
std::string get_name() const
Return the name of the class.
Definition Britton2000.C:108
void offset_orientation(double delta_rad) override
Offset the rotation of the feed about the line of sight by delta, in radians.
Definition Britton2000.C:156
void equal_orientations()
Model the orientations of both receptors using the same value.
Definition Britton2000.C:127
Phenomenological description of the receiver feed.
Definition Feed.h:27
Interface to transformations that have a feed rotation that can be offset.
Definition HasOrientation.h:20

Generated using doxygen 1.14.0