Boost1.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2004 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/MEAL/MEAL/Boost1.h
10 
11 #ifndef __MEAL_Boost1_H
12 #define __MEAL_Boost1_H
13 
14 #include "MEAL/Complex2.h"
15 #include "Vector.h"
16 
17 namespace MEAL {
18 
20 
22  class Boost1 : public Complex2 {
23 
24  public:
25 
27  Boost1 (const Vector<3,double>& axis);
28 
30  Boost1 (const Boost1&);
31 
33  Boost1* clone () const;
34 
36  void set_axis (const Vector<3,double>& axis);
37 
39  Vector<3,double> get_axis () const;
40 
42  void set_beta (const Estimate<double>& beta);
43 
45  Estimate<double> get_beta () const;
46 
48  void set_param_name (const std::string& name);
49 
51  void set_param_description (const std::string& name);
52 
53  // ///////////////////////////////////////////////////////////////////
54  //
55  // Function implementation
56  //
57  // ///////////////////////////////////////////////////////////////////
58 
60  std::string get_name () const;
61 
63  void parse (const std::string& line);
64 
66  void print (std::string& text) const;
67 
68  protected:
69 
71  Vector<3,double> axis;
72 
74  void calculate (Jones<double>& result, std::vector<Jones<double> >*);
75 
76  void init ();
77  };
78 
79 }
80 
81 #endif
const ScalarMath sinh(const ScalarMath &x)
Return a ScalarMath instance representing sinh(x)
Definition: ScalarMath.C:184
Abstract base class implements parameter storage and access.
Definition: OneParameter.h:26
Vector< 3, double > axis
The axis along which the boost occurs.
Definition: Boost1.h:81
void set_description(const std::string &_description)
Set the description of the parameter.
Definition: OneParameter.h:66
void set_axis(const Vector< 3, double > &axis)
Set the axis along which the boost occurs.
Definition: Boost1.C:58
Represents a boost (Hermitian, dichroic) transformation.
Definition: Boost1.h:27
Estimate< double > get_beta() const
Get the boost parameter, beta.
Definition: Boost1.C:75
Boost1 * clone() const
Clone operator.
Definition: Boost1.C:33
void set_name(const std::string &_name)
Set the name of the parameter.
Definition: OneParameter.h:54
const ScalarMath sqrt(const ScalarMath &x)
Return a ScalarMath instance representing x^.5.
Definition: ScalarMath.C:151
void print(std::string &text) const
Print the values of model parameters and fit flags to a string.
Definition: Boost1.C:135
void parse(const std::string &line)
Parse the values of model parameters and fit flags from a string.
Definition: Boost1.C:111
Namespace in which all modeling and calibration related code is declared.
Definition: ExampleComplex2.h:16
const ScalarMath cosh(const ScalarMath &x)
Return a ScalarMath instance representing cosh(x)
Definition: ScalarMath.C:192
void set_param_name(const std::string &name)
Set the name of the parameter.
Definition: Boost1.C:38
Vector< 3, double > get_axis() const
Get the unit-vector along which the boost occurs.
Definition: Boost1.C:65
void calculate(Jones< double > &result, std::vector< Jones< double > > *)
Calculate the Jones matrix and its gradient.
Definition: Boost1.C:81
Boost1(const Vector< 3, double > &axis)
Construct with a fixed axis.
Definition: Boost1.C:20
void set_beta(const Estimate< double > &beta)
Set the boost parameter, beta.
Definition: Boost1.C:70
void set_param_description(const std::string &name)
Set the description of the parameter.
Definition: Boost1.C:45
std::string get_name() const
Return the name of the class.
Definition: Boost1.C:53

Generated using doxygen 1.8.17