laura is hosted by Hepforge, IPPP Durham
Laura++  v3r5
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauBelleSymNR.hh
Go to the documentation of this file.
1 
2 /*
3 Copyright 2013 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_BELLE_SYM_NR
37 #define LAU_BELLE_SYM_NR
38 
39 #include "TString.h"
40 
41 #include "LauComplex.hh"
42 #include "LauAbsResonance.hh"
43 
44 class LauKinematics;
45 
46 
48 
49  public:
51 
58  const Int_t resPairAmpInt, const LauDaughters* daughters);
59 
61  virtual ~LauBelleSymNR();
62 
64  virtual void initialise();
65 
67 
71  virtual LauComplex amplitude(const LauKinematics* kinematics);
72 
74 
78 
80 
83  virtual Bool_t preSymmetrised() const {return kTRUE;}
84 
86 
90  virtual void setResonanceParameter(const TString& name, const Double_t value);
91 
93 
96  virtual void floatResonanceParameter(const TString& name);
97 
99 
103  virtual LauParameter* getResonanceParameter(const TString& name);
104 
106 
109  virtual const std::vector<LauParameter*>& getFloatingParameters();
110 
111  protected:
113 
116  void setAlpha(const Double_t alpha);
117 
119 
122  Double_t getAlpha() const {return (alpha_!=0) ? alpha_->unblindValue() : 0.0;}
123 
125  Bool_t fixAlpha() const {return (alpha_!=0) ? alpha_->fixed() : kTRUE;}
126 
128  virtual LauComplex resAmp(Double_t mass, Double_t spinTerm);
129 
130  private:
132  LauBelleSymNR(const LauBelleSymNR& rhs);
133 
136 
139 
142 
143  ClassDef(LauBelleSymNR,0) // Belle Non-resonant model
144 
145 };
146 
147 #endif
Bool_t fixed() const
Check whether the parameter is fixed or floated.
Class for defining the properties of a resonant particle.
Class that defines the particular 3-body decay under study.
Definition: LauDaughters.hh:47
LauBelleSymNR & operator=(const LauBelleSymNR &rhs)
Copy assignment operator (not implemented)
LauBelleSymNR(LauResonanceInfo *resInfo, const LauAbsResonance::LauResonanceModel resType, const Int_t resPairAmpInt, const LauDaughters *daughters)
Constructor.
virtual LauComplex resAmp(Double_t mass, Double_t spinTerm)
This is not called, amplitude is used directly instead.
virtual LauParameter * getResonanceParameter(const TString &name)
Access the given resonance parameter.
virtual ~LauBelleSymNR()
Destructor.
virtual LauAbsResonance::LauResonanceModel getResonanceModel() const
Get the resonance model type.
File containing declaration of LauComplex class.
Double_t getAlpha() const
Get the effective range parameter.
virtual const std::vector< LauParameter * > & getFloatingParameters()
Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.
Class for defining the fit parameter objects.
Definition: LauParameter.hh:49
virtual LauComplex amplitude(const LauKinematics *kinematics)
Get the complex dynamical amplitude.
LauResonanceModel
Define the allowed resonance types.
Class for defining the symmetric Belle Non Resonant model.
Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc...
LauParameter * alpha_
The range parameter.
File containing declaration of LauAbsResonance class.
Double_t unblindValue() const
The unblinded value of the parameter.
Bool_t fixAlpha() const
See if the alpha parameter is fixed or floating.
Class for defining a complex number.
Definition: LauComplex.hh:61
virtual Bool_t preSymmetrised() const
Is the amplitude pre-symmetrised?
Class for calculating 3-body kinematic quantities.
virtual void initialise()
Initialise.
LauAbsResonance::LauResonanceModel model_
The model to use.
void setAlpha(const Double_t alpha)
Set the parameter alpha, the effective range.
virtual void floatResonanceParameter(const TString &name)
Allow the various parameters to float in the fit.
virtual void setResonanceParameter(const TString &name, const Double_t value)
Set value of the various parameters.