laura is hosted by Hepforge, IPPP Durham
Laura++  3.6.0
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauNRAmplitude.hh
Go to the documentation of this file.
1 
2 /*
3 Copyright 2004 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_NR_AMPLITUDE
37 #define LAU_NR_AMPLITUDE
38 
39 #include "LauAbsResonance.hh"
40 #include "LauComplex.hh"
41 
42 #include "TString.h"
43 
44 class LauKinematics;
45 
47 
48  public:
50 
56  const Int_t resPairAmpInt,
57  const LauDaughters* daughters );
58 
60  virtual ~LauNRAmplitude();
61 
63  virtual void initialise();
64 
66 
70  virtual LauComplex amplitude( const LauKinematics* kinematics );
71 
73 
77  {
79  }
80 
82 
86  virtual void setResonanceParameter( const TString& name, const Double_t value );
87 
89 
92  virtual void floatResonanceParameter( const TString& name );
93 
95 
99  virtual LauParameter* getResonanceParameter( const TString& name );
100 
102 
105  virtual const std::vector<LauParameter*>& getFloatingParameters();
106 
107  protected:
109  virtual LauComplex resAmp( Double_t mass, Double_t spinTerm );
110 
112 
118  Double_t f( const Double_t s, const Double_t c, const Double_t p ) const;
119 
121 
124  void setdParameter( const Double_t d );
125 
127 
130  void setc1Parameter( const Double_t c1 );
131 
133 
136  void setc2Parameter( const Double_t c2 );
137 
139 
142  void setp1Parameter( const Double_t p1 );
143 
145 
148  void setp2Parameter( const Double_t p2 );
149 
151 
154  Double_t getdParameter() const { return ( d_ != 0 ) ? d_->unblindValue() : 0.0; }
155 
157 
160  Double_t getc1Parameter() const { return ( c1_ != 0 ) ? c1_->unblindValue() : 0.0; }
161 
163 
166  Double_t getc2Parameter() const { return ( c2_ != 0 ) ? c2_->unblindValue() : 0.0; }
167 
169 
172  Double_t getp1Parameter() const { return ( p1_ != 0 ) ? p1_->unblindValue() : 0.0; }
173 
175 
178  Double_t getp2Parameter() const { return ( p2_ != 0 ) ? p2_->unblindValue() : 0.0; }
179 
181 
184  Bool_t fixdParameter() const { return ( d_ != 0 ) ? d_->fixed() : kTRUE; }
185 
187 
190  Bool_t fixc1Parameter() const { return ( c1_ != 0 ) ? c1_->fixed() : kTRUE; }
191 
193 
196  Bool_t fixc2Parameter() const { return ( c2_ != 0 ) ? c2_->fixed() : kTRUE; }
197 
199 
202  Bool_t fixp1Parameter() const { return ( p1_ != 0 ) ? p1_->fixed() : kTRUE; }
203 
205 
208  Bool_t fixp2Parameter() const { return ( p2_ != 0 ) ? p2_->fixed() : kTRUE; }
209 
210  private:
213 
216 
227 
228  ClassDef( LauNRAmplitude, 0 ) // Non-resonant amplitude model
229 };
230 
231 #endif
Class for defining the fit parameter objects.
Definition: LauParameter.hh:49
Double_t unblindValue() const
The unblinded value of the parameter.
Class for defining the NR amplitude model.
Bool_t fixc1Parameter() const
See if the c1 parameter is fixed or floating.
Double_t getdParameter() const
Get the d parameter value.
LauParameter * p2_
Parameter from arXiv:0709.0075v1 [hep-ph].
LauParameter * p1_
Parameter from arXiv:0709.0075v1 [hep-ph].
File containing declaration of LauAbsResonance class.
virtual void setResonanceParameter(const TString &name, const Double_t value)
Set value of a resonance parameter.
virtual LauComplex amplitude(const LauKinematics *kinematics)
Complex resonant amplitude.
virtual LauAbsResonance::LauResonanceModel getResonanceModel() const
Get the resonance model type.
LauNRAmplitude(LauResonanceInfo *resInfo, const Int_t resPairAmpInt, const LauDaughters *daughters)
Constructor.
Bool_t fixc2Parameter() const
See if the c2 parameter is fixed or floating.
LauNRAmplitude(const LauNRAmplitude &rhs)
Copy constructor (not implemented)
LauParameter * d_
Parameter from arXiv:0709.0075v1 [hep-ph].
void setdParameter(const Double_t d)
Set the d parameter value.
void setp1Parameter(const Double_t p1)
Set the p1 parameter value.
Class for defining a complex number.
Definition: LauComplex.hh:61
Double_t getp2Parameter() const
Get the p2 parameter value.
virtual void floatResonanceParameter(const TString &name)
Allow the various parameters to float in the fit.
File containing declaration of LauComplex class.
virtual LauParameter * getResonanceParameter(const TString &name)
Access the given resonance parameter.
Double_t getc2Parameter() const
Get the c2 parameter value.
Bool_t fixdParameter() const
See if the d parameter is fixed or floating.
Bool_t fixp1Parameter() const
See if the p1 parameter is fixed or floating.
void setc2Parameter(const Double_t c2)
Set the c2 parameter value.
Bool_t fixed() const
Check whether the parameter is fixed or floated.
Double_t f(const Double_t s, const Double_t c, const Double_t p) const
Evaluate the expression 1.0 / (1.0 + TMath::Exp( c * (s-p) ))
Class for defining the properties of a resonant particle.
void setc1Parameter(const Double_t c1)
Set the c1 parameter value.
Double_t getp1Parameter() const
Get the p1 parameter value.
Double_t getc1Parameter() const
Get the c1 parameter value.
LauParameter * c1_
Parameter from arXiv:0709.0075v1 [hep-ph].
virtual const std::vector< LauParameter * > & getFloatingParameters()
Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.
Bool_t fixp2Parameter() const
See if the p2 parameter is fixed or floating.
Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc....
LauParameter * c2_
Parameter from arXiv:0709.0075v1 [hep-ph].
Class for calculating 3-body kinematic quantities.
virtual LauComplex resAmp(Double_t mass, Double_t spinTerm)
This is not meant to be called.
virtual void initialise()
Initialise the model.
Class that defines the particular 3-body decay under study.
Definition: LauDaughters.hh:47
LauNRAmplitude & operator=(const LauNRAmplitude &rhs)
Copy assignment operator (not implemented)
void setp2Parameter(const Double_t p2)
Set the p2 parameter value.
LauResonanceModel
Define the allowed resonance types.
virtual ~LauNRAmplitude()
Destructor.