laura is hosted by Hepforge, IPPP Durham
Laura++  v3r5
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauModIndPartWaveRealImag Class Reference

Class for defining a model independent partial wave component where the amplitudes are parameterised in terms of real and imaginary parts. More...

#include <LauModIndPartWaveRealImag.hh>

Inheritance diagram for LauModIndPartWaveRealImag:
LauAbsModIndPartWave LauAbsResonance

Public Member Functions

 LauModIndPartWaveRealImag (LauResonanceInfo *resInfo, Int_t resPairAmpInt, const LauDaughters *daughters)
 Constructor. More...
 
virtual ~LauModIndPartWaveRealImag ()
 Destructor. More...
 
virtual void setKnotAmp (const UInt_t knot, const Double_t realVal, const Double_t imagVal, const Bool_t fixRealPart, const Bool_t fixImagPart)
 Set the values of the two real parameters that define the amplitude at a given knot. More...
 
void setType (Lau1DCubicSpline::LauSplineType realType, Lau1DCubicSpline::LauSplineType imagType)
 Method to set the type of interpolation used for the splines. More...
 
void setBoundaryConditions (Lau1DCubicSpline::LauSplineBoundaryType realLeftBound, Lau1DCubicSpline::LauSplineBoundaryType realRightBound, Lau1DCubicSpline::LauSplineBoundaryType imagLeftBound, Lau1DCubicSpline::LauSplineBoundaryType imagRightBound, Double_t realLeftGrad=0.0, Double_t realRightGrad=0.0, Double_t imagLeftGrad=0.0, Double_t imagRightGrad=0.0)
 Method to set the boundary conditions of the splines. More...
 
virtual
LauAbsResonance::LauResonanceModel 
getResonanceModel () const
 Get the resonance model type. More...
 
- Public Member Functions inherited from LauAbsModIndPartWave
 LauAbsModIndPartWave (LauResonanceInfo *resInfo, Int_t resPairAmpInt, const LauDaughters *daughters)
 Constructor. More...
 
virtual ~LauAbsModIndPartWave ()
 Destructor. More...
 
virtual void initialise ()
 Initialise the model. More...
 
void defineKnots (const std::set< Double_t > &masses)
 Define the knot positions. More...
 
UInt_t nKnots () const
 Return the number of knots that have been defined (including those at the upper and lower kinematic limits) More...
 
void floatKnotsSecondStage (const Bool_t secondStage)
 Set whether the parameters should be floated only in the second-stage of a two-stage fit. More...
 
Bool_t floatKnotsSecondStage () const
 Retrieve the value of the second stage flag. More...
 
virtual const std::vector
< LauParameter * > & 
getFloatingParameters ()
 Retrieve the resonance parameters, e.g. so that they can be loaded into a fit. More...
 
- Public Member Functions inherited from LauAbsResonance
 LauAbsResonance (LauResonanceInfo *resInfo, const Int_t resPairAmpInt, const LauDaughters *daughters)
 Constructor (for use by standard resonances) More...
 
 LauAbsResonance (const TString &resName, const Int_t resPairAmpInt, const LauDaughters *daughters)
 Constructor (for use by K-matrix components) More...
 
virtual ~LauAbsResonance ()
 Destructor. More...
 
virtual LauComplex amplitude (const LauKinematics *kinematics)
 Calculate the complex amplitude. More...
 
LauSpinType getSpinType () const
 Get the spin type. More...
 
const TString & getResonanceName () const
 Get the name of the resonance. More...
 
const TString & getSanitisedName () const
 Get the name of the resonance. More...
 
Int_t getPairInt () const
 Get the integer to identify which DP axis the resonance belongs to. More...
 
Int_t getSpin () const
 Get the spin of the resonance. More...
 
Int_t getCharge () const
 Get the charge of the resonance. More...
 
Double_t getMass () const
 Get the mass of the resonance. More...
 
Double_t getWidth () const
 Get the width of the resonance. More...
 
LauParametergetMassPar ()
 Get the mass parameter of the resonance. More...
 
LauParametergetWidthPar ()
 Get the width parameter of the resonance. More...
 
virtual Bool_t preSymmetrised () const
 Is the amplitude pre-symmetrised? More...
 
Bool_t flipHelicity () const
 Get the helicity flip flag. More...
 
void flipHelicity (const Bool_t boolean)
 Set the helicity flip flag. More...
 
Bool_t ignoreMomenta () const
 Get the ignore momenta flag. More...
 
void ignoreMomenta (const Bool_t boolean)
 Set the ignore momenta flag. More...
 
Bool_t ignoreSpin () const
 Get the ignore spin flag. More...
 
void ignoreSpin (const Bool_t boolean)
 Set the ignore spin flag. More...
 
Bool_t ignoreBarrierScaling () const
 Get the ignore barrier factor scaling flag. More...
 
void ignoreBarrierScaling (const Bool_t boolean)
 Set the ignore barrier factor scaling flag. More...
 
void changeResonance (const Double_t newMass, const Double_t newWidth, const Int_t newSpin)
 Allow the mass, width and spin of the resonance to be changed. More...
 
void changeBWBarrierRadii (const Double_t resRadius, const Double_t parRadius)
 Allow the Blatt-Weisskopf radius for the resonance and parent factors to be changed. More...
 
virtual void setResonanceParameter (const TString &name, const Double_t value)
 Set value of the various parameters. More...
 
virtual void floatResonanceParameter (const TString &name)
 Allow the various parameters to float in the fit. More...
 
virtual LauParametergetResonanceParameter (const TString &name)
 Access the given resonance parameter. More...
 
void fixMass (const Bool_t parFixed)
 Fix or release the resonance mass. More...
 
void fixWidth (const Bool_t parFixed)
 Fix or release the resonance width. More...
 
Bool_t fixMass () const
 Get the status of resonance mass (fixed or released) More...
 
Bool_t fixWidth () const
 Get the status of resonance width (fixed or released) More...
 
void setSpinType (const LauSpinType spinType)
 Set the spin formalism to be used. More...
 
void setBarrierRadii (LauBlattWeisskopfFactor *resFactor, LauBlattWeisskopfFactor *parFactor)
 Set the form factor model and parameters. More...
 
void fixBarrierRadii (const Bool_t fixResRadius, const Bool_t fixParRadius)
 Fix or release the Blatt-Weisskopf barrier radii. More...
 
Bool_t fixResRadius () const
 Get the status of resonance barrier radius (fixed or released) More...
 
Bool_t fixParRadius () const
 Get the status of parent barrier radius (fixed or released) More...
 
Double_t getResRadius () const
 Get the radius of the resonance barrier factor. More...
 
Double_t getParRadius () const
 Get the radius of the parent barrier factor. More...
 

Protected Member Functions

virtual void evaluateAmplitude (const Double_t mass)
 Evaluate the amplitude at the given point from the splines. More...
 
virtual void createAmpParameters (const UInt_t iKnot)
 Method to create the parameter objects for the given knot. More...
 
- Protected Member Functions inherited from LauAbsModIndPartWave
virtual LauComplex resAmp (Double_t mass, Double_t spinTerm)
 Complex resonant amplitude. More...
 
virtual std::set< Double_t > checkKnots (const std::set< Double_t > &masses)
 Method to check that the supplied knot positions are valid. More...
 
void setSplineType (Lau1DCubicSpline::LauSplineType type1, Lau1DCubicSpline::LauSplineType type2)
 Method to set the type of interpolation used for the splines. More...
 
void setSplineBoundaryConditions (Lau1DCubicSpline::LauSplineBoundaryType leftBound1, Lau1DCubicSpline::LauSplineBoundaryType rightBound1, Lau1DCubicSpline::LauSplineBoundaryType leftBound2, Lau1DCubicSpline::LauSplineBoundaryType rightBound2, Double_t leftGrad1=0.0, Double_t rightGrad1=0.0, Double_t leftGrad2=0.0, Double_t rightGrad2=0.0)
 Method to set the boundary conditions of the splines. More...
 
void setAmp (const Double_t realPart, const Double_t imagPart)
 Helper function to set the current amplitude value. More...
 
const std::vector< Double_t > & getMasses ()
 Helper function to access the masses. More...
 
std::vector< Double_t > & getAmp1Vals ()
 Helper function to access the 1st parameter set. More...
 
std::vector< Double_t > & getAmp2Vals ()
 Helper function to access the 2nd parameter set. More...
 
std::vector< LauParameter * > & getAmp1Pars ()
 Helper function to access the 1st parameter set. More...
 
std::vector< LauParameter * > & getAmp2Pars ()
 Helper function to access the 2nd parameter set. More...
 
const Lau1DCubicSplinegetSpline1 () const
 Helper function to access the 1st spline. More...
 
const Lau1DCubicSplinegetSpline2 () const
 Helper function to access the 1st spline. More...
 
- Protected Member Functions inherited from LauAbsResonance
TString getNameParent () const
 Get the name of the parent particle. More...
 
TString getNameDaug1 () const
 Get the name of the first daughter of the resonance. More...
 
TString getNameDaug2 () const
 Get the name of the second daughter of the resonance. More...
 
TString getNameBachelor () const
 Get the name of the daughter that does not originate form the resonance. More...
 
Double_t getMassParent () const
 Get the parent particle mass. More...
 
Double_t getMassDaug1 () const
 Get the mass of daughter 1. More...
 
Double_t getMassDaug2 () const
 Get the mass of daughter 2. More...
 
Double_t getMassBachelor () const
 Get the mass of the bachelor daughter. More...
 
Int_t getChargeParent () const
 Get the Charge of the parent particle. More...
 
Int_t getChargeDaug1 () const
 Get the charge of daughter 1. More...
 
Int_t getChargeDaug2 () const
 Get the charge of daughter 2. More...
 
Int_t getChargeBachelor () const
 Get the charge of the bachelor daughter. More...
 
Double_t getQ () const
 Get the current value of the daughter momentum in the resonance rest frame. More...
 
Double_t getP () const
 Get the current value of the bachelor momentum in the resonance rest frame. More...
 
Double_t getPstar () const
 Get the current value of the bachelor momentum in the parent rest frame. More...
 
Double_t getCovFactor () const
 Get the current value of the full spin-dependent covariant factor. More...
 
LauBlattWeisskopfFactorgetParBWFactor ()
 Get the centrifugal barrier for the parent decay. More...
 
const LauBlattWeisskopfFactorgetParBWFactor () const
 
LauBlattWeisskopfFactorgetResBWFactor ()
 Get the centrifugal barrier for the resonance decay. More...
 
const LauBlattWeisskopfFactorgetResBWFactor () const
 
LauResonanceInfogetResInfo () const
 Access the resonance info object. More...
 
const LauDaughtersgetDaughters () const
 Access the daughters object. More...
 
Double_t calcZemachSpinFactor (const Double_t pProd) const
 Calculate the amplitude spin term using the Zemach tensor formalism. More...
 
Double_t calcCovSpinFactor (const Double_t pProd)
 Calculate the amplitude spin term using the covariant tensor formalism. More...
 
void calcCovFactor (const Double_t erm)
 Calculate the spin-dependent covariant factor. More...
 
Double_t calcLegendrePoly () const
 Calculate the Legendre polynomial for the spin factor. More...
 
Double_t calcLegendrePoly (const Double_t cosHel)
 Calculate the Legendre polynomial for the spin factor (specifying the cosHel value) More...
 
void clearFloatingParameters ()
 Clear list of floating parameters. More...
 
void addFloatingParameter (LauParameter *param)
 Add parameter to the list of floating parameters. More...
 
std::vector< LauParameter * > & getParameters ()
 Access the list of floating parameters. More...
 

Additional Inherited Members

- Public Types inherited from LauAbsResonance
enum  LauResonanceModel {
  BW, RelBW, GS, Flatte,
  Sigma, Kappa, Dabba, LASS,
  LASS_BW, LASS_NR, EFKLLM, KMatrix,
  FlatNR, NRModel, BelleNR, PowerLawNR,
  BelleSymNR, BelleSymNRNoInter, TaylorNR, PolNR,
  Pole, PolarFFNR, PolarFFSymNR, PolarFFSymNRNoInter,
  Rescattering, Rescattering2, RescatteringNoInter, MIPW_MagPhase,
  MIPW_RealImag, GaussIncoh, RhoOmegaMix_GS, RhoOmegaMix_RBW,
  RhoOmegaMix_GS_1, RhoOmegaMix_RBW_1
}
 Define the allowed resonance types. More...
 
enum  LauSpinType { Zemach_P, Zemach_Pstar, Covariant, Legendre }
 Define the allowed spin formalisms. More...
 
- Static Public Member Functions inherited from LauAbsResonance
static bool isIncoherentModel (LauResonanceModel model)
 Is the resonance model incoherent? More...
 

Detailed Description

Class for defining a model independent partial wave component where the amplitudes are parameterised in terms of real and imaginary parts.

This model uses splines to produce a partial wave from the values of the real and imaginary parts of the amplitude at a series of points in the phase space. The values at each point can be floated in the fit.

Definition at line 45 of file LauModIndPartWaveRealImag.hh.

Constructor & Destructor Documentation

LauModIndPartWaveRealImag::LauModIndPartWaveRealImag ( LauResonanceInfo resInfo,
Int_t  resPairAmpInt,
const LauDaughters daughters 
)

Constructor.

Parameters
[in]resInfothe object containing information on the resonance name, mass, width, spin, charge, etc.
[in]resPairAmpIntthe number of the daughter not produced by the resonance
[in]daughtersthe daughter particles

Definition at line 41 of file LauModIndPartWaveRealImag.cc.

LauModIndPartWaveRealImag::~LauModIndPartWaveRealImag ( )
virtual

Destructor.

Definition at line 46 of file LauModIndPartWaveRealImag.cc.

Member Function Documentation

void LauModIndPartWaveRealImag::createAmpParameters ( const UInt_t  iKnot)
protectedvirtual

Method to create the parameter objects for the given knot.

Parameters
[in]iKnotthe index of the knot

Implements LauAbsModIndPartWave.

Definition at line 50 of file LauModIndPartWaveRealImag.cc.

void LauModIndPartWaveRealImag::evaluateAmplitude ( const Double_t  mass)
protectedvirtual

Evaluate the amplitude at the given point from the splines.

Parameters
[in]massappropriate invariant mass for the resonance

Implements LauAbsModIndPartWave.

Definition at line 131 of file LauModIndPartWaveRealImag.cc.

virtual LauAbsResonance::LauResonanceModel LauModIndPartWaveRealImag::getResonanceModel ( ) const
inlinevirtual

Get the resonance model type.

Returns
the resonance model type

Implements LauAbsResonance.

Definition at line 105 of file LauModIndPartWaveRealImag.hh.

void LauModIndPartWaveRealImag::setBoundaryConditions ( Lau1DCubicSpline::LauSplineBoundaryType  realLeftBound,
Lau1DCubicSpline::LauSplineBoundaryType  realRightBound,
Lau1DCubicSpline::LauSplineBoundaryType  imagLeftBound,
Lau1DCubicSpline::LauSplineBoundaryType  imagRightBound,
Double_t  realLeftGrad = 0.0,
Double_t  realRightGrad = 0.0,
Double_t  imagLeftGrad = 0.0,
Double_t  imagRightGrad = 0.0 
)
inline

Method to set the boundary conditions of the splines.

Parameters
[in]realLeftBoundthe type of boundary condition for the left edge of the real part spline
[in]realRightBoundthe type of boundary condition for the right edge of the real part spline
[in]imagLeftBoundthe type of boundary condition for the left edge of the imaginary part spline
[in]imagRightBoundthe type of boundary condition for the right edge of the imaginary part spline
[in]realLeftGradthe gradient at the left edge of the real part spline if clamped
[in]realRightGradthe gradient at the right edge of the real part spline if clamped
[in]imagLeftGradthe gradient at the left edge of the imaginary part spline if clamped
[in]imagRightGradthe gradient at the right edge of the imaginary part spline if clamped

Definition at line 89 of file LauModIndPartWaveRealImag.hh.

void LauModIndPartWaveRealImag::setKnotAmp ( const UInt_t  knot,
const Double_t  realVal,
const Double_t  imagVal,
const Bool_t  fixRealPart,
const Bool_t  fixImagPart 
)
virtual

Set the values of the two real parameters that define the amplitude at a given knot.

Parameters
[in]knotthe knot to be updated
[in]realValthe value of the real part at the knot
[in]imagValthe value of the imaginary part at the knot
[in]fixRealPartwhether the real part should be fixed
[in]fixImagPartwhether the imaginary part should be fixed

Implements LauAbsModIndPartWave.

Definition at line 81 of file LauModIndPartWaveRealImag.cc.

void LauModIndPartWaveRealImag::setType ( Lau1DCubicSpline::LauSplineType  realType,
Lau1DCubicSpline::LauSplineType  imagType 
)
inline

Method to set the type of interpolation used for the splines.

Parameters
[in]realTypethe type of interpolation for the real part spline
[in]imagTypethe type of interpolation for the imaginary part spline

Definition at line 74 of file LauModIndPartWaveRealImag.hh.


The documentation for this class was generated from the following files: