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

Singleton factory class for creating resonances. More...

#include <LauResonanceMaker.hh>

Classes

struct  BlattWeisskopfCategoryInfo
 Data structure to store information on a given Blatt-Weisskopf category. More...
 

Public Member Functions

void setBWType (const LauBlattWeisskopfFactor::BarrierType bwType)
 Set the type of BW factor (for all categories) More...
 
void setBWBachelorRestFrame (const LauBlattWeisskopfFactor::RestFrame restFrame)
 Set the rest frame in which the bachelor momentum should be calculated (for all BW categories) More...
 
void setSpinFormalism (const LauAbsResonance::LauSpinType spinType)
 Set the spin formalism to be used for all resonances. More...
 
void setDefaultBWRadius (const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory, const Double_t bwRadius)
 Set the BW radius for the given category. More...
 
void fixBWRadius (const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory, const Bool_t fixRadius)
 Fix or release the Blatt-Weisskopf barrier radius for the given category. More...
 
LauAbsResonancegetResonance (const LauDaughters *daughters, const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType, const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory=LauBlattWeisskopfFactor::Default)
 Create a resonance. More...
 
Int_t resTypeInt (const TString &name) const
 Retrieve the integer index for the specified resonance. More...
 
UInt_t getNResDefMax () const
 Retrieve the number of defined resonances. More...
 
void printAll (std::ostream &stream) const
 Print the information records, one per line, to the requested stream. More...
 
LauResonanceInfogetResInfo (const TString &resName) const
 Get the information for the given resonance name. More...
 
LauBlattWeisskopfFactorgetParentBWFactor (Int_t newSpin, LauBlattWeisskopfFactor::BarrierType barrierType)
 Retrieve parent Blatt-Weisskopf factor (for use by K-matrix pole/SVP which doesn't have a ‘resInfo’)
 

Static Public Member Functions

static LauResonanceMakerget ()
 Get the factory instance.
 

Protected Member Functions

void createResonanceVector ()
 Create the list of known resonances.
 
LauBlattWeisskopfFactorgetBWFactor (const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory, const LauResonanceInfo *resInfo)
 Retrieve Blatt-Weisskopf factor for the given category.
 

Private Types

typedef std::map< LauBlattWeisskopfFactor::BlattWeisskopfCategory, BlattWeisskopfCategoryInfoBWFactorCategoryMap
 Define a type to hold information on each BW category.
 

Private Member Functions

 LauResonanceMaker ()
 Constructor.
 
virtual ~LauResonanceMaker ()
 Destructor.
 
 LauResonanceMaker (const LauResonanceMaker &other)
 Copy constructor (not inplemented)
 
LauResonanceMakeroperator= (const LauResonanceMaker &other)
 Copy assignment (not implemented)
 

Private Attributes

UInt_t nResDefMax_
 The number of known resonances.
 
std::vector< LauResonanceInfo * > resInfo_
 The known resonances.
 
LauBlattWeisskopfFactor::BarrierType bwBarrierType_
 The type of the Blatt-Weisskopf barrier to use for all resonances.
 
LauBlattWeisskopfFactor::RestFrame bwRestFrame_
 The rest frame in which the bachelor momentum used in the Blatt-Weisskopf factors should be calculated.
 
LauAbsResonance::LauSpinType spinFormalism_
 The spin formalism that should be used for all resonances.
 
BWFactorCategoryMap bwFactors_
 The Blatt-Weisskopf factor objects (and related information) for each category.
 
std::vector< LauBlattWeisskopfFactor * > bwIndepFactors_
 The Blatt-Weisskopf factor objects for resonances in the independent category.
 
Bool_t summaryPrinted_
 Boolean flag to control printing a summary of the formalism to be used when the first resonance is created.
 

Static Private Attributes

static LauResonanceMakerresonanceMaker_ = 0
 The singleton instance.
 

Detailed Description

Singleton factory class for creating resonances.

Singleton factory class for creating resonances. Information records for all known resonances are stored within this class.

Definition at line 48 of file LauResonanceMaker.hh.

Member Function Documentation

◆ fixBWRadius()

void LauResonanceMaker::fixBWRadius ( const LauBlattWeisskopfFactor::BlattWeisskopfCategory  bwCategory,
const Bool_t  fixRadius 
)

Fix or release the Blatt-Weisskopf barrier radius for the given category.

Parameters
[in]bwCategorythe Blatt-Weisskopf barrier factor category
[in]fixRadiusnew status of the radius (kTRUE = fixed, kFALSE = floating)

Definition at line 669 of file LauResonanceMaker.cc.

◆ getNResDefMax()

UInt_t LauResonanceMaker::getNResDefMax ( ) const
inline

Retrieve the number of defined resonances.

Returns
the number of defined resonances

Definition at line 121 of file LauResonanceMaker.hh.

◆ getResInfo()

LauResonanceInfo * LauResonanceMaker::getResInfo ( const TString &  resName) const

Get the information for the given resonance name.

Parameters
[in]resNamethe name of the resonant particle
Returns
the LauResonanceInfo pointer if we can find the resonance name

Definition at line 1171 of file LauResonanceMaker.cc.

◆ getResonance()

LauAbsResonance * LauResonanceMaker::getResonance ( const LauDaughters daughters,
const TString &  resName,
const Int_t  resPairAmpInt,
const LauAbsResonance::LauResonanceModel  resType,
const LauBlattWeisskopfFactor::BlattWeisskopfCategory  bwCategory = LauBlattWeisskopfFactor::Default 
)

Create a resonance.

Parameters
[in]daughtersdefines the Dalitz plot in which the resonance should be created
[in]resNamethe name of the resonant particle
[in]resPairAmpIntthe index of the daughter not produced by the resonance
[in]resTypethe type of the resonance
[in]bwCategorythe Blatt-Weisskopf barrier factor category
Returns
the resonance

Definition at line 816 of file LauResonanceMaker.cc.

◆ printAll()

void LauResonanceMaker::printAll ( std::ostream &  stream) const

Print the information records, one per line, to the requested stream.

Parameters
[in,out]streamthe stream to which to print the info

Definition at line 1162 of file LauResonanceMaker.cc.

◆ resTypeInt()

Int_t LauResonanceMaker::resTypeInt ( const TString &  name) const

Retrieve the integer index for the specified resonance.

Parameters
[in]namethe name of the resonant particle
Returns
the index

Definition at line 1139 of file LauResonanceMaker.cc.

◆ setBWBachelorRestFrame()

void LauResonanceMaker::setBWBachelorRestFrame ( const LauBlattWeisskopfFactor::RestFrame  restFrame)

Set the rest frame in which the bachelor momentum should be calculated (for all BW categories)

This must be used before creating any resonances

Parameters
[in]restFramethe rest frame in which the bachelor momentum should be calculated for the Blatt-Weisskopf factors

Definition at line 603 of file LauResonanceMaker.cc.

◆ setBWType()

void LauResonanceMaker::setBWType ( const LauBlattWeisskopfFactor::BarrierType  bwType)

Set the type of BW factor (for all categories)

This must be used before creating any resonances

Parameters
[in]bwTypethe Blatt-Weisskopf barrier type

Definition at line 583 of file LauResonanceMaker.cc.

◆ setDefaultBWRadius()

void LauResonanceMaker::setDefaultBWRadius ( const LauBlattWeisskopfFactor::BlattWeisskopfCategory  bwCategory,
const Double_t  bwRadius 
)

Set the BW radius for the given category.

Parameters
[in]bwCategorythe Blatt-Weisskopf barrier factor category
[in]bwRadiusthe radius value to be used for the given category

Definition at line 633 of file LauResonanceMaker.cc.

◆ setSpinFormalism()

void LauResonanceMaker::setSpinFormalism ( const LauAbsResonance::LauSpinType  spinType)

Set the spin formalism to be used for all resonances.

This must be used before creating any resonances

Parameters
[in]spinTypethe spin formalism to be used

Definition at line 623 of file LauResonanceMaker.cc.


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