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

Class for defining the resonant part of the LASS model. More...

#include <LauLASSBWRes.hh>

Inheritance diagram for LauLASSBWRes:
LauAbsResonance

Public Member Functions

 LauLASSBWRes (LauResonanceInfo *resInfo, const Int_t resPairAmpInt, const LauDaughters *daughters)
 Constructor. More...
 
virtual ~LauLASSBWRes ()
 
virtual void initialise ()
 Initialise the model. More...
 
virtual
LauAbsResonance::LauResonanceModel 
getResonanceModel () const
 Get the resonance model type. More...
 
virtual void setResonanceParameter (const TString &name, const Double_t value)
 Set value of a resonance parameter. 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...
 
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...
 
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

void setEffectiveRange (const Double_t r)
 Set the effective range parameter value. More...
 
void setScatteringLength (const Double_t a)
 Set the scattering length parameter value. More...
 
Double_t getEffectiveRange () const
 Get the effective range parameter. More...
 
Double_t getScatteringLength () const
 Get the scattering length range parameter. More...
 
Bool_t fixEffectiveRange () const
 See if the effective range parameter is fixed or floating. More...
 
Bool_t fixScatteringLength () const
 See if the scattering length parameter is fixed or floating. More...
 
void calcQ0 ()
 Utility function to calculate the q0 value. More...
 
virtual LauComplex resAmp (Double_t mass, Double_t spinTerm)
 Complex resonant amplitude. 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...
 

Private Member Functions

 LauLASSBWRes (const LauLASSBWRes &rhs)
 Copy constructor (not implemented) More...
 
LauLASSBWResoperator= (const LauLASSBWRes &rhs)
 Copy assignment operator (not implemented) More...
 

Private Attributes

Double_t q0_
 Decay momentum of either daughter in the resonance rest frame. More...
 
Double_t mDaugSum_
 Sum of the daughter masses. More...
 
Double_t mDaugSumSq_
 Square of mDaugSum. More...
 
Double_t mDaugDiff_
 Difference between the daughter masses. More...
 
Double_t mDaugDiffSq_
 Square of mDaugDiff. More...
 
Double_t resMass_
 The resonance mass. More...
 
Double_t resMassSq_
 Square of the resonance mass. More...
 
LauParameterr_
 LASS effective range parameter. More...
 
LauParametera_
 LASS scattering length parameter. 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,
  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 the resonant part of the LASS model.

Class for defining the LASS resonance model, which includes a resonant part, plus an effective range term. This class is the resonant part only.

Definition at line 31 of file LauLASSBWRes.hh.

Constructor & Destructor Documentation

LauLASSBWRes::LauLASSBWRes ( LauResonanceInfo resInfo,
const 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 24 of file LauLASSBWRes.cc.

LauLASSBWRes::~LauLASSBWRes ( )
virtual

Definition at line 60 of file LauLASSBWRes.cc.

LauLASSBWRes::LauLASSBWRes ( const LauLASSBWRes rhs)
private

Copy constructor (not implemented)

Member Function Documentation

void LauLASSBWRes::calcQ0 ( )
protected

Utility function to calculate the q0 value.

Definition at line 86 of file LauLASSBWRes.cc.

Bool_t LauLASSBWRes::fixEffectiveRange ( ) const
inlineprotected

See if the effective range parameter is fixed or floating.

Returns
kTRUE if the effective range parameter is fixed, kFALSE otherwise

Definition at line 109 of file LauLASSBWRes.hh.

Bool_t LauLASSBWRes::fixScatteringLength ( ) const
inlineprotected

See if the scattering length parameter is fixed or floating.

Returns
kTRUE if the scattering length parameter is fixed, kFALSE otherwise

Definition at line 115 of file LauLASSBWRes.hh.

void LauLASSBWRes::floatResonanceParameter ( const TString &  name)
virtual

Allow the various parameters to float in the fit.

Parameters
[in]namethe name of the parameter to be floated

Reimplemented from LauAbsResonance.

Definition at line 182 of file LauLASSBWRes.cc.

Double_t LauLASSBWRes::getEffectiveRange ( ) const
inlineprotected

Get the effective range parameter.

Returns
the effective range parameter

Definition at line 97 of file LauLASSBWRes.hh.

const std::vector< LauParameter * > & LauLASSBWRes::getFloatingParameters ( )
virtual

Retrieve the resonance parameters, e.g. so that they can be loaded into a fit.

Returns
floating parameters of the resonance

Reimplemented from LauAbsResonance.

Definition at line 145 of file LauLASSBWRes.cc.

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

Get the resonance model type.

Returns
the resonance model type

Implements LauAbsResonance.

Definition at line 52 of file LauLASSBWRes.hh.

LauParameter * LauLASSBWRes::getResonanceParameter ( const TString &  name)
virtual

Access the given resonance parameter.

Parameters
[in]namethe name of the parameter
Returns
the corresponding parameter

Reimplemented from LauAbsResonance.

Definition at line 203 of file LauLASSBWRes.cc.

Double_t LauLASSBWRes::getScatteringLength ( ) const
inlineprotected

Get the scattering length range parameter.

Returns
the scattering length parameter

Definition at line 103 of file LauLASSBWRes.hh.

void LauLASSBWRes::initialise ( )
virtual

Initialise the model.

Implements LauAbsResonance.

Definition at line 64 of file LauLASSBWRes.cc.

LauLASSBWRes& LauLASSBWRes::operator= ( const LauLASSBWRes rhs)
private

Copy assignment operator (not implemented)

LauComplex LauLASSBWRes::resAmp ( Double_t  mass,
Double_t  spinTerm 
)
protectedvirtual

Complex resonant amplitude.

Parameters
[in]massappropriate invariant mass for the resonance
[in]spinTermspin term

Implements LauAbsResonance.

Definition at line 97 of file LauLASSBWRes.cc.

void LauLASSBWRes::setEffectiveRange ( const Double_t  r)
protected

Set the effective range parameter value.

Parameters
[in]rthe new effective range parameter value

Definition at line 215 of file LauLASSBWRes.cc.

void LauLASSBWRes::setResonanceParameter ( const TString &  name,
const Double_t  value 
)
virtual

Set value of a resonance parameter.

Parameters
[in]namethe name of the parameter to be changed
[in]valuethe new parameter value

Reimplemented from LauAbsResonance.

Definition at line 168 of file LauLASSBWRes.cc.

void LauLASSBWRes::setScatteringLength ( const Double_t  a)
protected

Set the scattering length parameter value.

Parameters
[in]athe new scattering length parameter value

Definition at line 222 of file LauLASSBWRes.cc.

Member Data Documentation

LauParameter* LauLASSBWRes::a_
private

LASS scattering length parameter.

Definition at line 152 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::mDaugDiff_
private

Difference between the daughter masses.

Definition at line 141 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::mDaugDiffSq_
private

Square of mDaugDiff.

Definition at line 143 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::mDaugSum_
private

Sum of the daughter masses.

Definition at line 137 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::mDaugSumSq_
private

Square of mDaugSum.

Definition at line 139 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::q0_
private

Decay momentum of either daughter in the resonance rest frame.

Definition at line 135 of file LauLASSBWRes.hh.

LauParameter* LauLASSBWRes::r_
private

LASS effective range parameter.

Definition at line 150 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::resMass_
private

The resonance mass.

Definition at line 145 of file LauLASSBWRes.hh.

Double_t LauLASSBWRes::resMassSq_
private

Square of the resonance mass.

Definition at line 147 of file LauLASSBWRes.hh.


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