laura is hosted by Hepforge, IPPP Durham
Laura++  v3r3
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 
57  LauBelleCPCoeffSet(const TString& compName, Double_t a, Double_t delta, Double_t b, Double_t phi,
58  Bool_t aFixed, Bool_t deltaFixed, Bool_t bFixed, Bool_t phiFixed, Bool_t bSecondStage = kFALSE, Bool_t phiSecondStage = kFALSE);
59 
61  virtual ~LauBelleCPCoeffSet(){}
62 
64 
67  virtual std::vector<LauParameter*> getParameters();
68 
70  virtual void printParValues() const;
71 
73 
76  virtual void printTableHeading(std::ostream& stream) const;
77 
79 
82  virtual void printTableRow(std::ostream& stream) const;
83 
85  virtual void randomiseInitValues();
86 
88  virtual void finaliseValues();
89 
91 
94  virtual const LauComplex& particleCoeff();
95 
97 
100  virtual const LauComplex& antiparticleCoeff();
101 
103 
108  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar, Bool_t init );
109 
111 
114  virtual LauParameter acp();
115 
117 
123  virtual LauAbsCoeffSet* createClone(const TString& newName, CloneOption cloneOption = All, Double_t constFactor = 1.0);
124 
125  private:
127 
133  LauBelleCPCoeffSet(const LauBelleCPCoeffSet& rhs, CloneOption cloneOption = All, Double_t constFactor = 1.0);
134 
136 
140 
141  // the actual fit parameters
142  // (need to be pointers so they can be cloned)
151 
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 const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.
File containing declaration of LauAbsCoeffSet class.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0)
Create a clone of the coefficient set.
virtual ~LauBelleCPCoeffSet()
Destructor.
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, Bool_t bSecondStage=kFALSE, Bool_t phiSecondStage=kFALSE)
Constructor.
LauParameter * delta_
The strong phase.
CloneOption
Options for cloning operation.
LauParameter * phi_
The weak phase.
LauParameter * a_
The magnitude a.
virtual void printTableHeading(std::ostream &stream) const
Print the column headings for a results table.
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:35
virtual void printParValues() const
Print the current values of the parameters.
LauBelleCPCoeffSet & operator=(const LauBelleCPCoeffSet &rhs)
Copy assignment operator (not implemented)
virtual void printTableRow(std::ostream &stream) const
Print the parameters of the complex coefficient as a row in the results table.
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar, Bool_t init)
Set the parameters based on the complex coefficients for particles and antiparticles.
virtual const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
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.