laura is hosted by Hepforge, IPPP Durham
Laura++  v3r5
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauRealImagCoeffSet.hh
Go to the documentation of this file.
1 
2 /*
3 Copyright 2006 University of Warwick
4 
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8 
9  http://www.apache.org/licenses/LICENSE-2.0
10 
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16 */
17 
18 /*
19 Laura++ package authors:
20 John Back
21 Paul Harrison
22 Thomas Latham
23 */
24 
36 #ifndef LAU_REALIMAG_COEFF_SET
37 #define LAU_REALIMAG_COEFF_SET
38 
39 #include <iosfwd>
40 #include <vector>
41 
42 #include "Rtypes.h"
43 
44 #include "LauAbsCoeffSet.hh"
45 #include "LauComplex.hh"
46 #include "LauParameter.hh"
47 
48 
50 
51  public:
53 
60  LauRealImagCoeffSet(const TString& compName, Double_t x, Double_t y, Bool_t xFixed, Bool_t yFixed);
61 
64 
66 
69  virtual std::vector<LauParameter*> getParameters();
70 
72  virtual void printParValues() const;
73 
75 
78  virtual void printTableHeading(std::ostream& stream) const;
79 
81 
84  virtual void printTableRow(std::ostream& stream) const;
85 
87  virtual void randomiseInitValues();
88 
90  virtual void finaliseValues();
91 
93 
96  virtual const LauComplex& particleCoeff();
97 
99 
102  virtual const LauComplex& antiparticleCoeff();
103 
105 
111  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar, Bool_t init );
112 
114 
117  virtual LauParameter acp();
118 
120 
126  virtual LauAbsCoeffSet* createClone(const TString& newName, CloneOption cloneOption = All, Double_t constFactor = 1.0);
127 
128  private:
130 
136  LauRealImagCoeffSet(const LauRealImagCoeffSet& rhs, CloneOption cloneOption = All, Double_t constFactor = 1.0);
137 
139 
143 
144  // the actual fit parameters
145  // (need to be pointers so they can be cloned)
150 
153 
154  ClassDef(LauRealImagCoeffSet, 0)
155 };
156 
157 #endif
virtual void printParValues() const
Print the current values of the parameters.
virtual void printTableHeading(std::ostream &stream) const
Print the column headings for a results table.
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.
LauParameter * x_
The real part.
CloneOption
Options for cloning operation.
virtual void printTableRow(std::ostream &stream) const
Print the parameters of the complex coefficient as a row in the results table.
LauComplex coeff_
The complex coefficient.
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...
File containing declaration of LauComplex class.
Class for defining the abstract interface for complex coefficient classes.
LauRealImagCoeffSet & operator=(const LauRealImagCoeffSet &rhs)
Copy assignment operator (not implemented)
Class for defining the fit parameter objects.
Definition: LauParameter.hh:49
virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, 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 ~LauRealImagCoeffSet()
Destructor.
virtual LauParameter acp()
Calculate the CP asymmetry.
virtual const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
Class for defining a complex coefficient using real and imaginary parts.
Class for defining a complex number.
Definition: LauComplex.hh:61
LauParameter * y_
The imaginary part.
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.