Calibration::Instrument Class Reference

Phenomenological description of the instrument. More...

#include <Instrument.h>

Inheritance diagram for Calibration::Instrument:
Calibration::BackendFeed Calibration::HasOrientation MEAL::ProductRule< MEAL::Complex2 > MEAL::GroupRule< T >

Public Member Functions

 Instrument ()
 Default Constructor.
 Instrument (const Instrument &s)
 Copy Constructor.
const Instrumentoperator= (const Instrument &s)
 Assignment Operator.
Instrumentclone () const
 Clone operator.
 ~Instrument ()
 Destructor.
void equal_ellipticities ()
 Model the ellipticities of both receptors using the same value.
void independent_ellipticities ()
 Model the ellipticities of the receptors using independent values.
MEAL::ScalarParameterget_ellipticities ()
 Return the single model parameter that constrains both ellipticities.
bool has_equal_ellipticities () const
 Return true if both ellipticities are constrained by a single parameter.
void equal_orientations ()
 Model the orientations of both receptors using the same value.
void independent_orientations ()
void set_cyclic (bool flag=true)
 Set cyclical limits on the model parameters.
void set_constant_orientation (bool)
 Fix the orientation of the frontend.
Estimate< double > get_orientation (unsigned ireceptor) const
 Get the orientation, $\theta$, of the specified receptor in radians.
Estimate< double > get_ellipticity (unsigned ireceptor) const
 Get the ellipticity, $\chi$, of the specified receptor in radians.
unsigned get_ellipticity_index (unsigned receptor) const
 Get the index of the ellipticity parameter for the specified receptor.
void set_orientation (unsigned ireceptor, const Estimate< double > &theta)
 Set the orientation, $\theta$, of the specified receptor in radians.
void set_ellipticity (unsigned ireceptor, const Estimate< double > &chi)
 Set the ellipticity, $\chi$, of the specified receptor in radians.
const Feedget_feed () const
 Provide access to the Feed model.
Feedget_feed ()
Estimate< double > get_orientation () const override
 Get the rotation of the feed about the line of sight, in radians.
void offset_orientation (double delta_rad) override
 Offset the rotation of the feed about the line of sight by delta, in radians.
std::string get_name () const
 Return the name of the class.
Public Member Functions inherited from Calibration::BackendFeed
 BackendFeed ()
 Default constructor.
 BackendFeed (const BackendFeed &s)
 Copy Constructor.
const BackendFeedoperator= (const BackendFeed &s)
 Assignment Operator.
 ~BackendFeed ()
 Destructor.
const VariableBackendget_backend () const
 Provide access to the backend model.
VariableBackendget_backend ()
const MEAL::Complex2get_frontend () const
 Provide access to the frontend model.
MEAL::Complex2get_frontend ()
Public Member Functions inherited from MEAL::ProductRule< MEAL::Complex2 >
void operator*= (T *model)
std::string get_name () const
Public Member Functions inherited from MEAL::GroupRule< T >
GroupRuleoperator= (const GroupRule &meta)
void add_model (T *model)
void remove_model (T *model)
T * get_model (unsigned i)
unsigned get_nmodel () const
void clear ()
void parse (const std::string &text)

Protected Attributes

Reference::To< Feedfeed
 Feed model: $\theta_0-1$ and $\chi_0-1$.
Reference::To< MEAL::ChainRule< MEAL::Complex2 > > feed_chain
 ChainRule used to bind Feed parameters.
Reference::To< MEAL::ScalarParameterellipticities
 ScalarParameter used to bind ellipticities.
Reference::To< MEAL::ScalarParameterorientations
 ScalarParameter used to bind orientations.

Additional Inherited Members

Protected Member Functions inherited from Calibration::BackendFeed
void set_frontend (MEAL::Complex2 *)
Protected Member Functions inherited from MEAL::ProductRule< MEAL::Complex2 >
const Result get_identity () const
void operate (Result &total, const Result &element)
const Result partial (const Result &element) const
Protected Member Functions inherited from MEAL::GroupRule< T >
void print_parameters (std::string &text, const std::string &sep) const
void calculate (Result &result, std::vector< Result > *grad)

Detailed Description

Phenomenological description of the instrument.

The transformation is represented by the product of a SingleAxis transformation and Feed transformation.

Member Function Documentation

◆ get_ellipticity()

Estimate< double > Calibration::Instrument::get_ellipticity ( unsigned ireceptor) const

Get the ellipticity, $\chi$, of the specified receptor in radians.

Get the ellipticity.

References ellipticities, and feed.

Referenced by Pulsar::InstrumentInfo::get_param_feed().

◆ get_orientation() [1/2]

Estimate< double > Calibration::Instrument::get_orientation ( ) const
overridevirtual

Get the rotation of the feed about the line of sight, in radians.

Implements Calibration::HasOrientation.

References feed.

◆ get_orientation() [2/2]

Estimate< double > Calibration::Instrument::get_orientation ( unsigned ireceptor) const

Get the orientation, $\theta$, of the specified receptor in radians.

Get the orientation.

References feed, and orientations.

Referenced by Pulsar::InstrumentInfo::get_param_feed(), and Pulsar::InstrumentInfo::InstrumentInfo().

◆ offset_orientation()

void Calibration::Instrument::offset_orientation ( double delta_rad)
overridevirtual

Offset the rotation of the feed about the line of sight by delta, in radians.

Implements Calibration::HasOrientation.

References feed.

◆ operator=()

const Calibration::Instrument & Calibration::Instrument::operator= ( const Instrument & s)

Assignment Operator.

Equality Operator.

References feed, Instrument(), and Calibration::BackendFeed::operator=().

◆ set_constant_orientation()

void Calibration::Instrument::set_constant_orientation ( bool flag)
virtual

Fix the orientation of the frontend.

Implements Calibration::BackendFeed.

References feed.

◆ set_cyclic()

void Calibration::Instrument::set_cyclic ( bool flag = true)
virtual

Set cyclical limits on the model parameters.

Reimplemented from Calibration::BackendFeed.

References feed, and Calibration::BackendFeed::set_cyclic().

Referenced by Pulsar::PulsarCalibrator::new_transformation().

◆ set_ellipticity()

void Calibration::Instrument::set_ellipticity ( unsigned ireceptor,
const Estimate< double > & chi )

Set the ellipticity, $\chi$, of the specified receptor in radians.

Set the ellipticity.

References ellipticities, and feed.

◆ set_orientation()

void Calibration::Instrument::set_orientation ( unsigned ireceptor,
const Estimate< double > & theta )

Set the orientation, $\theta$, of the specified receptor in radians.

Set the orientation.

References feed, and orientations.

Referenced by Pulsar::SimPolnTiming::one_step().


The documentation for this class was generated from the following files:

Generated using doxygen 1.14.0