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

Class for defining signal dynamics using the isobar model. More...

#include <LauIsobarDynamics.hh>

Public Types

enum  ToyMCStatus { GenOK, MaxIterError, ASqMaxError }
 The possible statuses for toy MC generation. More...
 
typedef std::map< Int_t,
LauAbsEffModel * > 
LauTagCatScfFractionModelMap
 The type used for containing multiple self cross feed fraction models for different categories (e.g. tagging categories) More...
 

Public Member Functions

 LauIsobarDynamics (LauDaughters *daughters, LauAbsEffModel *effModel, LauAbsEffModel *scfFractionModel=0)
 Constructor. More...
 
 LauIsobarDynamics (LauDaughters *daughters, LauAbsEffModel *effModel, LauTagCatScfFractionModelMap scfFractionModel)
 Constructor. More...
 
virtual ~LauIsobarDynamics ()
 Destructor. More...
 
void initialise (const std::vector< LauComplex > &coeffs)
 Initialise the Dalitz plot dynamics. More...
 
void recalculateNormalisation ()
 recalculate Normalization More...
 
void setIntFileName (const TString &fileName)
 Set the name of the file to which to save the results of the integrals. More...
 
void setIntegralBinWidths (const Double_t m13BinWidth, const Double_t m23BinWidth)
 Set the widths of the bins to use when integrating across the Dalitz plot. More...
 
void setNarrowResonanceThreshold (const Double_t narrowWidth)
 Set the value below which a resonance width is considered to be narrow. More...
 
void setIntegralBinningFactor (const Double_t binningFactor)
 Set the factor relating the width of a narrow resonance and the binning size in its integration region. More...
 
LauAbsResonanceaddResonance (const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType, const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory=LauBlattWeisskopfFactor::Default, const LauBlattWeisskopfFactor::BarrierType bwType=LauBlattWeisskopfFactor::BWPrimeBarrier)
 Add a resonance to the Dalitz plot. More...
 
LauAbsResonanceaddIncoherentResonance (const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType)
 Add an incoherent resonance to the Dalitz plot. More...
 
void defineKMatrixPropagator (const TString &propName, const TString &paramFileName, Int_t resPairAmpInt, Int_t nChannels, Int_t nPoles, Int_t rowIndex=1)
 Define a new K-matrix Propagator. More...
 
void addKMatrixProdPole (const TString &poleName, const TString &propName, Int_t poleIndex)
 Add a K-matrix production pole term to the model. More...
 
void addKMatrixProdSVP (const TString &SVPName, const TString &propName, Int_t channelIndex)
 Add a K-matrix slowly-varying part (SVP) term to the model. More...
 
void setASqMaxValue (Double_t value)
 Set the maximum value of A squared to be used in the accept/reject. More...
 
Double_t getASqMaxSetValue () const
 Retrieve the maximum value of A squared to be used in the accept/reject. More...
 
Double_t getASqMaxVarValue () const
 Retrieve the maximum of A squared that has been found while generating. More...
 
Bool_t generate ()
 Generate a toy MC signal event. More...
 
ToyMCStatus checkToyMC (Bool_t printErrorMessages=kTRUE, Bool_t printInfoMessages=kFALSE)
 Check the status of the toy MC generation. More...
 
Int_t maxGenIterations () const
 Retrieve the maximum number of iterations allowed when generating an event. More...
 
void calcLikelihoodInfo (const UInt_t iEvt)
 Calculate the likelihood (and all associated information) for the given event number. More...
 
void calcLikelihoodInfo (const Double_t m13Sq, const Double_t m23Sq)
 Calculate the likelihood (and all associated information) given values of the Dalitz plot coordinates. More...
 
void calcLikelihoodInfo (const Double_t m13Sq, const Double_t m23Sq, const Int_t tagCat)
 Calculate the likelihood (and all associated information) given values of the Dalitz plot coordinates and the tagging category. More...
 
void calcExtraInfo (const Bool_t init=kFALSE)
 Calculate the fit fractions, mean efficiency and total DP rate. More...
 
Bool_t gotReweightedEvent ()
 Calculates whether an event with the current kinematics should be accepted in order to produce a distribution of events that matches the model e.g. when reweighting embedded data. More...
 
Double_t getEventWeight ()
 Calculate the acceptance rate, for events with the current kinematics, when generating events according to the model. More...
 
const LauComplexgetEvtDPAmp () const
 Retrieve the total amplitude for the current event. More...
 
Double_t getEvtm13Sq () const
 Retrieve the invariant mass squared of the first and third daughters in the current event. More...
 
Double_t getEvtm23Sq () const
 Retrieve the invariant mass squared of the second and third daughters in the current event. More...
 
Double_t getEvtmPrime () const
 Retrieve the square Dalitz plot coordinate, m', for the current event. More...
 
Double_t getEvtthPrime () const
 Retrieve the square Dalitz plot coordinate, theta', for the current event. More...
 
Double_t getEvtEff () const
 Retrieve the efficiency for the current event. More...
 
Double_t getEvtScfFraction () const
 Retrieve the fraction of events that are poorly reconstructed (the self cross feed fraction) for the current event. More...
 
Double_t getEvtJacobian () const
 Retrieve the Jacobian, for the transformation into square DP coordinates, for the current event. More...
 
Double_t getEvtLikelihood () const
 Retrieve the likelihood for the current event. More...
 
LauComplex getDynamicAmp (Int_t resID) const
 Retrieve the normalised dynamic part of the amplitude of the given amplitude component at the current point in the Dalitz plot. More...
 
const std::vector< std::vector
< LauComplex > > & 
getFiFjSum () const
 Retrieve the event-by-event running totals of amplitude cross terms for all pairs of amplitude components. More...
 
const std::vector< std::vector
< LauComplex > > & 
getFiFjEffSum () const
 Retrieve the event-by-event running totals of efficiency corrected amplitude cross terms for all pairs of amplitude components. More...
 
const std::vector< Double_t > & getFNorm () const
 Retrieve the normalisation factors for the dynamic parts of the amplitudes for all of the amplitude components. More...
 
void fillDataTree (const LauFitDataTree &fitDataTree)
 Fill the internal data structure that caches the resonance dynamics. More...
 
void modifyDataTree ()
 Recache the amplitude values for those that have changed. More...
 
Bool_t hasResonance (const TString &resName) const
 Check whether this model includes a named resonance. More...
 
TString getConjResName (const TString &resName) const
 Retrieve the name of the charge conjugate of a named resonance. More...
 
void updateCoeffs (const std::vector< LauComplex > &coeffs)
 Update the complex coefficients for the resonances. More...
 
void flipHelicityForCPEigenstates (Bool_t boolean)
 Set the helicity flip flag for new amplitude components. More...
 
LauParameter getMeanEff () const
 Retrieve the mean efficiency across the Dalitz plot. More...
 
LauParameter getDPRate () const
 Retrieve the overall Dalitz plot rate. More...
 
const LauParArraygetFitFractions () const
 Retrieve the fit fractions for the amplitude components. More...
 
const LauParArraygetFitFractionsEfficiencyUncorrected () const
 Retrieve the fit fractions for the amplitude components. More...
 
UInt_t getnTotAmp () const
 Retrieve the total number of amplitude components. More...
 
UInt_t getnCohAmp () const
 Retrieve the number of coherent amplitude components. More...
 
UInt_t getnIncohAmp () const
 Retrieve the number of incoherent amplitude components. More...
 
Double_t getDPNorm () const
 Retrieve the normalisation factor for the log-likelihood function. More...
 
UInt_t nData () const
 Retrieve the number of cached events. More...
 
const std::vector
< LauCacheData * > & 
getCacheData () const
 Retrieve the cached data. More...
 
LauDaughtersgetDaughters ()
 Retrieve the daughters. More...
 
LauKinematicsgetKinematics ()
 Retrieve the Dalitz plot kinematics. More...
 
LauAbsEffModelgetEffModel ()
 Retrieve the model for the efficiency across the Dalitz plot. More...
 
LauAbsEffModelgetScfFractionModel ()
 Retrieve the model for the fraction of events that are poorly reconstructed (the self cross feed fraction) in each Dalitz plot bin for the first (or only) tagging category. More...
 
std::map< Int_t, LauAbsEffModel * > getScfFractionModels ()
 Retrieve the model for the fraction of events that are poorly reconstructed (the self cross feed fraction) in each Dalitz plot bin for all tagging categories. More...
 
Bool_t usingScfModel ()
 Check whether a self cross feed fraction model is being used. More...
 
std::vector< LauParametergetExtraParameters ()
 Retrieve any extra parameters/quantities (e.g. K-matrix total fit fractions) More...
 
std::vector< LauParameter * > & getFloatingParameters ()
 Retrieve the floating parameters of the resonance models. More...
 

Protected Member Functions

void initSummary ()
 Print a summary of the model to be used. More...
 
void initialiseVectors ()
 Initialise the internal storage for this model. More...
 
void resetNormVectors ()
 Zero the various values used to store integrals info. More...
 
void calcDPNormalisation ()
 Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot. More...
 
void calcDPNormalisationScheme ()
 Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot. More...
 
void findIntegralsToBeRecalculated ()
 Determine which amplitudes and integrals need to be recalculated. More...
 
void calcDPPartialIntegral (LauDPPartialIntegralInfo *intInfo)
 Calculate the Dalitz plot normalisation integrals over a given range. More...
 
void writeIntegralsFile ()
 Write the results of the integrals (and related information) to a file. More...
 
void setFFTerm (const UInt_t index, const Double_t realPart, const Double_t imagPart)
 Set the dynamic part of the amplitude for a given amplitude component at the current point in the Dalitz plot. More...
 
void setIncohIntenTerm (const UInt_t index, const Double_t value)
 Set the dynamic part of the intensity for a given incoherent amplitude component at the current point in the Dalitz plot. More...
 
void calculateAmplitudes ()
 Calculate the amplitudes for all resonances for the current kinematics. More...
 
void calculateAmplitudes (LauDPPartialIntegralInfo *intInfo, const UInt_t m13Point, const UInt_t m23Point)
 Calculate or retrieve the cached value of the amplitudes for all resonances at the specified integration grid point. More...
 
void addGridPointToIntegrals (const Double_t weight)
 Add the amplitude values (with the appropriate weight) at the current grid point to the running integral values. More...
 
void calcTotalAmp (const Bool_t useEff)
 Calculate the total Dalitz plot amplitude at the current point in the Dalitz plot. More...
 
Double_t retrieveEfficiency ()
 Obtain the efficiency of the current event from the model. More...
 
Double_t retrieveScfFraction (Int_t tagCat)
 Obtain the self cross feed fraction of the current event from the model. More...
 
void setASqMaxVarValue (Double_t value)
 Set the maximum of A squared that has been found. More...
 
Double_t calcSigDPNorm ()
 Calculate the normalisation factor for the log-likelihood function. More...
 
void resAmp (const UInt_t index)
 Calculate the dynamic part of the amplitude for a given component at the current point in the Dalitz plot. More...
 
void incohResAmp (const UInt_t index)
 Calculate the dynamic part of the intensity for a given incoherent component at the current point in the Dalitz plot. More...
 
void setDataEventNo (UInt_t iEvt)
 Load the data for a given event. More...
 
LauAbsResonancefindResonance (const TString &name)
 Retrieve the named resonance. More...
 
const LauAbsResonancefindResonance (const TString &name) const
 Retrieve the named resonance. More...
 
void removeCharge (TString &string) const
 Remove the charge from the given particle name. More...
 
Bool_t gotKMatrixMatch (UInt_t resAmpInt, const TString &propName) const
 Check whether a resonance is a K-matrix component of a given propagator. More...
 

Private Types

typedef std::map< TString,
LauKMatrixPropagator * > 
KMPropMap
 The type used for containing the K-matrix propagators. More...
 
typedef std::map< TString,
TString > 
KMStringMap
 The type used for mapping K-matrix components to their propagators. More...
 

Private Member Functions

 LauIsobarDynamics (const LauIsobarDynamics &rhs)
 Copy constructor (not implemented) More...
 
LauIsobarDynamicsoperator= (const LauIsobarDynamics &rhs)
 Copy assignment operator (not implemented) More...
 

Private Attributes

LauDaughtersdaughters_
 The daughters of the decay. More...
 
LauKinematicskinematics_
 The kinematics of the decay. More...
 
LauAbsEffModeleffModel_
 The efficiency model across the Dalitz plot. More...
 
LauTagCatScfFractionModelMap scfFractionModel_
 The self cross feed fraction models across the Dalitz plot. More...
 
UInt_t nAmp_
 The number of amplitude components. More...
 
UInt_t nIncohAmp_
 The number of incoherent amplitude components. More...
 
std::vector< LauComplexAmp_
 The complex coefficients for the amplitude components. More...
 
Double_t DPNorm_
 The normalisation factor for the log-likelihood function. More...
 
LauParArray fitFrac_
 The fit fractions for the amplitude components. More...
 
LauParArray fitFracEffUnCorr_
 The efficiency-uncorrected fit fractions for the amplitude components. More...
 
LauParameter DPRate_
 The overall Dalitz plot rate. More...
 
LauParameter meanDPEff_
 The mean efficiency across the Dalitz plot. More...
 
std::vector< LauCacheData * > data_
 The cached data for all events. More...
 
LauCacheDatacurrentEvent_
 The cached data for the current event. More...
 
std::vector< LauParameterextraParameters_
 any extra parameters/quantities (e.g. K-matrix total fit fractions) More...
 
std::vector< LauAbsResonance * > sigResonances_
 The resonances in the model. More...
 
std::vector< LauAbsIncohRes * > sigIncohResonances_
 The incoherent resonances in the model. More...
 
KMPropMap kMatrixPropagators_
 The K-matrix propagators. More...
 
KMStringMap kMatrixPropSet_
 The names of the M-matrix components in the model mapped to their propagators. More...
 
std::vector< TString > resTypAmp_
 The resonance types of all of the amplitude components. More...
 
std::vector< Int_t > resPairAmp_
 The index of the daughter not produced by the resonance for each amplitude component. More...
 
std::vector< TString > incohResTypAmp_
 The resonance types of all of the incoherent amplitude components. More...
 
std::vector< Int_t > incohResPairAmp_
 The index of the daughter not produced by the resonance for each incoherent amplitude component. More...
 
std::vector< Int_t > typDaug_
 The PDG codes of the daughters. More...
 
Bool_t symmetricalDP_
 Whether the Dalitz plot is symmetrical. More...
 
Bool_t fullySymmetricDP_
 Whether the Dalitz plot is fully symmetric. More...
 
Bool_t integralsDone_
 Whether the integrals have been performed. More...
 
Bool_t normalizationSchemeDone_
 Whether the scheme for the integration has been determined. More...
 
std::vector
< LauDPPartialIntegralInfo * > 
dpPartialIntegralInfo_
 The storage of the integration scheme. More...
 
TString intFileName_
 The name of the file to save integrals to. More...
 
Double_t m13BinWidth_
 The bin width to use when integrating over m13. More...
 
Double_t m23BinWidth_
 The bin width to use when integrating over m23. More...
 
Double_t narrowWidth_
 The value below which a resonance width is considered to be narrow. More...
 
Double_t binningFactor_
 The factor relating the width of the narrowest resonance and the binning size. More...
 
Double_t m13Sq_
 The invariant mass squared of the first and third daughters. More...
 
Double_t m23Sq_
 The invariant mass squared of the second and third daughters. More...
 
Double_t mPrime_
 The square Dalitz plot coordinate, m'. More...
 
Double_t thPrime_
 The square Dalitz plot coordinate theta'. More...
 
Int_t tagCat_
 The tagging category. More...
 
Double_t eff_
 The efficiency at the current point in the Dalitz plot. More...
 
Double_t scfFraction_
 The fraction of events that are poorly reconstructed (the self cross feed fraction) at the current point in the Dalitz plot. More...
 
Double_t jacobian_
 The Jacobian, for the transformation into square DP coordinates at the current point in the Dalitz plot. More...
 
Double_t ASq_
 The value of A squared for the current event. More...
 
Double_t evtLike_
 The normalised likelihood for the current event. More...
 
LauComplex totAmp_
 The total amplitude for the current event. More...
 
std::vector< std::vector
< LauComplex > > 
fifjEffSum_
 The event-by-event running total of efficiency corrected amplitude cross terms for each pair of amplitude components. More...
 
std::vector< std::vector
< LauComplex > > 
fifjSum_
 The event-by-event running total of the amplitude cross terms for each pair of amplitude components. More...
 
std::vector< LauComplexff_
 The dynamic part of the amplitude for each amplitude component at the current point in the Dalitz plot. More...
 
std::vector< Double_t > incohInten_
 The dynamic part of the intensity for each incoherent amplitude component at the current point in the Dalitz plot. More...
 
std::vector< Double_t > fSqSum_
 The event-by-event running total of the dynamical amplitude squared for each amplitude component. More...
 
std::vector< Double_t > fSqEffSum_
 The event-by-event running total of the dynamical amplitude squared for each amplitude component. More...
 
std::vector< Double_t > fNorm_
 The normalisation factors for the dynamic parts of the amplitude for each amplitude component. More...
 
Int_t iterationsMax_
 The maximum allowed number of attempts when generating an event. More...
 
Int_t nSigGenLoop_
 The number of unsucessful attempts to generate an event so far. More...
 
Double_t aSqMaxSet_
 The maximum allowed value of A squared. More...
 
Double_t aSqMaxVar_
 The maximum value of A squared that has been seen so far while generating. More...
 
Bool_t flipHelicity_
 The helicity flip flag for new amplitude components. More...
 
Bool_t recalcNormalisation_
 Flag to recalculate the normalisation. More...
 
std::vector< LauParameter * > resonancePars_
 List of floating resonance parameters. More...
 
std::vector< Double_t > resonanceParValues_
 List of floating resonance parameter values from previous calculation. More...
 
std::vector< std::vector
< UInt_t > > 
resonanceParResIndex_
 Indices in sigResonances_ to point to the corresponding signal resonance(s) for each floating parameter. More...
 
std::set< UInt_t > integralsToBeCalculated_
 Resonance indices for which the amplitudes and integrals should be recalculated. More...
 

Detailed Description

Class for defining signal dynamics using the isobar model.

Definition at line 39 of file LauIsobarDynamics.hh.

Member Typedef Documentation

typedef std::map<TString, LauKMatrixPropagator*> LauIsobarDynamics::KMPropMap
private

The type used for containing the K-matrix propagators.

Definition at line 609 of file LauIsobarDynamics.hh.

typedef std::map<TString, TString> LauIsobarDynamics::KMStringMap
private

The type used for mapping K-matrix components to their propagators.

Definition at line 612 of file LauIsobarDynamics.hh.

The type used for containing multiple self cross feed fraction models for different categories (e.g. tagging categories)

Definition at line 43 of file LauIsobarDynamics.hh.

Member Enumeration Documentation

The possible statuses for toy MC generation.

Enumerator
GenOK 

Generation completed OK

MaxIterError 

Maximum allowed number of iterations completed without success (ASqMax is too high)

ASqMaxError 

An amplitude squared value was returned that was larger than the maximum expected (ASqMax is too low)

Definition at line 46 of file LauIsobarDynamics.hh.

Constructor & Destructor Documentation

LauIsobarDynamics::LauIsobarDynamics ( LauDaughters daughters,
LauAbsEffModel effModel,
LauAbsEffModel scfFractionModel = 0 
)

Constructor.

Parameters
[in]daughtersthe daughters of the decay
[in]effModelthe model to describe the efficiency across the Dalitz plot
[in]scfFractionModelthe model to describe the fraction of poorly constructed events (the self cross feed fraction) across the Dalitz plot

Definition at line 49 of file LauIsobarDynamics.cc.

LauIsobarDynamics::LauIsobarDynamics ( LauDaughters daughters,
LauAbsEffModel effModel,
LauTagCatScfFractionModelMap  scfFractionModel 
)

Constructor.

Parameters
[in]daughtersthe daughters of the decay
[in]effModelthe model to describe the efficiency across the Dalitz plot
[in]scfFractionModelthe models to describe the fraction of poorly constructed events (the self cross feed fraction) across the Dalitz plot for various tagging categories

Definition at line 106 of file LauIsobarDynamics.cc.

LauIsobarDynamics::~LauIsobarDynamics ( )
virtual

Destructor.

Definition at line 159 of file LauIsobarDynamics.cc.

LauIsobarDynamics::LauIsobarDynamics ( const LauIsobarDynamics rhs)
private

Copy constructor (not implemented)

Member Function Documentation

void LauIsobarDynamics::addGridPointToIntegrals ( const Double_t  weight)
protected

Add the amplitude values (with the appropriate weight) at the current grid point to the running integral values.

Parameters
[in]weightthe weight to apply

Definition at line 1611 of file LauIsobarDynamics.cc.

LauAbsResonance * LauIsobarDynamics::addIncoherentResonance ( const TString &  resName,
const Int_t  resPairAmpInt,
const LauAbsResonance::LauResonanceModel  resType 
)

Add an incoherent resonance to the Dalitz plot.

Note that incoherent components must be added to the model last

Parameters
[in]resNamethe name of the resonant particle
[in]resPairAmpIntthe index of the daughter not produced by the resonance
[in]resTypethe model for the resonance dynamics
Returns
the newly created resonance

Definition at line 713 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::addKMatrixProdPole ( const TString &  poleName,
const TString &  propName,
Int_t  poleIndex 
)

Add a K-matrix production pole term to the model.

Parameters
[in]poleNamethe name of the pole
[in]propNamethe name of the propagator to use
[in]poleIndexthe index of the pole within the propagator

Definition at line 781 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::addKMatrixProdSVP ( const TString &  SVPName,
const TString &  propName,
Int_t  channelIndex 
)

Add a K-matrix slowly-varying part (SVP) term to the model.

Parameters
[in]SVPNamethe name of the term
[in]propNamethe name of the propagator to use
[in]channelIndexthe index of the channel within the propagator

Definition at line 828 of file LauIsobarDynamics.cc.

LauAbsResonance * LauIsobarDynamics::addResonance ( const TString &  resName,
const Int_t  resPairAmpInt,
const LauAbsResonance::LauResonanceModel  resType,
const LauBlattWeisskopfFactor::BlattWeisskopfCategory  bwCategory = LauBlattWeisskopfFactor::Default,
const LauBlattWeisskopfFactor::BarrierType  bwType = LauBlattWeisskopfFactor::BWPrimeBarrier 
)

Add a resonance to the Dalitz plot.

Parameters
[in]resNamethe name of the resonant particle
[in]resPairAmpIntthe index of the daughter not produced by the resonance
[in]resTypethe model for the resonance dynamics
[in]bwCategorythe Blatt-Weisskopf barrier factor category
[in]bwTypethe Blatt-Weisskopf barrier type
Returns
the newly created resonance

Definition at line 654 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcDPNormalisation ( )
protected

Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot.

Definition at line 949 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcDPNormalisationScheme ( )
protected

Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot.

Definition at line 966 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcDPPartialIntegral ( LauDPPartialIntegralInfo intInfo)
protected

Calculate the Dalitz plot normalisation integrals over a given range.

Parameters
[in]intInfothe integration information object

Definition at line 1469 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcExtraInfo ( const Bool_t  init = kFALSE)

Calculate the fit fractions, mean efficiency and total DP rate.

Parameters
[in]initwhether the calculated values should be stored as the initial/generated values or the fitted values

Definition at line 1803 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcLikelihoodInfo ( const UInt_t  iEvt)

Calculate the likelihood (and all associated information) for the given event number.

Parameters
[in]iEvtthe event number

Definition at line 2172 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcLikelihoodInfo ( const Double_t  m13Sq,
const Double_t  m23Sq 
)

Calculate the likelihood (and all associated information) given values of the Dalitz plot coordinates.

Parameters
[in]m13Sqthe invariant mass squared of the first and third daughters
[in]m23Sqthe invariant mass squared of the second and third daughters

Definition at line 2203 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcLikelihoodInfo ( const Double_t  m13Sq,
const Double_t  m23Sq,
const Int_t  tagCat 
)

Calculate the likelihood (and all associated information) given values of the Dalitz plot coordinates and the tagging category.

Also obtain the self cross feed fraction to cache with the rest of the Dalitz plot quantities.

Parameters
[in]m13Sqthe invariant mass squared of the first and third daughters
[in]m23Sqthe invariant mass squared of the second and third daughters
[in]tagCatthe tagging category

Definition at line 2208 of file LauIsobarDynamics.cc.

Double_t LauIsobarDynamics::calcSigDPNorm ( )
protected

Calculate the normalisation factor for the log-likelihood function.

Returns
the normalisation factor

Definition at line 2013 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calcTotalAmp ( const Bool_t  useEff)
protected

Calculate the total Dalitz plot amplitude at the current point in the Dalitz plot.

Parameters
[in]useEffwhether to apply efficiency corrections

Definition at line 1568 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calculateAmplitudes ( )
protected

Calculate the amplitudes for all resonances for the current kinematics.

Definition at line 1549 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::calculateAmplitudes ( LauDPPartialIntegralInfo intInfo,
const UInt_t  m13Point,
const UInt_t  m23Point 
)
protected

Calculate or retrieve the cached value of the amplitudes for all resonances at the specified integration grid point.

Parameters
[in,out]intInfothe integration information object
[in]m13Pointthe grid index in m13
[in]m23Pointthe grid index in m23

Definition at line 1511 of file LauIsobarDynamics.cc.

LauIsobarDynamics::ToyMCStatus LauIsobarDynamics::checkToyMC ( Bool_t  printErrorMessages = kTRUE,
Bool_t  printInfoMessages = kFALSE 
)

Check the status of the toy MC generation.

Parameters
[in]printErrorMessageswhether error messages should be printed
[in]printInfoMessageswhether info messages should be printed
Returns
the status of the toy MC generation

Definition at line 2106 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::defineKMatrixPropagator ( const TString &  propName,
const TString &  paramFileName,
Int_t  resPairAmpInt,
Int_t  nChannels,
Int_t  nPoles,
Int_t  rowIndex = 1 
)

Define a new K-matrix Propagator.

Parameters
[in]propNamethe name of the propagator
[in]paramFileNamethe file that defines the propagator
[in]resPairAmpIntthe index of the bachelor
[in]nChannelsthe number of channels
[in]nPolesthe number of poles
[in]rowIndexthe index of the row to be used when summing over all amplitude channels: S-wave corresponds to rowIndex = 1.

Definition at line 754 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::fillDataTree ( const LauFitDataTree fitDataTree)

Fill the internal data structure that caches the resonance dynamics.

Parameters
[in]fitDataTreethe data source

Definition at line 2274 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::findIntegralsToBeRecalculated ( )
protected

Determine which amplitudes and integrals need to be recalculated.

Definition at line 218 of file LauIsobarDynamics.cc.

LauAbsResonance * LauIsobarDynamics::findResonance ( const TString &  name)
protected

Retrieve the named resonance.

Parameters
[in]namethe name of the resonance to retrieve
Returns
the named resonance

Definition at line 873 of file LauIsobarDynamics.cc.

const LauAbsResonance * LauIsobarDynamics::findResonance ( const TString &  name) const
protected

Retrieve the named resonance.

Parameters
[in]namethe name of the resonance to retrieve
Returns
the named resonance

Definition at line 905 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::flipHelicityForCPEigenstates ( Bool_t  boolean)
inline

Set the helicity flip flag for new amplitude components.

Parameters
[in]booleanthe helicity flip flag

Definition at line 354 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::generate ( )

Generate a toy MC signal event.

Returns
kTRUE if the event is successfully generated, kFALSE otherwise

Definition at line 2051 of file LauIsobarDynamics.cc.

Double_t LauIsobarDynamics::getASqMaxSetValue ( ) const
inline

Retrieve the maximum value of A squared to be used in the accept/reject.

Returns
the maximum value of A squared

Definition at line 171 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getASqMaxVarValue ( ) const
inline

Retrieve the maximum of A squared that has been found while generating.

Returns
the maximum of A squared that has been found

Definition at line 177 of file LauIsobarDynamics.hh.

const std::vector<LauCacheData*>& LauIsobarDynamics::getCacheData ( ) const
inline

Retrieve the cached data.

Returns
the cached data

Definition at line 414 of file LauIsobarDynamics.hh.

TString LauIsobarDynamics::getConjResName ( const TString &  resName) const

Retrieve the name of the charge conjugate of a named resonance.

Parameters
[in]resNamethe resonance
Returns
the name of the charge conjugate

Definition at line 2426 of file LauIsobarDynamics.cc.

LauDaughters* LauIsobarDynamics::getDaughters ( )
inline

Retrieve the daughters.

Returns
the daughters

Definition at line 420 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getDPNorm ( ) const
inline

Retrieve the normalisation factor for the log-likelihood function.

Returns
the normalisation factor

Definition at line 402 of file LauIsobarDynamics.hh.

LauParameter LauIsobarDynamics::getDPRate ( ) const
inline

Retrieve the overall Dalitz plot rate.

Returns
the overall Dalitz plot rate

Definition at line 366 of file LauIsobarDynamics.hh.

LauComplex LauIsobarDynamics::getDynamicAmp ( Int_t  resID) const
inline

Retrieve the normalised dynamic part of the amplitude of the given amplitude component at the current point in the Dalitz plot.

Parameters
[in]resIDthe index of the amplitude component within the model
Returns
the amplitude of the given amplitude component

Definition at line 301 of file LauIsobarDynamics.hh.

LauAbsEffModel* LauIsobarDynamics::getEffModel ( )
inline

Retrieve the model for the efficiency across the Dalitz plot.

Returns
the efficiency model

Definition at line 432 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEventWeight ( )

Calculate the acceptance rate, for events with the current kinematics, when generating events according to the model.

Returns
the weight for the current kinematics

Definition at line 2381 of file LauIsobarDynamics.cc.

const LauComplex& LauIsobarDynamics::getEvtDPAmp ( ) const
inline

Retrieve the total amplitude for the current event.

Returns
the total amplitude

Definition at line 244 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtEff ( ) const
inline

Retrieve the efficiency for the current event.

Returns
the efficiency for the current event

Definition at line 274 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtJacobian ( ) const
inline

Retrieve the Jacobian, for the transformation into square DP coordinates, for the current event.

Returns
the Jacobian for the current event

Definition at line 286 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtLikelihood ( ) const
inline

Retrieve the likelihood for the current event.

evtLike_ = totAmp_.abs2()*eff_/DPNorm_

Returns
the likelihood for the current event

Definition at line 294 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtm13Sq ( ) const
inline

Retrieve the invariant mass squared of the first and third daughters in the current event.

Returns
the invariant mass squared of the first and third daughters in the current event

Definition at line 250 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtm23Sq ( ) const
inline

Retrieve the invariant mass squared of the second and third daughters in the current event.

Returns
the invariant mass squared of the second and third daughters in the current event

Definition at line 256 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtmPrime ( ) const
inline

Retrieve the square Dalitz plot coordinate, m', for the current event.

Returns
the square Dalitz plot coordinate, m', for the current event

Definition at line 262 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtScfFraction ( ) const
inline

Retrieve the fraction of events that are poorly reconstructed (the self cross feed fraction) for the current event.

Returns
the self cross feed fraction for the current event

Definition at line 280 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::getEvtthPrime ( ) const
inline

Retrieve the square Dalitz plot coordinate, theta', for the current event.

Returns
the square Dalitz plot coordinate, theta', for the current event

Definition at line 268 of file LauIsobarDynamics.hh.

std::vector<LauParameter> LauIsobarDynamics::getExtraParameters ( )
inline

Retrieve any extra parameters/quantities (e.g. K-matrix total fit fractions)

Returns
any extra parameters

Definition at line 456 of file LauIsobarDynamics.hh.

const std::vector< std::vector<LauComplex> >& LauIsobarDynamics::getFiFjEffSum ( ) const
inline

Retrieve the event-by-event running totals of efficiency corrected amplitude cross terms for all pairs of amplitude components.

Returns
the event-by-event running totals of amplitude cross terms with efficiency corrections applied

Definition at line 313 of file LauIsobarDynamics.hh.

const std::vector< std::vector<LauComplex> >& LauIsobarDynamics::getFiFjSum ( ) const
inline

Retrieve the event-by-event running totals of amplitude cross terms for all pairs of amplitude components.

Returns
the event-by-event running totals of amplitude cross terms

Definition at line 307 of file LauIsobarDynamics.hh.

const LauParArray& LauIsobarDynamics::getFitFractions ( ) const
inline

Retrieve the fit fractions for the amplitude components.

Returns
the fit fractions

Definition at line 372 of file LauIsobarDynamics.hh.

const LauParArray& LauIsobarDynamics::getFitFractionsEfficiencyUncorrected ( ) const
inline

Retrieve the fit fractions for the amplitude components.

Returns
the fit fractions

Definition at line 378 of file LauIsobarDynamics.hh.

std::vector<LauParameter*>& LauIsobarDynamics::getFloatingParameters ( )
inline

Retrieve the floating parameters of the resonance models.

Returns
the list of floating parameters

Definition at line 462 of file LauIsobarDynamics.hh.

const std::vector<Double_t>& LauIsobarDynamics::getFNorm ( ) const
inline

Retrieve the normalisation factors for the dynamic parts of the amplitudes for all of the amplitude components.

Returns
the normalisation factors

Definition at line 319 of file LauIsobarDynamics.hh.

LauKinematics* LauIsobarDynamics::getKinematics ( )
inline

Retrieve the Dalitz plot kinematics.

Returns
the Dalitz plot kinematics

Definition at line 426 of file LauIsobarDynamics.hh.

LauParameter LauIsobarDynamics::getMeanEff ( ) const
inline

Retrieve the mean efficiency across the Dalitz plot.

Returns
the mean efficiency across the Dalitz plot

Definition at line 360 of file LauIsobarDynamics.hh.

UInt_t LauIsobarDynamics::getnCohAmp ( ) const
inline

Retrieve the number of coherent amplitude components.

Returns
the number of coherent amplitude components

Definition at line 390 of file LauIsobarDynamics.hh.

UInt_t LauIsobarDynamics::getnIncohAmp ( ) const
inline

Retrieve the number of incoherent amplitude components.

Returns
the number of incoherent amplitude components

Definition at line 396 of file LauIsobarDynamics.hh.

UInt_t LauIsobarDynamics::getnTotAmp ( ) const
inline

Retrieve the total number of amplitude components.

Returns
the total number of amplitude components

Definition at line 384 of file LauIsobarDynamics.hh.

LauAbsEffModel* LauIsobarDynamics::getScfFractionModel ( )
inline

Retrieve the model for the fraction of events that are poorly reconstructed (the self cross feed fraction) in each Dalitz plot bin for the first (or only) tagging category.

Returns
the self cross feed fraction model

Definition at line 438 of file LauIsobarDynamics.hh.

std::map<Int_t,LauAbsEffModel*> LauIsobarDynamics::getScfFractionModels ( )
inline

Retrieve the model for the fraction of events that are poorly reconstructed (the self cross feed fraction) in each Dalitz plot bin for all tagging categories.

Returns
the self cross feed fraction models

Definition at line 444 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::gotKMatrixMatch ( UInt_t  resAmpInt,
const TString &  propName 
) const
protected

Check whether a resonance is a K-matrix component of a given propagator.

Parameters
[in]resAmpIntthe index of the resonance within the model
[in]propNamethe name of the K-matrix propagator
Returns
true if the resonance is a component of the given propagator, otherwise return false

Definition at line 1983 of file LauIsobarDynamics.cc.

Bool_t LauIsobarDynamics::gotReweightedEvent ( )

Calculates whether an event with the current kinematics should be accepted in order to produce a distribution of events that matches the model e.g. when reweighting embedded data.

Uses the accept/reject method.

Returns
kTRUE if the event has been accepted, kFALSE otherwise

Definition at line 2360 of file LauIsobarDynamics.cc.

Bool_t LauIsobarDynamics::hasResonance ( const TString &  resName) const

Check whether this model includes a named resonance.

Parameters
[in]resNamethe resonance
Returns
true if the resonance is present, false otherwise

Definition at line 2416 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::incohResAmp ( const UInt_t  index)
protected

Calculate the dynamic part of the intensity for a given incoherent component at the current point in the Dalitz plot.

Parameters
[in]indexthe index of the incoherent component within the model

Definition at line 1712 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::initialise ( const std::vector< LauComplex > &  coeffs)

Initialise the Dalitz plot dynamics.

Parameters
[in]coeffsthe complex coefficients for the resonances

Definition at line 241 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::initialiseVectors ( )
protected

Initialise the internal storage for this model.

Definition at line 477 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::initSummary ( )
protected

Print a summary of the model to be used.

Definition at line 410 of file LauIsobarDynamics.cc.

Int_t LauIsobarDynamics::maxGenIterations ( ) const
inline

Retrieve the maximum number of iterations allowed when generating an event.

Returns
the maximum number of iterations allowed

Definition at line 197 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::modifyDataTree ( )

Recache the amplitude values for those that have changed.

Definition at line 2237 of file LauIsobarDynamics.cc.

UInt_t LauIsobarDynamics::nData ( ) const
inline

Retrieve the number of cached events.

Returns
the number of cached events

Definition at line 408 of file LauIsobarDynamics.hh.

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

Copy assignment operator (not implemented)

void LauIsobarDynamics::recalculateNormalisation ( )

recalculate Normalization

Definition at line 200 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::removeCharge ( TString &  string) const
protected

Remove the charge from the given particle name.

Parameters
[in,out]stringthe particle name

Definition at line 937 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::resAmp ( const UInt_t  index)
protected

Calculate the dynamic part of the amplitude for a given component at the current point in the Dalitz plot.

Parameters
[in]indexthe index of the amplitude component within the model

Definition at line 1651 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::resetNormVectors ( )
protected

Zero the various values used to store integrals info.

Definition at line 175 of file LauIsobarDynamics.cc.

Double_t LauIsobarDynamics::retrieveEfficiency ( )
protected

Obtain the efficiency of the current event from the model.

Returns
the efficiency

Definition at line 2443 of file LauIsobarDynamics.cc.

Double_t LauIsobarDynamics::retrieveScfFraction ( Int_t  tagCat)
protected

Obtain the self cross feed fraction of the current event from the model.

Parameters
[in]tagCatthe tagging category of the current event
Returns
the self cross feed fraction

Definition at line 2452 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::setASqMaxValue ( Double_t  value)
inline

Set the maximum value of A squared to be used in the accept/reject.

Parameters
[in]valuethe new value

Definition at line 165 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::setASqMaxVarValue ( Double_t  value)
inlineprotected

Set the maximum of A squared that has been found.

Parameters
[in]valuethe new value

Definition at line 547 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::setDataEventNo ( UInt_t  iEvt)
protected

Load the data for a given event.

Parameters
[in]iEvtthe number of the event

Definition at line 2153 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::setFFTerm ( const UInt_t  index,
const Double_t  realPart,
const Double_t  imagPart 
)
protected

Set the dynamic part of the amplitude for a given amplitude component at the current point in the Dalitz plot.

Parameters
[in]indexthe index of the amplitude component
[in]realPartthe real part of the amplitude
[in]imagPartthe imaginary part of the amplitude

Definition at line 1781 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::setIncohIntenTerm ( const UInt_t  index,
const Double_t  value 
)
protected

Set the dynamic part of the intensity for a given incoherent amplitude component at the current point in the Dalitz plot.

Parameters
[in]indexthe index of the incoherent amplitude component
[in]valuethe intensity

Definition at line 1792 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::setIntegralBinningFactor ( const Double_t  binningFactor)
inline

Set the factor relating the width of a narrow resonance and the binning size in its integration region.

Narrow resonances trigger different integration behaviour - dividing the DP into regions where a finer binning is used. This can cause high memory usage, so use this method and LauIsobarDynamics::setNarrowResonanceThreshold to tune this behaviour, if needed.

Parameters
[in]binningFactorthe factor by which the resonance width is divided to obtain the bin size (defaults to 100)

Definition at line 110 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::setIntegralBinWidths ( const Double_t  m13BinWidth,
const Double_t  m23BinWidth 
)

Set the widths of the bins to use when integrating across the Dalitz plot.

Parameters
[in]m13BinWidththe bin width to use when integrating over m13
[in]m23BinWidththe bin width to use when integrating over m23

Definition at line 1458 of file LauIsobarDynamics.cc.

void LauIsobarDynamics::setIntFileName ( const TString &  fileName)
inline

Set the name of the file to which to save the results of the integrals.

Parameters
[in]fileNamethe name of the file

Definition at line 84 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::setNarrowResonanceThreshold ( const Double_t  narrowWidth)
inline

Set the value below which a resonance width is considered to be narrow.

Narrow resonances trigger different integration behaviour - dividing the DP into regions where a finer binning is used. This can cause high memory usage, so use this method and LauIsobarDynamics::setIntegralBinningFactor to tune this behaviour, if needed.

Parameters
[in]narrowWidththe value below which a resonance is considered to be narrow (defaults to 0.02 GeV/c2)

Definition at line 101 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::updateCoeffs ( const std::vector< LauComplex > &  coeffs)

Update the complex coefficients for the resonances.

Parameters
[in]coeffsthe new set of coefficients

Definition at line 2395 of file LauIsobarDynamics.cc.

Bool_t LauIsobarDynamics::usingScfModel ( )
inline

Check whether a self cross feed fraction model is being used.

Returns
true if a self cross feed fraction model is being used, false otherwise

Definition at line 450 of file LauIsobarDynamics.hh.

void LauIsobarDynamics::writeIntegralsFile ( )
protected

Write the results of the integrals (and related information) to a file.

Definition at line 533 of file LauIsobarDynamics.cc.

Member Data Documentation

std::vector<LauComplex> LauIsobarDynamics::Amp_
private

The complex coefficients for the amplitude components.

Definition at line 637 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::ASq_
private

The value of A squared for the current event.

Definition at line 745 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::aSqMaxSet_
private

The maximum allowed value of A squared.

Definition at line 787 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::aSqMaxVar_
private

The maximum value of A squared that has been seen so far while generating.

Definition at line 790 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::binningFactor_
private

The factor relating the width of the narrowest resonance and the binning size.

Definition at line 718 of file LauIsobarDynamics.hh.

LauCacheData* LauIsobarDynamics::currentEvent_
private

The cached data for the current event.

Definition at line 658 of file LauIsobarDynamics.hh.

std::vector<LauCacheData*> LauIsobarDynamics::data_
private

The cached data for all events.

Definition at line 655 of file LauIsobarDynamics.hh.

LauDaughters* LauIsobarDynamics::daughters_
private

The daughters of the decay.

Definition at line 615 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::DPNorm_
private

The normalisation factor for the log-likelihood function.

Definition at line 640 of file LauIsobarDynamics.hh.

std::vector<LauDPPartialIntegralInfo*> LauIsobarDynamics::dpPartialIntegralInfo_
private

The storage of the integration scheme.

Definition at line 703 of file LauIsobarDynamics.hh.

LauParameter LauIsobarDynamics::DPRate_
private

The overall Dalitz plot rate.

Definition at line 649 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::eff_
private

The efficiency at the current point in the Dalitz plot.

Definition at line 736 of file LauIsobarDynamics.hh.

LauAbsEffModel* LauIsobarDynamics::effModel_
private

The efficiency model across the Dalitz plot.

Definition at line 621 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::evtLike_
private

The normalised likelihood for the current event.

Definition at line 748 of file LauIsobarDynamics.hh.

std::vector<LauParameter> LauIsobarDynamics::extraParameters_
private

any extra parameters/quantities (e.g. K-matrix total fit fractions)

Definition at line 661 of file LauIsobarDynamics.hh.

std::vector<LauComplex> LauIsobarDynamics::ff_
private

The dynamic part of the amplitude for each amplitude component at the current point in the Dalitz plot.

Definition at line 766 of file LauIsobarDynamics.hh.

std::vector< std::vector<LauComplex> > LauIsobarDynamics::fifjEffSum_
private

The event-by-event running total of efficiency corrected amplitude cross terms for each pair of amplitude components.

Calculated as the sum of ff_[i]*ff_[j]*efficiency for all events

Definition at line 757 of file LauIsobarDynamics.hh.

std::vector< std::vector<LauComplex> > LauIsobarDynamics::fifjSum_
private

The event-by-event running total of the amplitude cross terms for each pair of amplitude components.

Calculated as the sum of ff_[i]*ff_[j] for all events

Definition at line 763 of file LauIsobarDynamics.hh.

LauParArray LauIsobarDynamics::fitFrac_
private

The fit fractions for the amplitude components.

Definition at line 643 of file LauIsobarDynamics.hh.

LauParArray LauIsobarDynamics::fitFracEffUnCorr_
private

The efficiency-uncorrected fit fractions for the amplitude components.

Definition at line 646 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::flipHelicity_
private

The helicity flip flag for new amplitude components.

Definition at line 793 of file LauIsobarDynamics.hh.

std::vector<Double_t> LauIsobarDynamics::fNorm_
private

The normalisation factors for the dynamic parts of the amplitude for each amplitude component.

Definition at line 778 of file LauIsobarDynamics.hh.

std::vector<Double_t> LauIsobarDynamics::fSqEffSum_
private

The event-by-event running total of the dynamical amplitude squared for each amplitude component.

Definition at line 775 of file LauIsobarDynamics.hh.

std::vector<Double_t> LauIsobarDynamics::fSqSum_
private

The event-by-event running total of the dynamical amplitude squared for each amplitude component.

Definition at line 772 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::fullySymmetricDP_
private

Whether the Dalitz plot is fully symmetric.

Definition at line 694 of file LauIsobarDynamics.hh.

std::vector<Double_t> LauIsobarDynamics::incohInten_
private

The dynamic part of the intensity for each incoherent amplitude component at the current point in the Dalitz plot.

Definition at line 769 of file LauIsobarDynamics.hh.

std::vector<Int_t> LauIsobarDynamics::incohResPairAmp_
private

The index of the daughter not produced by the resonance for each incoherent amplitude component.

Definition at line 685 of file LauIsobarDynamics.hh.

std::vector<TString> LauIsobarDynamics::incohResTypAmp_
private

The resonance types of all of the incoherent amplitude components.

Definition at line 682 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::integralsDone_
private

Whether the integrals have been performed.

Definition at line 697 of file LauIsobarDynamics.hh.

std::set<UInt_t> LauIsobarDynamics::integralsToBeCalculated_
private

Resonance indices for which the amplitudes and integrals should be recalculated.

Definition at line 808 of file LauIsobarDynamics.hh.

TString LauIsobarDynamics::intFileName_
private

The name of the file to save integrals to.

Definition at line 706 of file LauIsobarDynamics.hh.

Int_t LauIsobarDynamics::iterationsMax_
private

The maximum allowed number of attempts when generating an event.

Definition at line 781 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::jacobian_
private

The Jacobian, for the transformation into square DP coordinates at the current point in the Dalitz plot.

Definition at line 742 of file LauIsobarDynamics.hh.

LauKinematics* LauIsobarDynamics::kinematics_
private

The kinematics of the decay.

Definition at line 618 of file LauIsobarDynamics.hh.

KMPropMap LauIsobarDynamics::kMatrixPropagators_
private

The K-matrix propagators.

Definition at line 670 of file LauIsobarDynamics.hh.

KMStringMap LauIsobarDynamics::kMatrixPropSet_
private

The names of the M-matrix components in the model mapped to their propagators.

Definition at line 673 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::m13BinWidth_
private

The bin width to use when integrating over m13.

Definition at line 709 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::m13Sq_
private

The invariant mass squared of the first and third daughters.

Definition at line 721 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::m23BinWidth_
private

The bin width to use when integrating over m23.

Definition at line 712 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::m23Sq_
private

The invariant mass squared of the second and third daughters.

Definition at line 724 of file LauIsobarDynamics.hh.

LauParameter LauIsobarDynamics::meanDPEff_
private

The mean efficiency across the Dalitz plot.

Definition at line 652 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::mPrime_
private

The square Dalitz plot coordinate, m'.

Definition at line 727 of file LauIsobarDynamics.hh.

UInt_t LauIsobarDynamics::nAmp_
private

The number of amplitude components.

Definition at line 631 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::narrowWidth_
private

The value below which a resonance width is considered to be narrow.

Definition at line 715 of file LauIsobarDynamics.hh.

UInt_t LauIsobarDynamics::nIncohAmp_
private

The number of incoherent amplitude components.

Definition at line 634 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::normalizationSchemeDone_
private

Whether the scheme for the integration has been determined.

Definition at line 700 of file LauIsobarDynamics.hh.

Int_t LauIsobarDynamics::nSigGenLoop_
private

The number of unsucessful attempts to generate an event so far.

Definition at line 784 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::recalcNormalisation_
private

Flag to recalculate the normalisation.

Definition at line 796 of file LauIsobarDynamics.hh.

std::vector< std::vector<UInt_t> > LauIsobarDynamics::resonanceParResIndex_
private

Indices in sigResonances_ to point to the corresponding signal resonance(s) for each floating parameter.

Definition at line 805 of file LauIsobarDynamics.hh.

std::vector<LauParameter*> LauIsobarDynamics::resonancePars_
private

List of floating resonance parameters.

Definition at line 799 of file LauIsobarDynamics.hh.

std::vector<Double_t> LauIsobarDynamics::resonanceParValues_
private

List of floating resonance parameter values from previous calculation.

Definition at line 802 of file LauIsobarDynamics.hh.

std::vector<Int_t> LauIsobarDynamics::resPairAmp_
private

The index of the daughter not produced by the resonance for each amplitude component.

Definition at line 679 of file LauIsobarDynamics.hh.

std::vector<TString> LauIsobarDynamics::resTypAmp_
private

The resonance types of all of the amplitude components.

Definition at line 676 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::scfFraction_
private

The fraction of events that are poorly reconstructed (the self cross feed fraction) at the current point in the Dalitz plot.

Definition at line 739 of file LauIsobarDynamics.hh.

LauTagCatScfFractionModelMap LauIsobarDynamics::scfFractionModel_
private

The self cross feed fraction models across the Dalitz plot.

These model the fraction of signal events that are poorly reconstructed (the self cross feed fraction) as a function of Dalitz plot position. If the self cross feed is depependent on the tagging category then seperate models can be defined.

Definition at line 628 of file LauIsobarDynamics.hh.

std::vector<LauAbsIncohRes*> LauIsobarDynamics::sigIncohResonances_
private

The incoherent resonances in the model.

Definition at line 667 of file LauIsobarDynamics.hh.

std::vector<LauAbsResonance*> LauIsobarDynamics::sigResonances_
private

The resonances in the model.

Definition at line 664 of file LauIsobarDynamics.hh.

Bool_t LauIsobarDynamics::symmetricalDP_
private

Whether the Dalitz plot is symmetrical.

Definition at line 691 of file LauIsobarDynamics.hh.

Int_t LauIsobarDynamics::tagCat_
private

The tagging category.

Definition at line 733 of file LauIsobarDynamics.hh.

Double_t LauIsobarDynamics::thPrime_
private

The square Dalitz plot coordinate theta'.

Definition at line 730 of file LauIsobarDynamics.hh.

LauComplex LauIsobarDynamics::totAmp_
private

The total amplitude for the current event.

Definition at line 751 of file LauIsobarDynamics.hh.

std::vector<Int_t> LauIsobarDynamics::typDaug_
private

The PDG codes of the daughters.

Definition at line 688 of file LauIsobarDynamics.hh.


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