laura is hosted by Hepforge, IPPP Durham
Laura++  3.6.0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauRealImagCPCoeffSet.hh
Go to the documentation of this file.
1 
2 /*
3 Copyright 2014 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 
38 #ifndef LAU_REALIMAGCP_COEFF_SET
39 #define LAU_REALIMAGCP_COEFF_SET
40 
41 #include "LauAbsCoeffSet.hh"
42 #include "LauComplex.hh"
43 #include "LauParameter.hh"
44 
45 #include "Rtypes.h"
46 
47 #include <iosfwd>
48 #include <vector>
49 
51 
52  public:
54 
65  LauRealImagCPCoeffSet( const TString& compName,
66  Double_t x,
67  Double_t y,
68  Double_t xbar,
69  Double_t ybar,
70  Bool_t xFixed,
71  Bool_t yFixed,
72  Bool_t xbarFixed,
73  Bool_t ybarFixed );
74 
77 
79 
82  virtual std::vector<LauParameter*> getParameters();
83 
85  virtual void printParValues() const;
86 
88 
91  virtual void printTableHeading( std::ostream& stream ) const;
92 
94 
97  virtual void printTableRow( std::ostream& stream ) const;
98 
100  virtual void randomiseInitValues();
101 
103  virtual void finaliseValues();
104 
106 
109  virtual const LauComplex& particleCoeff();
110 
112 
115  virtual const LauComplex& antiparticleCoeff();
116 
118 
123  virtual void setCoeffValues( const LauComplex& coeff, const LauComplex& coeffBar, Bool_t init );
124 
126 
129  virtual LauParameter acp();
130 
132 
138  virtual LauAbsCoeffSet* createClone( const TString& newName,
139  CloneOption cloneOption = All,
140  Double_t constFactor = 1.0 );
141 
142  private:
144 
152  CloneOption cloneOption = All,
153  Double_t constFactor = 1.0 );
154 
156 
160 
161  // the actual fit parameters
162  // (need to be pointers so they can be cloned)
171 
176 
179 
180  ClassDef( LauRealImagCPCoeffSet, 0 )
181 };
182 
183 #endif
virtual void finaliseValues()
Make sure values are in "standard" ranges, e.g. phases should be between -pi and pi.
LauComplex antiparticleCoeff_
The antiparticle complex coefficient.
virtual const LauComplex & antiparticleCoeff()
Retrieve the complex coefficient for an antiparticle.
Class for defining the abstract interface for complex coefficient classes.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:49
LauParameter * x_
The real part for the particle.
virtual void printTableHeading(std::ostream &stream) const
Print the column headings for a results table.
LauComplex particleCoeff_
The particle 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.
virtual LauAbsCoeffSet * createClone(const TString &newName, CloneOption cloneOption=All, Double_t constFactor=1.0)
Create a clone of the coefficient set.
virtual void printParValues() const
Print the current values of the parameters.
LauParameter * ybar_
The imaginary part for the antiparticle.
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 void randomiseInitValues()
Randomise the starting values of the parameters for a fit.
Class for defining a complex number.
Definition: LauComplex.hh:61
virtual LauParameter acp()
Calculate the CP asymmetry.
Class for defining a complex coefficient using a simple Cartesian CP convention.
File containing declaration of LauComplex class.
LauRealImagCPCoeffSet & operator=(const LauRealImagCPCoeffSet &rhs)
Copy assignment operator (not implemented)
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 * xbar_
The real part for the antiparticle.
virtual const LauComplex & particleCoeff()
Retrieve the complex coefficient for a particle.
LauParameter acp_
The CP asymmetry.
CloneOption
Options for cloning operation.
LauParameter * y_
The imaginary part for the particle.
LauRealImagCPCoeffSet(const TString &compName, Double_t x, Double_t y, Double_t xbar, Double_t ybar, Bool_t xFixed, Bool_t yFixed, Bool_t xbarFixed, Bool_t ybarFixed)
Constructor.
virtual ~LauRealImagCPCoeffSet()
Destructor.