laura is hosted by Hepforge, IPPP Durham
Laura++  v3r3
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauRealImagGammaCPCoeffSet.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2013 - 2014.
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_REALIMAGGAMMACP_COEFF_SET
26 #define LAU_REALIMAGGAMMACP_COEFF_SET
27 
28 #include <iosfwd>
29 #include <vector>
30 
31 #include "Rtypes.h"
32 
33 #include "LauAbsCoeffSet.hh"
34 #include "LauComplex.hh"
35 #include "LauParameter.hh"
36 
37 
39 
40  public:
42 
57  LauRealImagGammaCPCoeffSet(const TString& compName, const Double_t x, const Double_t y, const Double_t xCP, const Double_t yCP, const Double_t xbarCP, const Double_t ybarCP,
58  const Bool_t xFixed, const Bool_t yFixed, const Bool_t xCPFixed, const Bool_t yCPFixed, const Bool_t xbarCPFixed, const Bool_t ybarCPFixed);
59 
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 
109  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar, Bool_t init );
110 
112 
115  virtual LauParameter acp();
116 
118 
124  virtual LauAbsCoeffSet* createClone(const TString& newName, CloneOption cloneOption = All, Double_t constFactor = 1.0);
125 
126  private:
128 
134  LauRealImagGammaCPCoeffSet(const LauRealImagGammaCPCoeffSet& rhs, CloneOption cloneOption = All, Double_t constFactor = 1.0);
135 
137 
141 
142  // the actual fit parameters
143  // (need to be pointers so they can be cloned)
156 
163 
168 
171 
172  ClassDef(LauRealImagGammaCPCoeffSet, 0)
173 };
174 
175 #endif
LauRealImagGammaCPCoeffSet(const TString &compName, const Double_t x, const Double_t y, const Double_t xCP, const Double_t yCP, const Double_t xbarCP, const Double_t ybarCP, const Bool_t xFixed, const Bool_t yFixed, const Bool_t xCPFixed, const Bool_t yCPFixed, const Bool_t xbarCPFixed, const Bool_t ybarCPFixed)
Constructor.
virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0)
Create a clone of the coefficient set.
LauParameter * xbarCP_
The real CP part for the antiparticle.
LauComplex cpAntiPart_
The CP part of the complex coefficient for the antiparticle.
virtual void printParValues() const
Print the current values of the parameters.
Class for defining a complex coefficient using a Cartesian nonCP part multiplied by a simple Cartesia...
File containing declaration of LauAbsCoeffSet class.
virtual void printTableRow(std::ostream &stream) const
Print the parameters of the complex coefficient as a row in the results table.
virtual ~LauRealImagGammaCPCoeffSet()
Destructor.
LauRealImagGammaCPCoeffSet & operator=(const LauRealImagGammaCPCoeffSet &rhs)
Copy assignment operator (not implemented)
LauParameter * ybarCP_
The imaginary CP part for the antiparticle.
virtual const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
LauComplex particleCoeff_
The particle complex coefficient.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.
CloneOption
Options for cloning operation.
LauComplex cpPart_
The CP part of the complex coefficient for the particle.
LauParameter * yCP_
The imaginary CP part for the particle.
LauParameter * xCP_
The real CP part for the particle.
File containing declaration of LauParameter class.
File containing declaration of LauComplex class.
Class for defining the abstract interface for complex coefficient classes.
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar, Bool_t init)
Set the parameters based on the complex coefficients for particles and antiparticles.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:35
virtual const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
LauParameter * y_
The imaginary nonCP part.
LauParameter acp_
The CP asymmetry.
virtual void printTableHeading(std::ostream &stream) const
Print the column headings for a results table.
Class for defining a complex number.
Definition: LauComplex.hh:47
LauParameter * x_
The real nonCP part.
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
LauComplex nonCPPart_
The nonCP part of the complex coefficient.
virtual void finaliseValues()
Make sure values are in &quot;standard&quot; ranges, e.g. phases should be between -pi and pi.
virtual LauParameter acp()
Calculate the CP asymmetry.