laura is hosted by Hepforge, IPPP Durham
Laura++  v3r3
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauCartesianGammaCPCoeffSet.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 
23 #ifndef LAU_CARTESIANGAMMACP_COEFF_SET
24 #define LAU_CARTESIANGAMMACP_COEFF_SET
25 
26 #include <iosfwd>
27 #include <vector>
28 
29 #include "Rtypes.h"
30 
31 #include "LauAbsCoeffSet.hh"
32 #include "LauComplex.hh"
33 #include "LauParameter.hh"
34 
35 
37 
38  public:
40 
57  LauCartesianGammaCPCoeffSet(const TString& compName, const Double_t x, const Double_t y, const Double_t xCP, const Double_t yCP, const Double_t deltaXCP, const Double_t deltaYCP,
58  const Bool_t xFixed, const Bool_t yFixed, const Bool_t xCPFixed, const Bool_t yCPFixed, const Bool_t deltaXCPFixed, const Bool_t deltaYCPFixed,
59  const Bool_t deltaXCPSecondStage = kFALSE, const Bool_t deltaYCPSecondStage = kFALSE);
60 
63 
65 
68  virtual std::vector<LauParameter*> getParameters();
69 
71  virtual void printParValues() const;
72 
74 
77  virtual void printTableHeading(std::ostream& stream) const;
78 
80 
83  virtual void printTableRow(std::ostream& stream) const;
84 
86  virtual void randomiseInitValues();
87 
89  virtual void finaliseValues();
90 
92 
95  virtual const LauComplex& particleCoeff();
96 
98 
101  virtual const LauComplex& antiparticleCoeff();
102 
104 
110  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar, Bool_t init );
111 
113 
116  virtual LauParameter acp();
117 
119 
125  virtual LauAbsCoeffSet* createClone(const TString& newName, CloneOption cloneOption = All, Double_t constFactor = 1.0);
126 
127  private:
129 
135  LauCartesianGammaCPCoeffSet(const LauCartesianGammaCPCoeffSet& rhs, CloneOption cloneOption = All, Double_t constFactor = 1.0);
136 
138 
142 
143  // the actual fit parameters
144  // (need to be pointers so they can be cloned)
157 
164 
169 
172 
173  ClassDef(LauCartesianGammaCPCoeffSet, 0)
174 };
175 
176 #endif
LauParameter * yCP_
The average CP imaginary part.
virtual LauParameter acp()
Calculate the CP asymmetry.
LauComplex cpAntiPart_
The CP part of the complex coefficient for the antiparticle.
virtual void printTableRow(std::ostream &stream) const
Print the parameters of the complex coefficient as a row in the results table.
virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0)
Create a clone of the coefficient set.
Class for defining a complex coefficient using the Cartesian gamma CP convention. ...
virtual void printTableHeading(std::ostream &stream) const
Print the column headings for a results table.
LauComplex cpPart_
The CP part of the complex coefficient for the particle.
File containing declaration of LauAbsCoeffSet class.
LauParameter * y_
The nonCP imaginary part.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
CloneOption
Options for cloning operation.
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
LauCartesianGammaCPCoeffSet & operator=(const LauCartesianGammaCPCoeffSet &rhs)
Copy assignment operator (not implemented)
LauComplex particleCoeff_
The particle complex coefficient.
virtual const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
LauParameter acp_
The CP asymmetry.
File containing declaration of LauParameter class.
virtual const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
LauParameter * deltaXCP_
The asymmetric CP real part.
File containing declaration of LauComplex class.
LauParameter * x_
The nonCP real part.
LauParameter * xCP_
The average CP real part.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:35
virtual void finaliseValues()
Make sure values are in &quot;standard&quot; ranges, e.g. phases should be between -pi and pi.
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar, Bool_t init)
Set the parameters based on the complex coefficients for particles and antiparticles.
LauParameter * deltaYCP_
The asymmetric CP imaginary part.
Class for defining a complex number.
Definition: LauComplex.hh:47
virtual ~LauCartesianGammaCPCoeffSet()
Destructor.
LauCartesianGammaCPCoeffSet(const TString &compName, const Double_t x, const Double_t y, const Double_t xCP, const Double_t yCP, const Double_t deltaXCP, const Double_t deltaYCP, const Bool_t xFixed, const Bool_t yFixed, const Bool_t xCPFixed, const Bool_t yCPFixed, const Bool_t deltaXCPFixed, const Bool_t deltaYCPFixed, const Bool_t deltaXCPSecondStage=kFALSE, const Bool_t deltaYCPSecondStage=kFALSE)
Constructor.
virtual void printParValues() const
Print the current values of the parameters.
LauComplex nonCPPart_
The nonCP part of the complex coefficient.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.