laura is hosted by Hepforge, IPPP Durham
Laura++  v1r2
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauCartesianCPCoeffSet.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_CARTESIANCP_COEFF_SET
24 #define LAU_CARTESIANCP_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 
53  LauCartesianCPCoeffSet(const TString& compName, Double_t x, Double_t y, Double_t deltaX, Double_t deltaY,
54  Bool_t xFixed, Bool_t yFixed, Bool_t deltaXFixed, Bool_t deltaYFixed, Bool_t deltaXSecondStage = kFALSE, Bool_t deltaYSecondStage = kFALSE);
55 
58 
60 
63  virtual std::vector<LauParameter*> getParameters();
64 
66 
69  virtual void printTableHeading(std::ostream& stream);
70 
72 
75  virtual void printTableRow(std::ostream& stream);
76 
78  virtual void randomiseInitValues();
79 
81  virtual void finaliseValues();
82 
84 
87  virtual const LauComplex& particleCoeff();
88 
90 
93  virtual const LauComplex& antiparticleCoeff();
94 
96 
100  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar );
101 
103 
106  virtual LauParameter acp();
107 
109 
114  virtual LauAbsCoeffSet* createClone(const TString& newName, Double_t constFactor = 1.0);
115 
116  protected:
118 
123  LauCartesianCPCoeffSet(const LauCartesianCPCoeffSet& rhs, Double_t constFactor = 1.0);
124 
126 
131 
132  private:
134  Double_t minPar_;
136  Double_t maxPar_;
138  Double_t minDeltaPar_;
140  Double_t maxDeltaPar_;
141 
142  // the actual fit parameters
143  // (need to be pointers so they can be cloned)
152 
157 
160 
161  ClassDef(LauCartesianCPCoeffSet, 0)
162 };
163 
164 #endif
LauParameter * deltaY_
The asymmetric imaginary part.
Double_t maxDeltaPar_
The maximum allowed value for the asymmetric parts.
Double_t maxPar_
The maximum allowed value for the average parts.
Double_t minDeltaPar_
The minimum allowed value for the asymmetric parts.
virtual ~LauCartesianCPCoeffSet()
Destructor.
LauCartesianCPCoeffSet(const TString &compName, Double_t x, Double_t y, Double_t deltaX, Double_t deltaY, Bool_t xFixed, Bool_t yFixed, Bool_t deltaXFixed, Bool_t deltaYFixed, Bool_t deltaXSecondStage=kFALSE, Bool_t deltaYSecondStage=kFALSE)
Constructor.
LauParameter * deltaX_
The asymmetric real part.
LauParameter * x_
The average real part.
virtual LauParameter acp()
Calculate the CP asymmetry.
File containing declaration of LauAbsCoeffSet class.
LauComplex particleCoeff_
The particle complex coefficient.
virtual const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
Double_t minPar_
The minimum allowed value for the average parts.
LauCartesianCPCoeffSet & operator=(const LauCartesianCPCoeffSet &rhs)
Copy assignment operator.
virtual const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
File containing declaration of LauParameter class.
LauParameter * y_
The average imaginary part.
File containing declaration of LauComplex class.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:31
virtual void printTableRow(std::ostream &stream)
Print the parameters of the complex coefficient as a row in the results table.
Class for defining a complex number.
Definition: LauComplex.hh:47
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar)
Set the parameters based on the complex coefficients for particles and antiparticles.
virtual void printTableHeading(std::ostream &stream)
Print the column headings for a results table.
virtual LauAbsCoeffSet * createClone(const TString &newName, Double_t constFactor=1.0)
Create a clone of the coefficient set.
virtual void finaliseValues()
Make sure values are in &quot;standard&quot; ranges, e.g. phases should be between -pi and pi.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
LauParameter acp_
The CP asymmetry.
Class for defining a complex coefficient using the Cartesian CP convention.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.