laura is hosted by Hepforge, IPPP Durham
Laura++  v1r0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauMagPhaseCPCoeffSet.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2011 - 2013.
3 // Distributed under the Boost Software License, Version 1.0.
4 // (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 // Authors:
7 // Thomas Latham
8 // John Back
9 // Paul Harrison
10 
25 #ifndef LAU_MAGPHASECP_COEFF_SET
26 #define LAU_MAGPHASECP_COEFF_SET
27 
28 #include <iosfwd>
29 #include <vector>
30 
31 #include "Rtypes.h"
32 
33 #include "LauAbsCoeffSet.hh"
34 #include "LauParameter.hh"
35 
36 class LauComplex;
37 
38 
40 
41  public:
43 
54  LauMagPhaseCPCoeffSet(const TString& compName, Double_t mag, Double_t phase, Double_t magBar, Double_t phaseBar,
55  Bool_t magFixed, Bool_t phaseFixed, Bool_t magBarFixed, Bool_t phaseBarFixed);
56 
59 
61 
64  virtual std::vector<LauParameter*> getParameters();
65 
67 
70  virtual void printTableHeading(std::ostream& stream);
71 
73 
76  virtual void printTableRow(std::ostream& stream);
77 
79  virtual void randomiseInitValues();
80 
82  virtual void finaliseValues();
83 
85 
88  virtual LauComplex particleCoeff();
89 
91 
94  virtual LauComplex antiparticleCoeff();
95 
97 
101  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar );
102 
104 
107  virtual LauParameter acp();
108 
110 
115  virtual LauAbsCoeffSet* createClone(const TString& newName, Double_t constFactor = 1.0);
116 
117  protected:
119 
124  LauMagPhaseCPCoeffSet(const LauMagPhaseCPCoeffSet& rhs, Double_t constFactor = 1.0);
125 
127 
132 
133  private:
135  Double_t minMag_;
137  Double_t maxMag_;
139  Double_t minPhase_;
141  Double_t maxPhase_;
142 
143  // the actual fit parameters
144  // (need to be pointers so they can be cloned)
153 
156 
157  ClassDef(LauMagPhaseCPCoeffSet, 0)
158 };
159 
160 #endif
virtual void finaliseValues()
Make sure values are in &quot;standard&quot; ranges, e.g. phases should be between -pi and pi.
LauParameter acp_
The CP asymmetry.
virtual LauComplex particleCoeff()
Retrieve the complex coefficient for a particle.
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
virtual LauAbsCoeffSet * createClone(const TString &newName, Double_t constFactor=1.0)
Create a clone of the coefficient set.
LauParameter * phase_
The phase for particles.
File containing declaration of LauAbsCoeffSet class.
virtual LauComplex antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
Double_t minMag_
The minimum allowed value for magnitudes.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
Double_t maxPhase_
The maximum allowed value for phases.
LauMagPhaseCPCoeffSet & operator=(const LauMagPhaseCPCoeffSet &rhs)
Copy assignment operator.
Class for defining a complex coefficient using seperate magnitudes and phases for particles and antip...
Double_t maxMag_
The maximum allowed value for magnitudes.
virtual void printTableRow(std::ostream &stream)
Print the parameters of the complex coefficient as a row in the results table.
File containing declaration of LauParameter class.
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar)
Set the parameters based on the complex coefficients for particles and antiparticles.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:31
virtual LauParameter acp()
Calculate the CP asymmetry.
LauParameter * magBar_
The magnitude for antiparticles.
virtual ~LauMagPhaseCPCoeffSet()
Destructor.
Class for defining a complex number.
Definition: LauComplex.hh:47
Double_t minPhase_
The minimum allowed value for phases.
LauParameter * mag_
The magnitude for particles.
LauMagPhaseCPCoeffSet(const TString &compName, Double_t mag, Double_t phase, Double_t magBar, Double_t phaseBar, Bool_t magFixed, Bool_t phaseFixed, Bool_t magBarFixed, Bool_t phaseBarFixed)
Constructor.
virtual void printTableHeading(std::ostream &stream)
Print the column headings for a results table.
LauParameter * phaseBar_
The phase for antiparticles.