LauIsobarDynamics.cc
Go to the documentation of this file.
128 // for Kspipi, we need a scfFraction 2D histogram for each tagging category. They are provided by the map.
129 // Also, we need to know the place that the tagging category of the current event occupies in the data structure inputFitTree
195 for ( std::vector<LauCacheData*>::iterator iter = data_.begin(); iter != data_.end(); ++iter ) {
253 // For those that have changed mark the corresponding resonance(s) as needing to be re-evaluated
382 std::cout << "INFO in LauIsobarDynamics::initialise : No contributions to DP model, not performing normalisation integrals."
388 std::cout << "INFO in LauIsobarDynamics::initialise : Starting special run to generate the integrals for normalising the PDF..."
449 std::cout << "INFO in LauIsobarDynamics::initialise : Initial fit fraction for incoherent amplitude ("
606 std::cout << "INFO in LauIsobarDynamics::writeIntegralsFile : Writing integral output to integrals file "
792 std::cout << "INFO in LauIsobarDynamics::addResonance : Successfully added resonance. Total number of resonances so far = "
845 std::cout << "INFO in LauIsobarDynamics::addIncohResonance : Successfully added incoherent resonance. Total number of incoherent resonances so far = "
858 // Define the K-matrix propagator. The resPairAmpInt integer specifies which mass combination should be used
859 // for the invariant mass-squared variable "s". The pole masses and coupling constants are defined in the
861 // The number of channels and poles are defined by the nChannels and nPoles integers, respectively.
867 std::cerr << "ERROR in LauIsobarDynamics::defineKMatrixPropagator. The rowIndex, which is set to "
932 std::cout << "INFO in LauIsobarDynamics::addKMatrixProdPole : Successfully added K-matrix production pole term. Total number of resonances so far = "
988 std::cout << "INFO in LauIsobarDynamics::addKMatrixProdSVP : Successfully added K-matrix production slowly-varying (SVP) term. Total number of resonances so far = "
1050 std::cerr << "ERROR in LauIsobarDynamics::getResonance : Couldn't find resonance with index \""
1063 std::cerr << "ERROR in LauIsobarDynamics::getResonance : Couldn't find resonance with index \""
1073 std::cerr << "ERROR in LauIsobarDynamics::findResonance : Couldn't find resonance with name \""
1085 std::cerr << "ERROR in LauIsobarDynamics::findResonance : Couldn't find resonance with name \""
1130 std::vector<std::pair<Double_t, Double_t>> gaps( regions.size() + 1, std::make_pair( 0., 0. ) );
1132 // Given some narrow resonance regions, find the regions that correspond to the gaps between them
1146 void LauIsobarDynamics::cullNullRegions( std::vector<LauDPPartialIntegralInfo*>& regions ) const
1159 // If the regions overlap, ensure that the one with the finest binning takes precedence (i.e., extends its full width)
1179 // Create integration regions for all narrow resonances in m13 except for the overlaps with narrow resonances in m23
1232 // Add the area between the last entry and the maximum m23 (which could be the whole strip if there are no entries in m23Regions)
1255 // Create integration regions for all narrow resonances in m23 (including the overlap regions with m13 narrow resonances)
1321 // Add the area between the last entry and the maximum m13 (which could be the whole strip if there are no entries in m13Regions)
1389 // Rho-omega mixing models implicitly contains omega(782) model, but width is of rho(770) - handle as a special case
1392 const Double_t omegaMass = ( omega_info != 0 ) ? omega_info->getMass()->unblindValue() : 0.78265;
1423 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1437 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1451 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1461 std::cerr << "WARNING in LauIsobarDynamics::calcDPNormalisationScheme : strange pair integer, "
1486 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1500 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1514 << ": But its pole is outside the kinematically allowed range, so will not consider it narrow for the purposes of integration"
1524 std::cerr << "WARNING in LauIsobarDynamics::calcDPNormalisationScheme : strange pair integer, "
1536 // - can later consider whether there's a need to split up the mPrime axis into regions around particularly narrow resonances in m12
1537 // - but it seems that this isn't really needed since even the default tune gives a good resolution for most narrow resonances such as phi / chi_c0
1538 std::cout << "INFO in LauIsobarDynamics::calcDPNormalisationScheme : One or more narrow resonances found in m12, integrating over whole square Dalitz plot with bin widths of "
1544 std::cerr << "WARNING in LauIsobarDynamics::calcDPNormalisationScheme : forcing kinematics to calculate the required square DP co-ordinates"
1564 std::cout << "INFO in LauIsobarDynamics::calcDPNormalisationScheme : No narrow resonances found, integrating over whole Dalitz plot..."
1578 // Get regions in that correspond to narrow resonances in m13 and m23, and correct for overlaps in each dimension (to use the finest binning)
2137 std::cerr << "ERROR in LauIsobarDynamics::resAmp : Couldn't retrieve valid resonance with index = "
2164 std::cerr << "ERROR in LauIsobarDynamics::incohResAmp : Couldn't retrieve valid incoherent resonance with index = "
2175 void LauIsobarDynamics::setFFTerm( const UInt_t index, const Double_t realPart, const Double_t imagPart )
2189 // Function to set the internal incoherent intensity term (normally calculated using incohResAmp(index).
2340 for ( mapIter = kMatrixPropagators_.begin(); mapIter != kMatrixPropagators_.end(); ++mapIter ) {
2346 // Now loop over all resonances and find those which are K-matrix components for this propagator
2392 std::cout << "INFO in LauIsobarDynamics::calcExtraInfo : Total K-matrix fit fraction for propagator "
2424 std::cout << "INFO in LauIsobarDynamics::calcExtraInfo : Calculating omega fit fraction from resonance "
2426 std::cout << "INFO in LauIsobarDynamics::calcExtraInfo : Storing omega fit fraction in resonance "
2487 std::cout << "INFO in LauIsobarDynamics::calcExtraInfo : calculateRhoOmegaFitFractions is set, but the RhoOmegaMix model isn't in the right place. Ignoring this option."
2670 std::cerr << " : The maximum number of iterations will be increased and the generation restarted."
2687 std::cerr << " : Run was invalid, as any generated MC will be biased, according to the accept/reject method!"
2721 currentEvent_->retrieveScfFraction(); // These two are necessary, even though the dynamics don't actually use scfFraction_ or jacobian_,
2722 jacobian_ = currentEvent_->retrieveJacobian(); // since this is at the heart of the caching mechanism.
2834 // Since this is the first caching, we need to make sure to calculate everything for every resonance
2852 for ( std::vector<LauCacheData*>::iterator iter = data_.begin(); iter != data_.end(); ++iter ) {
2925 // then calculate totAmp_ and finally ASq_ = totAmp_.abs2() (without the efficiency correction!)
2945 // then calculate totAmp_ and finally ASq_ = totAmp_.abs2() (without the efficiency correction!)
Double_t getm12Max() const Get the m12 maximum defined as (mParent - m3) Definition: LauKinematics.hh:377 File containing declaration of LauAbsEffModel class. File containing declaration of LauResonanceInfo class. Double_t getEventWeight() Calculate the acceptance rate, for events with the current kinematics, when generating events accordi... Definition: LauIsobarDynamics.cc:2940 Bool_t normalizationSchemeDone_ Whether the scheme for the integration has been determined. Definition: LauIsobarDynamics.hh:914 File containing LauRandom namespace. Bool_t aSqMaxAuto_ Flag to generate aSqMaxSet_ once generate is called. Definition: LauIsobarDynamics.hh:1016 Int_t resonanceIndex(const TString &resName) const Retrieve the index for the given resonance. Definition: LauIsobarDynamics.cc:999 const LauAbsResonance * getResonance(const UInt_t resIndex) const Retrieve a resonance by its index. Definition: LauIsobarDynamics.cc:1043 std::vector< Double_t > incohInten_ The dynamic part of the intensity for each incoherent amplitude component at the current point in the... Definition: LauIsobarDynamics.hh:992 Double_t getWeight(const UInt_t m13Point, const UInt_t m23Point) const Retrieve the weight for the given grid point. Definition: LauDPPartialIntegralInfo.hh:140 LauParArray fitFrac_ The fit fractions for the amplitude components. Definition: LauIsobarDynamics.hh:854 std::vector< TString > incohResTypAmp_ The resonance types of all of the incoherent amplitude components. Definition: LauIsobarDynamics.hh:893 const TString & getResonanceName() const Get the name of the resonance. Definition: LauAbsResonance.hh:158 std::vector< LauComplex > ff_ The dynamic part of the amplitude for each amplitude component at the current point in the Dalitz plo... Definition: LauIsobarDynamics.hh:989 std::vector< LauAbsIncohRes * > sigIncohResonances_ The incoherent resonances in the model. Definition: LauIsobarDynamics.hh:878 const LauComplex & getAmplitude(const UInt_t m13Point, const UInt_t m23Point, const UInt_t iAmp) const Retrieve the amplitude for the given grid point and amplitude index. Definition: LauDPPartialIntegralInfo.hh:190 Abstract class for defining incoherent resonant amplitude models. Definition: LauAbsIncohRes.hh:42 const LauAbsResonance * findResonance(const TString &resName) const Retrieve the named resonance. Definition: LauIsobarDynamics.cc:1081 std::vector< Double_t > fNorm_ The normalisation factors for the dynamic parts of the amplitude for each amplitude component. Definition: LauIsobarDynamics.hh:1001 Int_t getCharge(Int_t resPairAmpInt) const Get charge of a particular two-daughter combination. Definition: LauDaughters.cc:384 File containing declaration of LauDPPartialIntegralInfo class. void calcLikelihoodInfo(const UInt_t iEvt) Calculate the likelihood (and all associated information) for the given event number. Definition: LauIsobarDynamics.cc:2725 LauKMatrixPropagator * defineKMatrixPropagator(const TString &propName, const TString ¶mFileName, Int_t resPairAmpInt, Int_t nChannels, Int_t nPoles, Int_t rowIndex=1) Define a new K-matrix Propagator. Definition: LauIsobarDynamics.cc:851 File containing declaration of LauASqMaxFinder class. TString getNameDaug2() const Get name of the second daughter particle. Definition: LauDaughters.cc:309 LauComplex resAmp(const UInt_t index) Calculate the dynamic part of the amplitude for a given component at the current point in the Dalitz ... Definition: LauIsobarDynamics.cc:2120 void setDataEventNo(UInt_t iEvt) Load the data for a given event. Definition: LauIsobarDynamics.cc:2704 Bool_t gotFullySymmetricDP() const Is Dalitz plot fully symmetric, i.e. 3 identical particles. Definition: LauDaughters.hh:90 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... Definition: LauIsobarDynamics.cc:2187 KMStringMap kMatrixPropSet_ The names of the M-matrix components in the model mapped to their propagators. Definition: LauIsobarDynamics.hh:884 void calcDPNormalisation() Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot. Definition: LauIsobarDynamics.cc:1105 Double_t getEvtEff() const Retrieve the efficiency for the current event. Definition: LauIsobarDynamics.hh:355 static bool isIncoherentModel(LauResonanceModel model) Is the resonance model incoherent? Definition: LauAbsResonance.cc:41 const LauFitData & getData(UInt_t iEvt) const Retrieve the data for a given event. Definition: LauFitDataTree.cc:376 Class for defining the rho-omega resonance mixing model. Definition: LauRhoOmegaMix.hh:50 Int_t nSigGenLoop_ The number of unsucessful attempts to generate an event so far. Definition: LauIsobarDynamics.hh:1007 Double_t getM13Value(const UInt_t m13Point) const Retrieve the m13 value at the given grid point. Definition: LauDPPartialIntegralInfo.hh:150 Bool_t fullySymmetricDP_ Whether the Dalitz plot is fully symmetric. Definition: LauIsobarDynamics.hh:905 void cullNullRegions(std::vector< LauDPPartialIntegralInfo * > ®ions) const Removes entries in the vector of LauDPPartialIntegralInfo* that are null. Definition: LauIsobarDynamics.cc:1146 std::vector< LauDPPartialIntegralInfo * > m13IntegrationRegions(const std::vector< std::pair< Double_t, Double_t >> &m13Regions, const std::vector< std::pair< Double_t, Double_t >> &m23Regions, const std::vector< Double_t > &m13Binnings, const Double_t precision, const Double_t defaultBinning) const Create the integration grid objects for the m13 narrow resonance regions, excluding the overlap regio... Definition: LauIsobarDynamics.cc:1172 File containing declaration of LauCacheData class. void flipAndUpdateKinematics() Flips the DP variables m13^2 <-> m23^2 and recalculates all kinematic quantities. Definition: LauKinematics.cc:565 std::vector< Double_t > fSqSum_ The event-by-event running total of the dynamical amplitude squared for each amplitude component. Definition: LauIsobarDynamics.hh:995 File containing declaration of LauBelleNR class. Class for defining a K-matrix production "slowly-varying part" (SVP) amplitude. Definition: LauKMatrixProdSVP.hh:46 Double_t getm13Max() const Get the m13 maximum defined as (mParent - m2) Definition: LauKinematics.hh:371 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 Dal... Definition: LauIsobarDynamics.cc:2175 void calcTotalAmp(const Bool_t useEff) Calculate the total Dalitz plot amplitude at the current point in the Dalitz plot. Definition: LauIsobarDynamics.cc:2038 File containing declaration of LauAbsResonance class. Double_t getIntensity(const UInt_t m13Point, const UInt_t m23Point, const UInt_t iAmp) const Retrieve the intensity for the given grid point and intensity index. Definition: LauDPPartialIntegralInfo.hh:219 virtual Double_t calcEfficiency(const LauKinematics *kinematics) const =0 Determine the efficiency for a given point in the Dalitz plot. Bool_t flipHelicity_ The helicity flip flag for new amplitude components. Definition: LauIsobarDynamics.hh:1019 const std::vector< Double_t > & retrieveImagAmp() const Retrieve the imaginary parts of the amplitudes. Definition: LauCacheData.hh:191 Bool_t gotFlavourConjugateDP() const Is Dalitz plot flavour-conjugate, i.e. CP(d1) = d2 and CP(d3) = d3. Definition: LauDaughters.hh:96 void fillDataTree(const LauFitDataTree &fitDataTree) Fill the internal data structure that caches the resonance dynamics. Definition: LauIsobarDynamics.cc:2829 Int_t getTypeDaug2() const Get PDG code of the second daughter particle. Definition: LauDaughters.cc:349 void updateKinematics(const Double_t m13Sq, const Double_t m23Sq) Update all kinematic quantities based on the DP co-ordinates m13Sq and m23Sq. Definition: LauKinematics.cc:128 File containing declaration of LauFitDataTree class. Bool_t recalcNormalisation_ Flag to recalculate the normalisation. Definition: LauIsobarDynamics.hh:1022 LauAbsResonance * addResonance(const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType, const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory=LauBlattWeisskopfFactor::Default) Add a resonance to the Dalitz plot. Definition: LauIsobarDynamics.cc:722 Bool_t hasResonance(const TString &resName) const Check whether this model includes a named resonance. Definition: LauIsobarDynamics.cc:1033 void rotateAndUpdateKinematics() Cyclically rotates the DP variables (m12 -> m23, m23 -> m13, m13 -> m12) and recalculates all kinemat... Definition: LauKinematics.cc:574 virtual Double_t intensityFactor(const LauKinematics *kinematics)=0 Get intensity factor. LauDPPartialIntegralInfo * newDPIntegrationRegion(const Double_t minm13, const Double_t maxm13, const Double_t minm23, const Double_t maxm23, const Double_t m13BinWidth, const Double_t m23BinWidth, const Double_t precision, const UInt_t nAmp, const UInt_t nIncohAmp) const Wrapper for LauDPPartialIntegralInfo constructor. Definition: LauIsobarDynamics.cc:1336 Bool_t withinDPLimits(const Double_t m13Sq, const Double_t m23Sq) const Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot. Definition: LauKinematics.cc:439 void correctDPOverlap(std::vector< std::pair< Double_t, Double_t >> ®ions, const std::vector< Double_t > &binnings) const Correct regions to ensure that the finest integration grid takes precedence. Definition: LauIsobarDynamics.cc:1152 std::vector< Int_t > incohResPairAmp_ The index of the daughter not produced by the resonance for each incoherent amplitude component. Definition: LauIsobarDynamics.hh:896 File containing declaration of LauNRAmplitude class. LauAbsEffModel * effModel_ The efficiency model across the Dalitz plot. Definition: LauIsobarDynamics.hh:832 LauTagCatScfFractionModelMap scfFractionModel_ The self cross feed fraction models across the Dalitz plot. Definition: LauIsobarDynamics.hh:839 void storeEfficiency(const UInt_t m13Point, const UInt_t m23Point, const Double_t efficiency) Store the efficiency for the given grid point. Definition: LauDPPartialIntegralInfo.hh:176 Double_t aSqMaxVar_ The maximum value of A squared that has been seen so far while generating. Definition: LauIsobarDynamics.hh:1013 Double_t scfFraction_ The fraction of events that are poorly reconstructed (the self cross feed fraction) at the current po... Definition: LauIsobarDynamics.hh:962 void addGridPointToIntegrals(const Double_t weight) Add the amplitude values (with the appropriate weight) at the current grid point to the running integ... Definition: LauIsobarDynamics.cc:2080 Double_t m13Sq_ The invariant mass squared of the first and third daughters. Definition: LauIsobarDynamics.hh:944 Double_t getm23Max() const Get the m23 maximum defined as (mParent - m1) Definition: LauKinematics.hh:365 File containing declaration of LauKMatrixPropFactory class. Double_t narrowWidth_ The value below which a resonance width is considered to be narrow. Definition: LauIsobarDynamics.hh:938 Int_t iterationsMax_ The maximum allowed number of attempts when generating an event. Definition: LauIsobarDynamics.hh:1004 UInt_t getnTotAmp() const Retrieve the total number of amplitude components. Definition: LauIsobarDynamics.hh:516 std::vector< LauParameter > extraParameters_ any extra parameters/quantities (e.g. K-matrix total fit fractions) Definition: LauIsobarDynamics.hh:872 void storeAmplitude(const UInt_t m13Point, const UInt_t m23Point, const UInt_t iAmp, const LauComplex &litude) Store the amplitude for the given grid point and amplitude index. Definition: LauDPPartialIntegralInfo.hh:204 std::vector< Double_t > resonanceParValues_ List of floating resonance parameter values from previous calculation. Definition: LauIsobarDynamics.hh:1028 std::vector< LauDPPartialIntegralInfo * > m23IntegrationRegions(const std::vector< std::pair< Double_t, Double_t >> &m13Regions, const std::vector< std::pair< Double_t, Double_t >> &m23Regions, const std::vector< Double_t > &m13Binnings, const std::vector< Double_t > &m23Binnings, const Double_t precision, const Double_t defaultBinning) const Create the integration grid objects for the m23 narrow resonance regions, including the overlap regio... Definition: LauIsobarDynamics.cc:1247 std::map< Int_t, LauAbsEffModel * > LauTagCatScfFractionModelMap The type used for containing multiple self cross feed fraction models for different categories (e.... Definition: LauIsobarDynamics.hh:57 std::vector< Double_t > fSqEffSum_ The event-by-event running total of the dynamical amplitude squared for each amplitude component. Definition: LauIsobarDynamics.hh:998 void calculateAmplitudes() Calculate the amplitudes for all resonances for the current kinematics. Definition: LauIsobarDynamics.cc:1946 LauAbsResonance * getResonance(const LauDaughters *daughters, const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType, const LauBlattWeisskopfFactor::BlattWeisskopfCategory bwCategory=LauBlattWeisskopfFactor::Default) Create a resonance. Definition: LauResonanceMaker.cc:816 Class for defining (a section of) the Dalitz plot integration binning scheme. Definition: LauDPPartialIntegralInfo.hh:48 Bool_t gotReweightedEvent() Calculates whether an event with the current kinematics should be accepted in order to produce a dist... Definition: LauIsobarDynamics.cc:2917 Double_t DPNorm_ The normalisation factor for the log-likelihood function. Definition: LauIsobarDynamics.hh:851 LauParameter * getWidth() const Retrieve the width of the resonant particle. Definition: LauResonanceInfo.hh:94 void squareDP(const Bool_t calcSquareDPCoords) Enable/disable the calculation of square Dalitz plot co-ordinates. Definition: LauKinematics.hh:73 void findIntegralsToBeRecalculated() Determine which amplitudes and integrals need to be recalculated. Definition: LauIsobarDynamics.cc:250 std::vector< LauCacheData * > data_ The cached data for all events. Definition: LauIsobarDynamics.hh:866 Double_t retrievem13Sq() const Retrieve the invariant mass squared of the first and third daugthers. Definition: LauCacheData.hh:137 TString getConjResName(const TString &resName) const Retrieve the name of the charge conjugate of a named resonance. Definition: LauIsobarDynamics.cc:2974 LauParameter * getMass() const Retrieve the mass of the resonant particle. Definition: LauResonanceInfo.hh:88 Double_t retrievem23Sq() const Retrieve the invariant mass squared of the second and third daugthers. Definition: LauCacheData.hh:143 File containing declaration of LauDaughters class. Double_t eff_ The efficiency at the current point in the Dalitz plot. Definition: LauIsobarDynamics.hh:959 void addKMatrixProdSVP(const TString &SVPName, const TString &propName, Int_t channelIndex, Bool_t useProdAdler=kFALSE) Add a K-matrix slowly-varying part (SVP) term to the model. Definition: LauIsobarDynamics.cc:943 ToyMCStatus checkToyMC(Bool_t printErrorMessages=kTRUE, Bool_t printInfoMessages=kFALSE) Check the status of the toy MC generation. Definition: LauIsobarDynamics.cc:2637 Class for defining a K-matrix production pole amplitude term. Definition: LauKMatrixProdPole.hh:46 Double_t retrieveJacobian() const Retrieve the Jacobian for the transformation into square-Dalitz-plot coordinates. Definition: LauCacheData.hh:179 UInt_t getnCohAmp() const Retrieve the number of coherent amplitude components. Definition: LauIsobarDynamics.hh:522 TRandom * randomFun() Access the singleton random number generator with a particular seed. Definition: LauRandom.cc:33 void resetNormVectors() Zero the various values used to store integrals info. Definition: LauIsobarDynamics.cc:208 void storeIntensity(const UInt_t m13Point, const UInt_t m23Point, const UInt_t iAmp, const Double_t intensity) Store the intensity for the given grid point and intensity index. Definition: LauDPPartialIntegralInfo.hh:231 Double_t abs2() const Obtain the square of the absolute value of the complex number. Definition: LauComplex.hh:260 Bool_t gotKMatrixMatch(UInt_t resAmpInt, const TString &propName) const Check whether a resonance is a K-matrix component of a given propagator. Definition: LauIsobarDynamics.cc:2493 void setWhichAmpSq(Int_t which) Set which rho/omega amplitude to calculate for FF. Definition: LauRhoOmegaMix.hh:117 File containing declaration of LauBelleSymNR class. LauParameter meanDPEff_ The mean efficiency across the Dalitz plot. Definition: LauIsobarDynamics.hh:863 void genFlatPhaseSpace(Double_t &m13Sq, Double_t &m23Sq) const Routine to generate events flat in phase-space. Definition: LauKinematics.cc:412 Class for defining the properties of a resonant particle. Definition: LauResonanceInfo.hh:45 Double_t mPrimeBinWidth_ The bin width to use when integrating over mPrime. Definition: LauIsobarDynamics.hh:932 virtual LauComplex amplitude(const LauKinematics *kinematics) Calculate the complex amplitude. Definition: LauAbsResonance.cc:172 LauKMatrixPropagator * getPropagator(const TString &name, const TString ¶mFileName, Int_t resPairAmpInt, Int_t nChannels, Int_t nPoles, Int_t rowIndex) Retrieve the propagator if it already exists, otherwise create one. Definition: LauKMatrixPropFactory.cc:68 Double_t m23Sq_ The invariant mass squared of the second and third daughters. Definition: LauIsobarDynamics.hh:947 void calcDPPartialIntegral(LauDPPartialIntegralInfo *intInfo) Calculate the Dalitz plot normalisation integrals over a given range. Definition: LauIsobarDynamics.cc:1711 Double_t retrieveScfFraction(Int_t tagCat) Obtain the self cross feed fraction of the current event from the model. Definition: LauIsobarDynamics.cc:2999 File containing LauConstants namespace. Double_t evtLike_ The normalised likelihood for the current event. Definition: LauIsobarDynamics.hh:971 std::vector< std::vector< LauComplex > > fifjEffSum_ The event-by-event running total of efficiency corrected amplitude cross terms for each pair of ampli... Definition: LauIsobarDynamics.hh:980 void initialise(const std::vector< LauComplex > &coeffs) Initialise the Dalitz plot dynamics. Definition: LauIsobarDynamics.cc:361 LauIsobarDynamics(LauDaughters *daughters, LauAbsEffModel *effModel, LauAbsEffModel *scfFractionModel=0) Constructor. Definition: LauIsobarDynamics.cc:65 std::vector< std::pair< Double_t, Double_t > > formGapsFromRegions(const std::vector< std::pair< Double_t, Double_t >> ®ions, const Double_t min, const Double_t max) const Form the regions that are produced by the spaces between narrow resonances. Definition: LauIsobarDynamics.cc:1125 void collateResonanceParameters() Collate the resonance parameters to initialise (or re-initialise) the model. Definition: LauIsobarDynamics.cc:273 std::vector< LauAbsResonance * > sigResonances_ The resonances in the model. Definition: LauIsobarDynamics.hh:875 UInt_t getnm23Points() const Retrieve the number of bins in m23. Definition: LauDPPartialIntegralInfo.hh:126 Bool_t flavConjDP_ Whether the Dalitz plot is a flavour-conjugate final state. Definition: LauIsobarDynamics.hh:908 File containing declaration of LauAbsIncohRes class. std::vector< LauParameter * > resonancePars_ List of floating resonance parameters. Definition: LauIsobarDynamics.hh:1025 Singleton factory class for creating resonances. Definition: LauResonanceMaker.hh:48 const std::vector< Double_t > & retrieveIncohIntensities() const Retrieve the incoherent intensities. Definition: LauCacheData.hh:197 Double_t m23BinWidth_ The bin width to use when integrating over m23. Definition: LauIsobarDynamics.hh:929 Double_t getEvtScfFraction() const Retrieve the fraction of events that are poorly reconstructed (the self cross feed fraction) for the ... Definition: LauIsobarDynamics.hh:361 File containing declaration of LauRhoOmegaMix class. BlattWeisskopfCategory Define resonance categories that will share common barrier factor radii. Definition: LauBlattWeisskopfFactor.hh:62 std::map< TString, Double_t > LauFitData Type for holding event data. Definition: LauFitDataTree.hh:45 std::vector< LauComplex > Amp_ The complex coefficients for the amplitude components. Definition: LauIsobarDynamics.hh:848 void modifyDataTree() Recache the amplitude values for those that have changed. Definition: LauIsobarDynamics.cc:2792 File containing declaration of LauKMatrixProdSVP class. void updateSqDPKinematics(const Double_t mPrime, const Double_t thetaPrime) Update all kinematic quantities based on the square DP co-ordinates m' and theta'. Definition: LauKinematics.cc:147 Bool_t forceSymmetriseIntegration_ Force the symmetrisation of the integration in m13 <-> m23 for non-symmetric but flavour-conjugate fi... Definition: LauIsobarDynamics.hh:917 std::vector< TString > resTypAmp_ The resonance types of all of the amplitude components. Definition: LauIsobarDynamics.hh:887 void addKMatrixProdPole(const TString &poleName, const TString &propName, Int_t poleIndex, Bool_t useProdAdler=kFALSE) Add a K-matrix production pole term to the model. Definition: LauIsobarDynamics.cc:887 Double_t calcSigDPNorm() Calculate the normalisation factor for the log-likelihood function. Definition: LauIsobarDynamics.cc:2527 Abstract class for defining type for resonance amplitude models (Breit-Wigner, Flatte etc.... Definition: LauAbsResonance.hh:51 File containing declaration of LauPrint class and LauOutputLevel enum. Double_t jacobian_ The Jacobian, for the transformation into square DP coordinates at the current point in the Dalitz pl... Definition: LauIsobarDynamics.hh:965 void initialiseVectors() Initialise the internal storage for this model. Definition: LauIsobarDynamics.cc:535 LauCacheData * currentEvent_ The cached data for the current event. Definition: LauIsobarDynamics.hh:869 std::vector< std::vector< UInt_t > > resonanceParResIndex_ Indices in sigResonances_ to point to the corresponding signal resonance(s) for each floating paramet... Definition: LauIsobarDynamics.hh:1031 Double_t getM23Value(const UInt_t m23Point) const Retrieve the m23 value at the given grid point. Definition: LauDPPartialIntegralInfo.hh:157 Bool_t calculateRhoOmegaFitFractions_ Whether to calculate separate rho and omega fit fractions from the LauRhoOmegaMix model. Definition: LauIsobarDynamics.hh:1037 File containing declaration of LauKMatrixPropagator class. Double_t calcSqDPJacobian(const Double_t mPrime, const Double_t thPrime) const Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the given poi... Definition: LauKinematics.cc:176 const std::vector< Double_t > & retrieveRealAmp() const Retrieve the real parts of the amplitudes. Definition: LauCacheData.hh:185 LauParArray fitFracEffUnCorr_ The efficiency-uncorrected fit fractions for the amplitude components. Definition: LauIsobarDynamics.hh:857 Double_t retrieveEfficiency() Obtain the efficiency of the current event from the model. Definition: LauIsobarDynamics.cc:2990 void setSpinType(const LauSpinType spinType) Set the spin formalism to be used. Definition: LauAbsResonance.hh:366 Pure abstract base class for defining the efficiency description across the signal Dalitz plot. Definition: LauAbsEffModel.hh:45 File containing declaration of LauKMatrixProdPole class. void updateCoeffs(const std::vector< LauComplex > &coeffs) Update the complex coefficients for the resonances. Definition: LauIsobarDynamics.cc:2952 virtual LauResonanceModel getResonanceModel() const =0 Get the resonance model type. std::set< UInt_t > integralsToBeCalculated_ Resonance indices for which the amplitudes and integrals should be recalculated. Definition: LauIsobarDynamics.hh:1034 UInt_t getnm13Points() const Retrieve the number of bins in m13. Definition: LauDPPartialIntegralInfo.hh:120 Int_t getTypeDaug1() const Get PDG code of the first daughter particle. Definition: LauDaughters.cc:344 Double_t getEvtJacobian() const Retrieve the Jacobian, for the transformation into square DP coordinates, for the current event. Definition: LauIsobarDynamics.hh:367 Class that defines the particular 3-body decay under study. Definition: LauDaughters.hh:47 Double_t retrievemPrime() const Retrieve the square Dalitz plot coordinate, m'. Definition: LauCacheData.hh:149 void removeCharge(TString &string) const Remove the charge from the given particle name. Definition: LauIsobarDynamics.cc:1093 std::vector< Int_t > resPairAmp_ The index of the daughter not produced by the resonance for each amplitude component. Definition: LauIsobarDynamics.hh:890 LauResonanceInfo * getResInfo(const TString &resName) const Get the information for the given resonance name. Definition: LauResonanceMaker.cc:1171 std::vector< std::vector< LauComplex > > fifjSum_ The event-by-event running total of the amplitude cross terms for each pair of amplitude components. Definition: LauIsobarDynamics.hh:986 Double_t retrievethPrime() const Retrieve the square Dalitz plot coordinate, theta'. Definition: LauCacheData.hh:155 Bool_t gotSymmetricalDP() const Is Dalitz plot symmetric, i.e. 2 identical particles. Definition: LauDaughters.hh:84 void setIntegralBinWidths(const Double_t m13BinWidth, const Double_t m23BinWidth, const Double_t mPrimeBinWidth=0.001, const Double_t thPrimeBinWidth=0.001) Set the widths of the bins to use when integrating across the Dalitz plot or square Dalitz plot. Definition: LauIsobarDynamics.cc:1697 Double_t thPrimeBinWidth_ The bin width to use when integrating over thetaPrime. Definition: LauIsobarDynamics.hh:935 Int_t getTypeDaug3() const Get PDG code of the third daughter particle. Definition: LauDaughters.cc:354 void calcExtraInfo(const Bool_t init=kFALSE) Calculate the fit fractions, mean efficiency and total DP rate. Definition: LauIsobarDynamics.cc:2199 void calcDPNormalisationScheme() Calculate the Dalitz plot normalisation integrals across the whole Dalitz plot. Definition: LauIsobarDynamics.cc:1365 Double_t retrieveScfFraction() const Retrieve the fraction of poorly reconstructed events (the so-called self cross feed fraction) Definition: LauCacheData.hh:173 Double_t m13BinWidth_ The bin width to use when integrating over m13. Definition: LauIsobarDynamics.hh:926 File containing declaration of LauIsobarDynamics class. LauAbsResonance * addIncoherentResonance(const TString &resName, const Int_t resPairAmpInt, const LauAbsResonance::LauResonanceModel resType) Add an incoherent resonance to the Dalitz plot. Definition: LauIsobarDynamics.cc:798 void writeIntegralsFile() Write the results of the integrals (and related information) to a file. Definition: LauIsobarDynamics.cc:601 File containing declaration of LauResonanceMaker class. File containing declaration of LauKinematics class. Double_t incohResAmp(const UInt_t index) Calculate the dynamic part of the intensity for a given incoherent component at the current point in ... Definition: LauIsobarDynamics.cc:2147 static LauKMatrixPropFactory * getInstance() Get a static instance of this factory class. Only one is created per application. Definition: LauKMatrixPropFactory.cc:60 Double_t binningFactor_ The factor relating the width of the narrowest resonance and the binning size. Definition: LauIsobarDynamics.hh:941 std::vector< LauDPPartialIntegralInfo * > dpPartialIntegralInfo_ The storage of the integration scheme. Definition: LauIsobarDynamics.hh:920 Bool_t withinSqDPLimits(const Double_t mPrime, const Double_t thetaPrime) const Check whether a given (m',theta') point is within the kinematic limits of the Dalitz plot. Definition: LauKinematics.cc:511 Generated by ![]() |