laura is hosted by Hepforge, IPPP Durham
Laura++  v1r2
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 "LauComplex.hh"
37 #include "LauParameter.hh"
38 
39 
41 
42  public:
44 
55  LauBelleCPCoeffSet(const TString& compName, Double_t a, Double_t delta, Double_t b, Double_t phi,
56  Bool_t aFixed, Bool_t deltaFixed, Bool_t bFixed, Bool_t phiFixed);
57 
59  virtual ~LauBelleCPCoeffSet(){}
60 
62 
65  virtual std::vector<LauParameter*> getParameters();
66 
68 
71  virtual void printTableHeading(std::ostream& stream);
72 
74 
77  virtual void printTableRow(std::ostream& stream);
78 
80  virtual void randomiseInitValues();
81 
83  virtual void finaliseValues();
84 
86 
89  virtual const LauComplex& particleCoeff();
90 
92 
95  virtual const LauComplex& antiparticleCoeff();
96 
98 
102  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar );
103 
105 
108  virtual LauParameter acp();
109 
111 
116  virtual LauAbsCoeffSet* createClone(const TString& newName, Double_t constFactor = 1.0);
117 
118  protected:
120 
125  LauBelleCPCoeffSet(const LauBelleCPCoeffSet& rhs, Double_t constFactor = 1.0);
126 
128 
133 
134 
135  private:
137  Double_t minMag_;
139  Double_t maxMag_;
141  Double_t minPhase_;
143  Double_t maxPhase_;
144 
145  // the actual fit parameters
146  // (need to be pointers so they can be cloned)
155 
160 
163 
164  ClassDef(LauBelleCPCoeffSet, 0)
165 };
166 
167 #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 const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.
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.
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.
File containing declaration of LauComplex class.
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
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 const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
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.
LauComplex particleCoeff_
The particle complex coefficient.
LauParameter acp_
The CP asymmetry.
LauBelleCPCoeffSet & operator=(const LauBelleCPCoeffSet &rhs)
Copy assignment operator.