laura is hosted by Hepforge, IPPP Durham
Laura++  v3r0p1
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauModIndPartWave.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2004 - 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 
23 #ifndef LAU_MODINDPARTWAVE
24 #define LAU_MODINDPARTWAVE
25 
26 #include "LauComplex.hh"
27 #include "LauAbsResonance.hh"
28 
29 class TSpline3;
30 
31 
33 
34  public:
36 
41  LauModIndPartWave(LauResonanceInfo* resInfo, Int_t resPairAmpInt, const LauDaughters* daughters);
42 
44  virtual ~LauModIndPartWave();
45 
47  virtual void initialise();
48 
50 
59  void addKnot(Double_t mass, Double_t magVal, Double_t phaseVal, Bool_t fixMag=kFALSE, Bool_t fixPhase=kFALSE);
60 
62 
70  void setKnotAmp(Int_t knot, Double_t magVal, Double_t phaseVal, Bool_t fixMag, Bool_t fixPhase);
71 
73 
77 
79 
82  virtual const std::vector<LauParameter*>& getFloatingParameters();
83 
84  protected:
86 
90  virtual LauComplex resAmp(Double_t mass, Double_t spinTerm);
91 
92  private:
94  TSpline3* magSpline_;
96  TSpline3* phaseSpline_;
97 
99  Int_t nKnots_;
100 
102  std::vector<Double_t> masses_;
104  std::vector<Double_t> magnitudes_;
106  std::vector<Double_t> phases_;
107 
109  std::vector<LauParameter*> magnitudePars_;
111  std::vector<LauParameter*> phasePars_;
112 
114  Bool_t initialised_;
115 
124 
125  ClassDef(LauModIndPartWave,0) // model independent partial wave
126 
127 };
128 
129 #endif
Class for defining a model independent partial wave component.
std::vector< Double_t > magnitudes_
The values of the magnitude spline at the knots.
void addKnot(Double_t mass, Double_t magVal, Double_t phaseVal, Bool_t fixMag=kFALSE, Bool_t fixPhase=kFALSE)
Add a knot to the magnitude and phase splines.
Double_t upperThresholdPhase_
Phase for the knot at the upper kinematic threshold.
Class for defining the properties of a resonant particle.
Class that defines the particular 3-body decay under study.
Definition: LauDaughters.hh:33
std::vector< Double_t > masses_
The masses at which knots are defined in the magnitude and phase splines.
Int_t nKnots_
The number of knots in the magnitude and phase splines.
void setKnotAmp(Int_t knot, Double_t magVal, Double_t phaseVal, Bool_t fixMag, Bool_t fixPhase)
Set the magnitude and phase at a given knot.
virtual LauAbsResonance::LauResonanceModel getResonanceModel() const
Get the resonance model type.
Bool_t fixUpperThresholdPhase_
Whether the phase should be fixed for the knot at the upper kinematic threshold.
Bool_t initialised_
Flag to identify whether the model has been intialised yet.
virtual const std::vector< LauParameter * > & getFloatingParameters()
Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.
Bool_t fixUpperThresholdMag_
Whether the magnitude should be fixed for the knot at the upper kinematic threshold.
File containing declaration of LauComplex class.
LauModIndPartWave(LauResonanceInfo *resInfo, Int_t resPairAmpInt, const LauDaughters *daughters)
Constructor.
virtual LauComplex resAmp(Double_t mass, Double_t spinTerm)
Complex resonant amplitude.
LauResonanceModel
Define the allowed resonance types.
Double_t upperThresholdMag_
Magnitude for the knot at the upper kinematic threshold.
std::vector< LauParameter * > phasePars_
The parameters for the values at the knots in the phase spline.
Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc...
virtual ~LauModIndPartWave()
Destructor.
File containing declaration of LauAbsResonance class.
virtual void initialise()
Initialise the model.
Class for defining a complex number.
Definition: LauComplex.hh:47
std::vector< LauParameter * > magnitudePars_
The parameters for the values at the knots in the magnitude spline.
TSpline3 * magSpline_
The spline used to calculate the magnitude at a given mass.
std::vector< Double_t > phases_
The values of the phase spline at the knots.
TSpline3 * phaseSpline_
The spline used to calculate the phase at a given mass.