laura is hosted by Hepforge, IPPP Durham
Laura++  v3r5
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauSigmaRes.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_SIGMA_RES
37 #define LAU_SIGMA_RES
38 
39 #include "TString.h"
40 
41 #include "LauAbsResonance.hh"
42 #include "LauComplex.hh"
43 
44 
45 class LauSigmaRes : public LauAbsResonance {
46 
47  public:
49 
54  LauSigmaRes(LauResonanceInfo* resInfo, const Int_t resPairAmpInt, const LauDaughters* daughters);
55 
57  virtual ~LauSigmaRes();
58 
60  virtual void initialise();
61 
63 
67 
69 
73  virtual void setResonanceParameter(const TString& name, const Double_t value);
74 
76 
79  virtual void floatResonanceParameter(const TString& name);
80 
82 
86  virtual LauParameter* getResonanceParameter(const TString& name);
87 
89 
92  virtual const std::vector<LauParameter*>& getFloatingParameters();
93 
94  protected:
96 
99  void setB1Value(const Double_t b1);
100 
102 
105  void setB2Value(const Double_t b2);
106 
108 
111  void setAValue(const Double_t A);
112 
114 
117  void setM0Value(const Double_t m0);
118 
120 
123  Double_t getB1Value() const { return (b1_!=0) ? b1_->unblindValue() : 0.0; }
124 
126 
129  Double_t getB2Value() const { return (b2_!=0) ? b2_->unblindValue() : 0.0; }
130 
132 
135  Double_t getAValue() const { return (a_!=0) ? a_->unblindValue() : 0.0; }
136 
138 
141  Double_t getM0Value() const { return (m0_!=0) ? m0_->unblindValue() : 0.0; }
142 
144 
147  Bool_t fixB1Value() const { return (b1_!=0) ? b1_->fixed() : 0.0; }
148 
150 
153  Bool_t fixB2Value() const { return (b2_!=0) ? b2_->fixed() : 0.0; }
154 
156 
159  Bool_t fixAValue() const { return (a_!=0) ? a_->fixed() : 0.0; }
160 
162 
165  Bool_t fixM0Value() const { return (m0_!=0) ? m0_->fixed() : 0.0; }
166 
168 
172  virtual LauComplex resAmp(Double_t mass, Double_t spinTerm);
173 
175  void checkDaughterTypes() const;
176 
177  private:
179  LauSigmaRes(const LauSigmaRes& rhs);
180 
182  LauSigmaRes& operator=(const LauSigmaRes& rhs);
183 
185  Double_t mPiSq4_;
187  Double_t sAdler_;
188 
197 
198  ClassDef(LauSigmaRes,0) // Sigma resonance model
199 
200 };
201 
202 #endif
virtual ~LauSigmaRes()
Destructor.
Definition: LauSigmaRes.cc:96
Bool_t fixed() const
Check whether the parameter is fixed or floated.
void setAValue(const Double_t A)
Set the A parameter.
Definition: LauSigmaRes.cc:293
Bool_t fixB2Value() const
Fix the b2 parameter value.
Definition: LauSigmaRes.hh:153
Bool_t fixB1Value() const
Fix the b1 parameter value.
Definition: LauSigmaRes.hh:147
Class for defining the properties of a resonant particle.
Class that defines the particular 3-body decay under study.
Definition: LauDaughters.hh:47
Double_t getAValue() const
Get the A parameter value.
Definition: LauSigmaRes.hh:135
Double_t getB2Value() const
Get the b2 parameter value.
Definition: LauSigmaRes.hh:129
Bool_t fixM0Value() const
Fix the m0 parameter value.
Definition: LauSigmaRes.hh:165
virtual void initialise()
Initialise the model.
Definition: LauSigmaRes.cc:100
virtual void floatResonanceParameter(const TString &name)
Allow the various parameters to float in the fit.
Definition: LauSigmaRes.cc:228
Double_t sAdler_
Defined as 0.5*mPi*mPi.
Definition: LauSigmaRes.hh:187
Class for defining the Sigma resonance model.
Definition: LauSigmaRes.hh:45
Double_t getB1Value() const
Get the b1 parameter value.
Definition: LauSigmaRes.hh:123
LauSigmaRes(LauResonanceInfo *resInfo, const Int_t resPairAmpInt, const LauDaughters *daughters)
Constructor.
Definition: LauSigmaRes.cc:38
virtual void setResonanceParameter(const TString &name, const Double_t value)
Set value of the various parameters.
Definition: LauSigmaRes.cc:204
virtual LauParameter * getResonanceParameter(const TString &name)
Access the given resonance parameter.
Definition: LauSigmaRes.cc:263
File containing declaration of LauComplex class.
LauParameter * b2_
Factor from BES data.
Definition: LauSigmaRes.hh:192
LauParameter * a_
Factor from BES data.
Definition: LauSigmaRes.hh:194
LauSigmaRes & operator=(const LauSigmaRes &rhs)
Copy assignment operator (not implemented)
Class for defining the fit parameter objects.
Definition: LauParameter.hh:49
void checkDaughterTypes() const
Check that both daughters are the same type of particle.
Definition: LauSigmaRes.cc:112
void setB2Value(const Double_t b2)
Set the b2 parameter.
Definition: LauSigmaRes.cc:286
LauResonanceModel
Define the allowed resonance types.
void setB1Value(const Double_t b1)
Set the b1 parameter.
Definition: LauSigmaRes.cc:279
virtual LauComplex resAmp(Double_t mass, Double_t spinTerm)
Complex resonant ampltiude.
Definition: LauSigmaRes.cc:132
Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc...
LauParameter * m0_
Factor from BES data.
Definition: LauSigmaRes.hh:196
File containing declaration of LauAbsResonance class.
Double_t unblindValue() const
The unblinded value of the parameter.
Class for defining a complex number.
Definition: LauComplex.hh:61
Double_t getM0Value() const
Get the m0 parameter value.
Definition: LauSigmaRes.hh:141
virtual const std::vector< LauParameter * > & getFloatingParameters()
Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.
Definition: LauSigmaRes.cc:181
void setM0Value(const Double_t m0)
Set the m0 parameter.
Definition: LauSigmaRes.cc:300
Bool_t fixAValue() const
Fix the A parameter value.
Definition: LauSigmaRes.hh:159
Double_t mPiSq4_
Defined as 4*mPi*mPi.
Definition: LauSigmaRes.hh:185
virtual LauAbsResonance::LauResonanceModel getResonanceModel() const
Get the resonance model type.
Definition: LauSigmaRes.hh:66
LauParameter * b1_
Factor from BES data.
Definition: LauSigmaRes.hh:190