laura is hosted by Hepforge, IPPP Durham
Laura++  v1r0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauRealImagCoeffSet.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 
22 #ifndef LAU_REALIMAG_COEFF_SET
23 #define LAU_REALIMAG_COEFF_SET
24 
25 #include <iosfwd>
26 #include <vector>
27 
28 #include "Rtypes.h"
29 
30 #include "LauAbsCoeffSet.hh"
31 #include "LauParameter.hh"
32 
33 class LauComplex;
34 
35 
37 
38  public:
40 
47  LauRealImagCoeffSet(const TString& compName, Double_t x, Double_t y, Bool_t xFixed, Bool_t yFixed);
48 
51 
53 
56  virtual std::vector<LauParameter*> getParameters();
57 
59 
62  virtual void printTableHeading(std::ostream& stream);
63 
65 
68  virtual void printTableRow(std::ostream& stream);
69 
71  virtual void randomiseInitValues();
72 
74  virtual void finaliseValues();
75 
77 
80  virtual LauComplex particleCoeff();
81 
83 
86  virtual LauComplex antiparticleCoeff();
87 
89 
94  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar );
95 
97 
100  virtual LauParameter acp();
101 
103 
108  virtual LauAbsCoeffSet* createClone(const TString& newName, Double_t constFactor = 1.0);
109 
110  protected:
112 
117  LauRealImagCoeffSet(const LauRealImagCoeffSet& rhs, Double_t constFactor = 1.0);
118 
120 
125 
126 
127  private:
129  Double_t minPar_;
131  Double_t maxPar_;
132 
133  // the actual fit parameters
134  // (need to be pointers so they can be cloned)
139 
140  ClassDef(LauRealImagCoeffSet, 0)
141 };
142 
143 #endif
LauRealImagCoeffSet & operator=(const LauRealImagCoeffSet &rhs)
Copy assignment operator.
virtual void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
LauRealImagCoeffSet(const TString &compName, Double_t x, Double_t y, Bool_t xFixed, Bool_t yFixed)
Constructor.
File containing declaration of LauAbsCoeffSet class.
virtual void printTableHeading(std::ostream &stream)
Print the column headings for a results table.
LauParameter * x_
The real part.
Double_t minPar_
The minimum allowed value for parameters.
virtual void printTableRow(std::ostream &stream)
Print the parameters of the complex coefficient as a row in the results table.
File containing declaration of LauParameter class.
virtual std::vector< LauParameter * > getParameters()
Retrieve the parameters of the coefficient, e.g. so that they can be loaded into a fit...
virtual LauComplex particleCoeff()
Retrieve the complex coefficient for a particle.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:31
virtual void finaliseValues()
Make sure values are in &quot;standard&quot; ranges, e.g. phases should be between -pi and pi.
virtual ~LauRealImagCoeffSet()
Destructor.
Double_t maxPar_
The maximum allowed value for parameters.
virtual LauParameter acp()
Calculate the CP asymmetry.
virtual LauAbsCoeffSet * createClone(const TString &newName, Double_t constFactor=1.0)
Create a clone of the coefficient set.
Class for defining a complex coefficient using real and imaginary parts.
Class for defining a complex number.
Definition: LauComplex.hh:47
LauParameter * y_
The imaginary part.
virtual LauComplex antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
virtual void setCoeffValues(const LauComplex &coeff, const LauComplex &coeffBar)
Set the parameters based on the complex coefficients for particles and antiparticles.