laura is hosted by Hepforge, IPPP Durham
Laura++  v3r3
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauDabbaRes.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2010 - 2014.
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_DABBA_RES
23 #define LAU_DABBA_RES
24 
25 #include "TString.h"
26 
27 #include "LauAbsResonance.hh"
28 #include "LauComplex.hh"
29 
30 
31 class LauDabbaRes : public LauAbsResonance {
32 
33  public:
35 
40  LauDabbaRes(LauResonanceInfo* resInfo, const Int_t resPairAmpInt, const LauDaughters* daughters);
41 
43  virtual ~LauDabbaRes();
44 
46  virtual void initialise();
47 
49 
53 
55 
59  virtual void setResonanceParameter(const TString& name, const Double_t value);
60 
62 
65  virtual void floatResonanceParameter(const TString& name);
66 
68 
72  virtual LauParameter* getResonanceParameter(const TString& name);
73 
75 
78  virtual const std::vector<LauParameter*>& getFloatingParameters();
79 
80  protected:
82 
85  void setBValue(const Double_t b);
86 
88 
91  void setAlphaValue(const Double_t alpha);
92 
94 
97  void setBetaValue(const Double_t beta);
98 
100 
103  Double_t getBValue() const { return (b_!=0) ? b_->unblindValue() : 0.0; }
104 
106 
109  Double_t getAlphaValue() const { return (alpha_!=0) ? alpha_->unblindValue() : 0.0; }
110 
112 
115  Double_t getBetaValue() const { return (beta_!=0) ? beta_->unblindValue() : 0.0; }
116 
118 
121  Bool_t fixBValue() const { return (b_!=0) ? b_->fixed() : 0.0; }
122 
124 
127  Bool_t fixAlphaValue() const { return (alpha_!=0) ? alpha_->fixed() : 0.0; }
128 
130 
133  Bool_t fixBetaValue() const { return (beta_!=0) ? beta_->fixed() : 0.0; }
134 
136 
140  virtual LauComplex resAmp(Double_t mass, Double_t spinTerm);
141 
143  void checkDaughterTypes() const;
144 
145  private:
147  LauDabbaRes(const LauDabbaRes& rhs);
148 
150  LauDabbaRes& operator=(const LauDabbaRes& rhs);
151 
153  Double_t mSumSq_;
155  Double_t sAdler_;
156 
163 
164  ClassDef(LauDabbaRes,0) // Dabba resonance model
165 
166 };
167 
168 #endif
void setBValue(const Double_t b)
Set the b parameter.
Definition: LauDabbaRes.cc:233
Bool_t fixed() const
Check whether the parameter is fixed or floated.
Double_t getBetaValue() const
Get the beta parameter value.
Definition: LauDabbaRes.hh:115
virtual const std::vector< LauParameter * > & getFloatingParameters()
Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.
Definition: LauDabbaRes.cc:152
Double_t getAlphaValue() const
Get the alpha parameter value.
Definition: LauDabbaRes.hh:109
Bool_t fixBetaValue() const
Fix the beta parameter value.
Definition: LauDabbaRes.hh:133
LauParameter * beta_
Constant factor.
Definition: LauDabbaRes.hh:162
virtual LauAbsResonance::LauResonanceModel getResonanceModel() const
Get the resonance model type.
Definition: LauDabbaRes.hh:52
Class for defining the properties of a resonant particle.
Class that defines the particular 3-body decay under study.
Definition: LauDaughters.hh:33
virtual LauComplex resAmp(Double_t mass, Double_t spinTerm)
Complex resonant amplitude.
Definition: LauDabbaRes.cc:113
Double_t mSumSq_
Defined as mD + mPi all squared.
Definition: LauDabbaRes.hh:153
LauDabbaRes & operator=(const LauDabbaRes &rhs)
Copy assignment operator (not implemented)
Bool_t fixBValue() const
Fix the b parameter value.
Definition: LauDabbaRes.hh:121
LauParameter * b_
Constant factor.
Definition: LauDabbaRes.hh:158
virtual void initialise()
Initialise the model.
Definition: LauDabbaRes.cc:72
File containing declaration of LauComplex class.
const Double_t beta
Angle beta of the unitarity triangle.
Definition: LauConstants.hh:84
Class for defining the fit parameter objects.
Definition: LauParameter.hh:35
virtual void setResonanceParameter(const TString &name, const Double_t value)
Set value of the various parameters.
Definition: LauDabbaRes.cc:171
virtual LauParameter * getResonanceParameter(const TString &name)
Access the given resonance parameter.
Definition: LauDabbaRes.cc:219
virtual ~LauDabbaRes()
Destructor.
Definition: LauDabbaRes.cc:68
LauResonanceModel
Define the allowed resonance types.
void setAlphaValue(const Double_t alpha)
Set the alpha parameter.
Definition: LauDabbaRes.cc:240
Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc...
Class for defining the Dabba resonance model.
Definition: LauDabbaRes.hh:31
LauParameter * alpha_
Constant factor.
Definition: LauDabbaRes.hh:160
void checkDaughterTypes() const
Check that the daughter particles are D and pi.
Definition: LauDabbaRes.cc:94
File containing declaration of LauAbsResonance class.
Double_t unblindValue() const
The unblinded value of the parameter.
Bool_t fixAlphaValue() const
Fix the alpha parameter value.
Definition: LauDabbaRes.hh:127
Double_t sAdler_
Defined as mD*mD - 0.5*mPi*mPi.
Definition: LauDabbaRes.hh:155
Class for defining a complex number.
Definition: LauComplex.hh:47
virtual void floatResonanceParameter(const TString &name)
Allow the various parameters to float in the fit.
Definition: LauDabbaRes.cc:191
void setBetaValue(const Double_t beta)
Set the beta parameter.
Definition: LauDabbaRes.cc:247
Double_t getBValue() const
Get the b parameter value.
Definition: LauDabbaRes.hh:103
LauDabbaRes(LauResonanceInfo *resInfo, const Int_t resPairAmpInt, const LauDaughters *daughters)
Constructor.
Definition: LauDabbaRes.cc:25