laura is hosted by Hepforge, IPPP Durham
Laura++  v1r0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauBelleCPCoeffSet.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2006 - 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 
27 #ifndef LAU_BELLECP_COEFF_SET
28 #define LAU_BELLECP_COEFF_SET
29 
30 #include <iosfwd>
31 #include <vector>
32 
33 #include "Rtypes.h"
34 
35 #include "LauAbsCoeffSet.hh"
36 #include "LauParameter.hh"
37 
38 class LauComplex;
39 
40 
42 
43  public:
45 
56  LauBelleCPCoeffSet(const TString& compName, Double_t a, Double_t delta, Double_t b, Double_t phi,
57  Bool_t aFixed, Bool_t deltaFixed, Bool_t bFixed, Bool_t phiFixed);
58 
60  virtual ~LauBelleCPCoeffSet(){}
61 
63 
66  virtual std::vector<LauParameter*> getParameters();
67 
69 
72  virtual void printTableHeading(std::ostream& stream);
73 
75 
78  virtual void printTableRow(std::ostream& stream);
79 
81  virtual void randomiseInitValues();
82 
84  virtual void finaliseValues();
85 
87 
90  virtual LauComplex particleCoeff();
91 
93 
96  virtual LauComplex antiparticleCoeff();
97 
99 
103  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar );
104 
106 
109  virtual LauParameter acp();
110 
112 
117  virtual LauAbsCoeffSet* createClone(const TString& newName, Double_t constFactor = 1.0);
118 
119  protected:
121 
126  LauBelleCPCoeffSet(const LauBelleCPCoeffSet& rhs, Double_t constFactor = 1.0);
127 
129 
134 
135 
136  private:
138  Double_t minMag_;
140  Double_t maxMag_;
142  Double_t minPhase_;
144  Double_t maxPhase_;
145 
146  // the actual fit parameters
147  // (need to be pointers so they can be cloned)
156 
159 
160  ClassDef(LauBelleCPCoeffSet, 0)
161 };
162 
163 #endif
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
Class for defining a complex coefficient using the Belle CP convention. Holds a set of real values th...
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar)
Set the parameters based on the complex coefficients for particles and antiparticles.
File containing declaration of LauAbsCoeffSet class.
Double_t minPhase_
The minimum allowed value for phases.
virtual ~LauBelleCPCoeffSet()
Destructor.
LauParameter * delta_
The strong phase.
LauParameter * phi_
The weak phase.
LauBelleCPCoeffSet(const TString &compName, Double_t a, Double_t delta, Double_t b, Double_t phi, Bool_t aFixed, Bool_t deltaFixed, Bool_t bFixed, Bool_t phiFixed)
Constructor.
virtual void printTableRow(std::ostream &stream)
Print the parameters of the complex coefficient as a row in the results table.
virtual LauComplex particleCoeff()
Retrieve the complex coefficient for a particle.
LauParameter * a_
The magnitude a.
Double_t maxMag_
The maximum allowed value for magnitudes.
File containing declaration of LauParameter class.
LauParameter * b_
The magnitude b.
virtual LauParameter acp()
Calculate the CP asymmetry.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:31
virtual LauComplex antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
Double_t minMag_
The minimum allowed value for magnitudes.
virtual void printTableHeading(std::ostream &stream)
Print the column headings for a results table.
Double_t maxPhase_
The maximum allowed value for phases.
virtual LauAbsCoeffSet * createClone(const TString &newName, Double_t constFactor=1.0)
Create a clone of the coefficient set.
Class for defining a complex number.
Definition: LauComplex.hh:47
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.
LauBelleCPCoeffSet & operator=(const LauBelleCPCoeffSet &rhs)
Copy assignment operator.