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

Class for defining a K-matrix propagator. More...

#include <LauKMatrixPropagator.hh>

Public Member Functions

 LauKMatrixPropagator (const TString &name, const TString &paramFileName, const Int_t resPairAmpInt, const Int_t nChannels, const Int_t nPoles, const Int_t rowIndex=1)
 Constructor. More...
 
virtual ~LauKMatrixPropagator ()
 Destructor.
 
void updatePropagator (const Double_t s)
 Calculate the K-matrix propagator for the given s value. More...
 
void setParameters (const TString &inputFile)
 Read an input file to set parameters. More...
 
void ignoreBWBarrierFactor ()
 Set flag to ignore Blatt-Weisskopf-like barrier factor.
 
TMatrixD getKMatrix () const
 Get the scattering K matrix. More...
 
TMatrixD getRealPropMatrix () const
 Get the real part of the propagator full matrix. More...
 
TMatrixD getNegImagPropMatrix () const
 Get the negative imaginary part of the full propagator matrix. More...
 
Double_t getRealPropTerm (const Int_t channelIndex) const
 Get the real part of the term of the propagator. More...
 
Double_t getImagPropTerm (const Int_t channelIndex) const
 Get the imaginary part of the term of the propagator. More...
 
Double_t getPoleDenomTerm (const Int_t poleIndex) const
 Get the 1/(m_pole^2 -s) terms for the scattering and production K-matrix formulae. More...
 
Int_t getL (const Int_t iChannel) const
 Get spin of K-matrix. More...
 
Int_t getIndex () const
 Get index of final channel. More...
 
LauParametergetPoleMassSqParameter (const Int_t poleIndex)
 Get pole mass parameters, set according to the input file. More...
 
Double_t getCouplingConstant (const Int_t poleIndex, const Int_t channelIndex) const
 Get coupling constants that were loaded from the input file. More...
 
LauParametergetCouplingParameter (const Int_t poleIndex, const Int_t channelIndex)
 Get coupling parameters, set according to the input file. More...
 
Double_t getScatteringConstant (const Int_t channel1Index, const Int_t channel2Index) const
 Get scattering constants that were loaded from the input file. More...
 
LauParametergetScatteringParameter (const Int_t channel1Index, const Int_t channel2Index)
 Get scattering parameters, set according to the input file. More...
 
LauParametergetmSq0 ()
 Get mSq0 production parameter. More...
 
LauParametergets0Scatt ()
 Get s0Scatt production parameter. More...
 
LauParametergets0Prod ()
 Get s0 production parameter. More...
 
LauParametergetsA ()
 Get sA production parameter. More...
 
LauParametergetsA0 ()
 Get sA0 production parameter. More...
 
Double_t getProdSVPTerm () const
 Get the "slowly-varying part" term of the amplitude. More...
 
LauComplex getPropTerm (const Int_t channelIndex) const
 Get the full complex propagator term for a given channel. More...
 
Int_t getResPairAmpInt () const
 Get the DP axis identifier. More...
 
Int_t getNChannels () const
 Get the number of channels. More...
 
Int_t getNPoles () const
 Get the number of poles. More...
 
TString getName () const
 Get the propagator name. More...
 
LauComplex getTransitionAmp (const Double_t s, const Int_t channel)
 Get the unitary transition amplitude for the given channel. More...
 
LauComplex getPhaseSpaceTerm (const Double_t s, const Int_t channel)
 Get the complex phase space term for the given channel and invariant mass squared. More...
 
Double_t getAdlerZero () const
 Get the Adler zero factor, which is set when updatePropagator is called. More...
 
LauComplex getTHat (const Double_t s, const Int_t channel)
 Get the THat amplitude for the given s and channel number. More...
 

Protected Types

enum  KMatrixChannels {
  Zero, PiPi, KK, FourPi,
  EtaEta, EtaEtaP, KPi, KEtaP,
  KThreePi, D0K, Dstar0K, TotChannels
}
 Integers to specify the allowed channels for the phase space calculations.
 

Protected Member Functions

void calcScattKMatrix (const Double_t s)
 Calculate the scattering K-matrix for the given value of s. More...
 
void calcRhoMatrix (const Double_t s)
 Calculate the real and imaginary part of the phase space density diagonal matrix. More...
 
LauComplex getRho (const Double_t s, const LauKMatrixPropagator::KMatrixChannels) const
 Retrieve the complex phasespace density for a given channel. More...
 
void calcGammaMatrix (const Double_t s)
 Calculate the (real) gamma angular-momentum barrier matrix. More...
 
Double_t calcGamma (const Int_t iCh, const Double_t s) const
 Calculate the gamma angular-momentum barrier. More...
 
void calcPoleDenomVect (const Double_t s)
 Calulate the term 1/(m_pole^2 - s) for the scattering and production K-matrix formulae. More...
 
LauComplex calcD0KRho (const Double_t s) const
 Calculate the D0K+ phase space factor. More...
 
LauComplex calcDstar0KRho (const Double_t s) const
 Calculate the D*0K+ phase space factor. More...
 
LauComplex calcPiPiRho (const Double_t s) const
 Calculate the pipi phase space factor. More...
 
LauComplex calcKKRho (const Double_t s) const
 Calculate the KK phase space factor. More...
 
LauComplex calcFourPiRho (const Double_t s) const
 Calculate the 4 pi phase space factor. More...
 
LauComplex calcEtaEtaRho (const Double_t s) const
 Calculate the eta-eta phase space factor. More...
 
LauComplex calcEtaEtaPRho (const Double_t s) const
 Calculate the eta-eta' phase space factor. More...
 
LauComplex calcKPiRho (const Double_t s) const
 Calculate the Kpi phase space factor. More...
 
LauComplex calcKEtaPRho (const Double_t s) const
 Calculate the K-eta' phase space factor. More...
 
LauComplex calcKThreePiRho (const Double_t s) const
 Calculate the Kpipipi phase space factor. More...
 
Double_t calcSVPTerm (const Double_t s, const Double_t s0) const
 Calculate the "slow-varying part". More...
 
void updateScattSVPTerm (const Double_t s)
 Update the scattering "slowly-varying part". More...
 
void updateProdSVPTerm (const Double_t s)
 Update the production "slowly-varying part". More...
 
void updateAdlerZeroFactor (const Double_t s)
 Calculate the multiplicative factor containing severa Adler zero constants. More...
 
Bool_t checkPhaseSpaceType (const Int_t phaseSpaceInt) const
 Check the phase space factors that need to be used. More...
 
void getTMatrix (const LauKinematics *kinematics)
 Get the unitary transition amplitude matrix for the given kinematics. More...
 
void getTMatrix (const Double_t s)
 Get the unitary transition amplitude matrix for the given kinematics. More...
 
void getSqrtRhoMatrix ()
 Get the square root of the phase space matrix.
 

Private Member Functions

 LauKMatrixPropagator (const LauKMatrixPropagator &rhs)=delete
 Copy constructor (not implemented)
 
LauKMatrixPropagatoroperator= (const LauKMatrixPropagator &rhs)=delete
 Copy assignment operator (not implemented)
 
void initialiseMatrices ()
 Initialise and set the dimensions for the internal matrices and parameter arrays.
 
void storeChannels (const std::vector< std::string > &theLine)
 Store the (phase space) channel indices from a line in the parameter file. More...
 
void storePole (const std::vector< std::string > &theLine)
 Store the pole mass and couplings from a line in the parameter file. More...
 
void storeScattering (const std::vector< std::string > &theLine)
 Store the scattering coefficients from a line in the parameter file. More...
 
void storeRadii (const std::vector< std::string > &theLine)
 Store the channels' characteristic radii from a line in the parameter file. More...
 
void storeOrbitalAngularMomenta (const std::vector< std::string > &theLine, std::vector< Int_t > &a)
 Store the channels' angular momenta from a line in the parameter file. More...
 
void storeBarrierFactorParameter (const std::vector< std::string > &theLine, std::vector< Int_t > &a)
 Store the barrier-factor parameter from a line in the parameter file. More...
 
void storeParameter (const TString &keyword, const TString &parString)
 Store miscelleanous parameters from a line in the parameter file. More...
 

Private Attributes

TString name_
 String to store the propagator name.
 
TString paramFileName_
 Name of the input parameter file.
 
Int_t resPairAmpInt_
 Number to identify the DP axis in question.
 
Int_t index_
 Row index - 1.
 
Double_t previousS_ { 0.0 }
 s value of the previous pole
 
Double_t scattSVP_ { 0.0 }
 "slowly-varying part" for the scattering K-matrix
 
Double_t prodSVP_ { 0.0 }
 "slowly-varying part" for the production K-matrix
 
TMatrixD realProp_
 Real part of the propagator matrix.
 
TMatrixD negImagProp_
 Imaginary part of the propagator matrix.
 
TMatrixD ScattKMatrix_
 Scattering K-matrix.
 
TMatrixD ReRhoMatrix_
 Real part of the phase space density diagonal matrix.
 
TMatrixD ImRhoMatrix_
 Imaginary part of the phase space density diagonal matrix.
 
TMatrixD GammaMatrix_
 Gamma angular-momentum barrier matrix.
 
TMatrixD IMatrix_
 Identity matrix.
 
TMatrixD zeroMatrix_
 Null matrix.
 
TMatrixD ReSqrtRhoMatrix_
 Real part of the square root of the phase space density diagonal matrix.
 
TMatrixD ImSqrtRhoMatrix_
 Imaginary part of the square root of the phase space density diagonal matrix.
 
TMatrixD ReTMatrix_
 Real part of the unitary T matrix.
 
TMatrixD ImTMatrix_
 Imaginary part of the unitary T matrix.
 
Int_t nChannels_
 Number of channels.
 
Int_t nPoles_
 Number of poles.
 
std::vector< Int_t > L_
 Vector of orbital angular momenta.
 
Bool_t haveCalled_storeBarrierFactorParameter { kFALSE }
 Boolean to indicate whether storeBarrierFactorParameter has been called.
 
Bool_t includeBWBarrierFactor_ { kTRUE }
 Boolean to dictate whether to include Blatt-Weisskopf-like denominator in K-matrix centrifugal barrier factor.
 
std::vector< LauParametermSqPoles_
 Vector of squared pole masses.
 
LauParArray gCouplings_
 Array of coupling constants.
 
LauParArray fScattering_
 Array of scattering SVP values.
 
std::vector< Double_t > radii_
 Vector of characteristic radii.
 
std::vector< Double_t > gamAInvRadSq_
 Vector of ratio a/R^2.
 
std::vector< KMatrixChannelsphaseSpaceTypes_
 Vector of phase space types.
 
std::vector< Double_t > mSumSq_
 Vector of squared masses.
 
std::vector< Double_t > mDiffSq_
 Vector of mass differences.
 
std::vector< Double_t > poleDenomVect_
 Vector of 1/(m_pole^2 - s) terms for scattering and production K-matrix formulae.
 
LauParameter mSq0_
 Constant from input file.
 
LauParameter s0Scatt_
 Constant from input file.
 
LauParameter s0Prod_
 Constant from input file.
 
LauParameter sA_
 Constant from input file.
 
LauParameter sA0_
 Constant from input file.
 
Double_t sAConst_ { 0.0 }
 Defined as 0.5*sA*mPi*mPi.
 
const Double_t m2piSq_ { 4.0 * LauConstants::mPiSq }
 Defined as 4*mPi*mPi.
 
const Double_t m2KSq_ { 4.0 * LauConstants::mKSq }
 Defined as 4*mK*mK.
 
const Double_t m2EtaSq_ { 4.0 * LauConstants::mEtaSq }
 Defined as 4*mEta*mEta.
 
const Double_t mEtaEtaPSumSq_
 Defined as (mEta+mEta')^2. More...
 
const Double_t mEtaEtaPDiffSq_
 Defined as (mEta-mEta')^2. More...
 
const Double_t mKpiSumSq_
 Defined as (mK+mPi)^2. More...
 
const Double_t mKpiDiffSq_
 Defined as (mK-mPi)^2. More...
 
const Double_t mKEtaPSumSq_
 Defined as (mK+mEta')^2. More...
 
const Double_t mKEtaPDiffSq_
 Defined as (mK-mEta')^2. More...
 
const Double_t mK3piDiffSq_
 Defined as (mK-3*mPi)^2. More...
 
const Double_t k3piFactor_ { TMath::Power( ( 1.44 - mK3piDiffSq_ ) / 1.44, -2.5 ) }
 Factor used to calculate the Kpipipi phase space term.
 
const Double_t fourPiFactor1_ { 16.0 * LauConstants::mPiSq }
 Factor used to calculate the pipipipi phase space term.
 
const Double_t fourPiFactor2_ { TMath::Sqrt( 1.0 - fourPiFactor1_ ) }
 Factor used to calculate the pipipipi phase space term.
 
const Double_t mD0KSumSq_
 Defined as (mD0+mK)^2. More...
 
const Double_t mD0KDiffSq_
 Defined as (mD0-mK)^2. More...
 
const Double_t mDstar0KSumSq_
 Defined as (mD*0+mK)^2. More...
 
const Double_t mDstar0KDiffSq_
 Defined as (mD*0-mK)^2. More...
 
Double_t adlerZeroFactor_ { 0.0 }
 Multiplicative factor containing various Adler zero constants.
 
Bool_t parametersSet_ { kFALSE }
 Tracks if all params have been set.
 
Bool_t scattSymmetry_ { kFALSE }
 Control if scattering constants are channel symmetric: f_ji = f_ij.
 

Static Private Attributes

static constexpr Bool_t verbose_ { kFALSE }
 Control the output of the functions.
 

Detailed Description

Class for defining a K-matrix propagator.

Class used to define a K-matrix propagator. See the following papers for info: hep-ph/0204328, hep-ex/0312040, [hep-ex]0804.2089 and hep-ph/9705401.

Definition at line 54 of file LauKMatrixPropagator.hh.

Constructor & Destructor Documentation

◆ LauKMatrixPropagator()

LauKMatrixPropagator::LauKMatrixPropagator ( const TString &  name,
const TString &  paramFileName,
const Int_t  resPairAmpInt,
const Int_t  nChannels,
const Int_t  nPoles,
const Int_t  rowIndex = 1 
)

Constructor.

Parameters
[in]namename of the propagator
[in]paramFileNamethe parameter file name
[in]resPairAmpIntthe number of the daughter not produced by the resonance
[in]nChannelsthe number of channels
[in]nPolesthe number of poles
[in]rowIndexthis specifies which row of the propagator should be used when summing over the amplitude channels

Definition at line 47 of file LauKMatrixPropagator.cc.

Member Function Documentation

◆ calcD0KRho()

LauComplex LauKMatrixPropagator::calcD0KRho ( const Double_t  s) const
protected

Calculate the D0K+ phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1039 of file LauKMatrixPropagator.cc.

◆ calcDstar0KRho()

LauComplex LauKMatrixPropagator::calcDstar0KRho ( const Double_t  s) const
protected

Calculate the D*0K+ phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1059 of file LauKMatrixPropagator.cc.

◆ calcEtaEtaPRho()

LauComplex LauKMatrixPropagator::calcEtaEtaPRho ( const Double_t  s) const
protected

Calculate the eta-eta' phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1175 of file LauKMatrixPropagator.cc.

◆ calcEtaEtaRho()

LauComplex LauKMatrixPropagator::calcEtaEtaRho ( const Double_t  s) const
protected

Calculate the eta-eta phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1157 of file LauKMatrixPropagator.cc.

◆ calcFourPiRho()

LauComplex LauKMatrixPropagator::calcFourPiRho ( const Double_t  s) const
protected

Calculate the 4 pi phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1115 of file LauKMatrixPropagator.cc.

◆ calcGamma()

Double_t LauKMatrixPropagator::calcGamma ( const Int_t  iCh,
const Double_t  s 
) const
protected

Calculate the gamma angular-momentum barrier.

Parameters
[in]iChthe channel index
[in]sthe invariant mass squared
Returns
the centrifugal barrier factor for L=0,1, or 2

Definition at line 945 of file LauKMatrixPropagator.cc.

◆ calcGammaMatrix()

void LauKMatrixPropagator::calcGammaMatrix ( const Double_t  s)
protected

Calculate the (real) gamma angular-momentum barrier matrix.

Parameters
[in]sthe invariant mass squared

Definition at line 919 of file LauKMatrixPropagator.cc.

◆ calcKEtaPRho()

LauComplex LauKMatrixPropagator::calcKEtaPRho ( const Double_t  s) const
protected

Calculate the K-eta' phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1223 of file LauKMatrixPropagator.cc.

◆ calcKKRho()

LauComplex LauKMatrixPropagator::calcKKRho ( const Double_t  s) const
protected

Calculate the KK phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1097 of file LauKMatrixPropagator.cc.

◆ calcKPiRho()

LauComplex LauKMatrixPropagator::calcKPiRho ( const Double_t  s) const
protected

Calculate the Kpi phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1203 of file LauKMatrixPropagator.cc.

◆ calcKThreePiRho()

LauComplex LauKMatrixPropagator::calcKThreePiRho ( const Double_t  s) const
protected

Calculate the Kpipipi phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1243 of file LauKMatrixPropagator.cc.

◆ calcPiPiRho()

LauComplex LauKMatrixPropagator::calcPiPiRho ( const Double_t  s) const
protected

Calculate the pipi phase space factor.

Parameters
[in]sthe invariant mass squared
Returns
the complex phase space factor

Definition at line 1079 of file LauKMatrixPropagator.cc.

◆ calcPoleDenomVect()

void LauKMatrixPropagator::calcPoleDenomVect ( const Double_t  s)
protected

Calulate the term 1/(m_pole^2 - s) for the scattering and production K-matrix formulae.

Parameters
[in]sthe invariant mass squared

Definition at line 767 of file LauKMatrixPropagator.cc.

◆ calcRhoMatrix()

void LauKMatrixPropagator::calcRhoMatrix ( const Double_t  s)
protected

Calculate the real and imaginary part of the phase space density diagonal matrix.

Parameters
[in]sthe invariant mass squared

Definition at line 968 of file LauKMatrixPropagator.cc.

◆ calcScattKMatrix()

void LauKMatrixPropagator::calcScattKMatrix ( const Double_t  s)
protected

Calculate the scattering K-matrix for the given value of s.

Parameters
[in]sthe invariant mass squared

Definition at line 706 of file LauKMatrixPropagator.cc.

◆ calcSVPTerm()

Double_t LauKMatrixPropagator::calcSVPTerm ( const Double_t  s,
const Double_t  s0 
) const
protected

Calculate the "slow-varying part".

Parameters
[in]sthe invariant mass squared
[in]s0the invariant mass squared at the Adler zero
Returns
the SVP term

Definition at line 874 of file LauKMatrixPropagator.cc.

◆ checkPhaseSpaceType()

Bool_t LauKMatrixPropagator::checkPhaseSpaceType ( const Int_t  phaseSpaceInt) const
protected

Check the phase space factors that need to be used.

Parameters
[in]phaseSpaceIntphase space types
Returns
true of false

Definition at line 1270 of file LauKMatrixPropagator.cc.

◆ getAdlerZero()

Double_t LauKMatrixPropagator::getAdlerZero ( ) const
inline

Get the Adler zero factor, which is set when updatePropagator is called.

Returns
the Adler zero factor

Definition at line 269 of file LauKMatrixPropagator.hh.

◆ getCouplingConstant()

Double_t LauKMatrixPropagator::getCouplingConstant ( const Int_t  poleIndex,
const Int_t  channelIndex 
) const

Get coupling constants that were loaded from the input file.

Parameters
[in]poleIndexnumber of the required pole
[in]channelIndexnumber of the required channel
Returns
the value of the coupling constant

Definition at line 808 of file LauKMatrixPropagator.cc.

◆ getCouplingParameter()

LauParameter & LauKMatrixPropagator::getCouplingParameter ( const Int_t  poleIndex,
const Int_t  channelIndex 
)

Get coupling parameters, set according to the input file.

Parameters
[in]poleIndexnumber of the required pole
[in]channelIndexnumber of the required channel
Returns
the parameter of the coupling constant

Definition at line 826 of file LauKMatrixPropagator.cc.

◆ getImagPropTerm()

Double_t LauKMatrixPropagator::getImagPropTerm ( const Int_t  channelIndex) const

Get the imaginary part of the term of the propagator.

Parameters
[in]channelIndexthe channel number
Returns
the imaginiary part of the propagator term

Definition at line 111 of file LauKMatrixPropagator.cc.

◆ getIndex()

Int_t LauKMatrixPropagator::getIndex ( ) const
inline

Get index of final channel.

Returns
the index of the channel into which the scattering happens

Definition at line 141 of file LauKMatrixPropagator.hh.

◆ getKMatrix()

TMatrixD LauKMatrixPropagator::getKMatrix ( ) const
inline

Get the scattering K matrix.

Returns
the real, symmetric scattering K matrix

Definition at line 95 of file LauKMatrixPropagator.hh.

◆ getL()

Int_t LauKMatrixPropagator::getL ( const Int_t  iChannel) const
inline

Get spin of K-matrix.

Parameters
[in]iChannelthe index of the channel
Returns
the value of the orbital angular momentum, L_, for this channel

Definition at line 135 of file LauKMatrixPropagator.hh.

◆ getmSq0()

LauParameter& LauKMatrixPropagator::getmSq0 ( )
inline

Get mSq0 production parameter.

Returns
the mSq0 parameter

Definition at line 186 of file LauKMatrixPropagator.hh.

◆ getName()

TString LauKMatrixPropagator::getName ( ) const
inline

Get the propagator name.

Returns
the name of the propagator

Definition at line 247 of file LauKMatrixPropagator.hh.

◆ getNChannels()

Int_t LauKMatrixPropagator::getNChannels ( ) const
inline

Get the number of channels.

Returns
the number of channels

Definition at line 235 of file LauKMatrixPropagator.hh.

◆ getNegImagPropMatrix()

TMatrixD LauKMatrixPropagator::getNegImagPropMatrix ( ) const
inline

Get the negative imaginary part of the full propagator matrix.

Returns
the negative imaginary part of the full propagator matrix

Definition at line 107 of file LauKMatrixPropagator.hh.

◆ getNPoles()

Int_t LauKMatrixPropagator::getNPoles ( ) const
inline

Get the number of poles.

Returns
the number of poles

Definition at line 241 of file LauKMatrixPropagator.hh.

◆ getPhaseSpaceTerm()

LauComplex LauKMatrixPropagator::getPhaseSpaceTerm ( const Double_t  s,
const Int_t  channel 
)

Get the complex phase space term for the given channel and invariant mass squared.

Parameters
[in]sThe invariant mass squared
[in]channelThe index number of the channel process
Returns
the complex phase space term rho(channel, channel)

Definition at line 1300 of file LauKMatrixPropagator.cc.

◆ getPoleDenomTerm()

Double_t LauKMatrixPropagator::getPoleDenomTerm ( const Int_t  poleIndex) const

Get the 1/(m_pole^2 -s) terms for the scattering and production K-matrix formulae.

Parameters
[in]poleIndexthe number of the pole required
Returns
the value of 1/(m_pole^2 -s)

Definition at line 785 of file LauKMatrixPropagator.cc.

◆ getPoleMassSqParameter()

LauParameter & LauKMatrixPropagator::getPoleMassSqParameter ( const Int_t  poleIndex)

Get pole mass parameters, set according to the input file.

Parameters
[in]poleIndexnumber of the required pole
Returns
the parameter of the pole mass

Definition at line 797 of file LauKMatrixPropagator.cc.

◆ getProdSVPTerm()

Double_t LauKMatrixPropagator::getProdSVPTerm ( ) const
inline

Get the "slowly-varying part" term of the amplitude.

Returns
the svp term

Definition at line 216 of file LauKMatrixPropagator.hh.

◆ getPropTerm()

LauComplex LauKMatrixPropagator::getPropTerm ( const Int_t  channelIndex) const

Get the full complex propagator term for a given channel.

Parameters
[in]channelIndexthe number of the required channel
Returns
the complex propagator term

Definition at line 88 of file LauKMatrixPropagator.cc.

◆ getRealPropMatrix()

TMatrixD LauKMatrixPropagator::getRealPropMatrix ( ) const
inline

Get the real part of the propagator full matrix.

Returns
the real part of the propagator full matrix

Definition at line 101 of file LauKMatrixPropagator.hh.

◆ getRealPropTerm()

Double_t LauKMatrixPropagator::getRealPropTerm ( const Int_t  channelIndex) const

Get the real part of the term of the propagator.

Parameters
[in]channelIndexthe channel number
Returns
the real part of the propagator term

Definition at line 99 of file LauKMatrixPropagator.cc.

◆ getResPairAmpInt()

Int_t LauKMatrixPropagator::getResPairAmpInt ( ) const
inline

Get the DP axis identifier.

Returns
the value to identify the DP axis in question

Definition at line 229 of file LauKMatrixPropagator.hh.

◆ getRho()

LauComplex LauKMatrixPropagator::getRho ( const Double_t  s,
const LauKMatrixPropagator::KMatrixChannels  phaseSpaceIndex 
) const
protected

Retrieve the complex phasespace density for a given channel.

Parameters
[in]sthe invariant mass squared
[in]phaseSpaceIndexthe phasespace index of the channel
Returns
the complex phasespace density

Definition at line 996 of file LauKMatrixPropagator.cc.

◆ gets0Prod()

LauParameter& LauKMatrixPropagator::gets0Prod ( )
inline

Get s0 production parameter.

Returns
the s0Prod parameter

Definition at line 198 of file LauKMatrixPropagator.hh.

◆ gets0Scatt()

LauParameter& LauKMatrixPropagator::gets0Scatt ( )
inline

Get s0Scatt production parameter.

Returns
the s0Scatt parameter

Definition at line 192 of file LauKMatrixPropagator.hh.

◆ getsA()

LauParameter& LauKMatrixPropagator::getsA ( )
inline

Get sA production parameter.

Returns
the sA parameter

Definition at line 204 of file LauKMatrixPropagator.hh.

◆ getsA0()

LauParameter& LauKMatrixPropagator::getsA0 ( )
inline

Get sA0 production parameter.

Returns
the sA0 parameter

Definition at line 210 of file LauKMatrixPropagator.hh.

◆ getScatteringConstant()

Double_t LauKMatrixPropagator::getScatteringConstant ( const Int_t  channel1Index,
const Int_t  channel2Index 
) const

Get scattering constants that were loaded from the input file.

Parameters
[in]channel1Indexnumber of the first channel index
[in]channel2Indexnumber of the second channel index
Returns
the value of the scattering constant

Definition at line 842 of file LauKMatrixPropagator.cc.

◆ getScatteringParameter()

LauParameter & LauKMatrixPropagator::getScatteringParameter ( const Int_t  channel1Index,
const Int_t  channel2Index 
)

Get scattering parameters, set according to the input file.

Parameters
[in]channel1Indexnumber of the first channel index
[in]channel2Indexnumber of the second channel index
Returns
the parameter of the scattering constant

Definition at line 860 of file LauKMatrixPropagator.cc.

◆ getTHat()

LauComplex LauKMatrixPropagator::getTHat ( const Double_t  s,
const Int_t  channel 
)

Get the THat amplitude for the given s and channel number.

Parameters
[in]sThe invariant mass squared
[in]channelThe index number of the channel process
Returns
the complex THat amplitude

Definition at line 1443 of file LauKMatrixPropagator.cc.

◆ getTMatrix() [1/2]

void LauKMatrixPropagator::getTMatrix ( const Double_t  s)
protected

Get the unitary transition amplitude matrix for the given kinematics.

Parameters
[in]sThe invariant mass squared of the system

Definition at line 1349 of file LauKMatrixPropagator.cc.

◆ getTMatrix() [2/2]

void LauKMatrixPropagator::getTMatrix ( const LauKinematics kinematics)
protected

Get the unitary transition amplitude matrix for the given kinematics.

Parameters
[in]kinematicsThe pointer to the constant kinematics

Definition at line 1321 of file LauKMatrixPropagator.cc.

◆ getTransitionAmp()

LauComplex LauKMatrixPropagator::getTransitionAmp ( const Double_t  s,
const Int_t  channel 
)

Get the unitary transition amplitude for the given channel.

Parameters
[in]sThe invariant mass squared
[in]channelThe index number of the channel process
Returns
the complex amplitude T

Definition at line 1282 of file LauKMatrixPropagator.cc.

◆ setParameters()

void LauKMatrixPropagator::setParameters ( const TString &  inputFile)

Read an input file to set parameters.

Parameters
[in]inputFilename of the input file

Definition at line 220 of file LauKMatrixPropagator.cc.

◆ storeBarrierFactorParameter()

void LauKMatrixPropagator::storeBarrierFactorParameter ( const std::vector< std::string > &  theLine,
std::vector< Int_t > &  a 
)
private

Store the barrier-factor parameter from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file
[in]aVector of integers corresponding to parameter in the propagator denominator

Definition at line 629 of file LauKMatrixPropagator.cc.

◆ storeChannels()

void LauKMatrixPropagator::storeChannels ( const std::vector< std::string > &  theLine)
private

Store the (phase space) channel indices from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file

Definition at line 439 of file LauKMatrixPropagator.cc.

◆ storeOrbitalAngularMomenta()

void LauKMatrixPropagator::storeOrbitalAngularMomenta ( const std::vector< std::string > &  theLine,
std::vector< Int_t > &  a 
)
private

Store the channels' angular momenta from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file
[in]aVector of integers corresponding to parameter in the propagator denominator

Definition at line 551 of file LauKMatrixPropagator.cc.

◆ storeParameter()

void LauKMatrixPropagator::storeParameter ( const TString &  keyword,
const TString &  parString 
)
private

Store miscelleanous parameters from a line in the parameter file.

Parameters
[in]keywordthe name of the parameter to be set
[in]parStringthe string containing the value of the parameter

Definition at line 662 of file LauKMatrixPropagator.cc.

◆ storePole()

void LauKMatrixPropagator::storePole ( const std::vector< std::string > &  theLine)
private

Store the pole mass and couplings from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file

Definition at line 471 of file LauKMatrixPropagator.cc.

◆ storeRadii()

void LauKMatrixPropagator::storeRadii ( const std::vector< std::string > &  theLine)
private

Store the channels' characteristic radii from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file

Definition at line 602 of file LauKMatrixPropagator.cc.

◆ storeScattering()

void LauKMatrixPropagator::storeScattering ( const std::vector< std::string > &  theLine)
private

Store the scattering coefficients from a line in the parameter file.

Parameters
[in]theLineVector of strings corresponding to the line from the parameter file

Definition at line 515 of file LauKMatrixPropagator.cc.

◆ updateAdlerZeroFactor()

void LauKMatrixPropagator::updateAdlerZeroFactor ( const Double_t  s)
protected

Calculate the multiplicative factor containing severa Adler zero constants.

Parameters
[in]sthe invariant mass squared

Definition at line 905 of file LauKMatrixPropagator.cc.

◆ updateProdSVPTerm()

void LauKMatrixPropagator::updateProdSVPTerm ( const Double_t  s)
protected

Update the production "slowly-varying part".

Parameters
[in]sthe invariant mass squared

Definition at line 898 of file LauKMatrixPropagator.cc.

◆ updatePropagator()

void LauKMatrixPropagator::updatePropagator ( const Double_t  s)

Calculate the K-matrix propagator for the given s value.

Parameters
[in]sthe invariant mass squared

Definition at line 123 of file LauKMatrixPropagator.cc.

◆ updateScattSVPTerm()

void LauKMatrixPropagator::updateScattSVPTerm ( const Double_t  s)
protected

Update the scattering "slowly-varying part".

Parameters
[in]sthe invariant mass squared

Definition at line 891 of file LauKMatrixPropagator.cc.

Member Data Documentation

◆ mD0KDiffSq_

const Double_t LauKMatrixPropagator::mD0KDiffSq_
private
Initial value:

Defined as (mD0-mK)^2.

Definition at line 637 of file LauKMatrixPropagator.hh.

◆ mD0KSumSq_

const Double_t LauKMatrixPropagator::mD0KSumSq_
private
Initial value:

Defined as (mD0+mK)^2.

Definition at line 634 of file LauKMatrixPropagator.hh.

◆ mDstar0KDiffSq_

const Double_t LauKMatrixPropagator::mDstar0KDiffSq_
private
Initial value:

Defined as (mD*0-mK)^2.

Definition at line 644 of file LauKMatrixPropagator.hh.

◆ mDstar0KSumSq_

const Double_t LauKMatrixPropagator::mDstar0KSumSq_
private
Initial value:

Defined as (mD*0+mK)^2.

Definition at line 640 of file LauKMatrixPropagator.hh.

◆ mEtaEtaPDiffSq_

const Double_t LauKMatrixPropagator::mEtaEtaPDiffSq_
private
Initial value:

Defined as (mEta-mEta')^2.

Definition at line 610 of file LauKMatrixPropagator.hh.

◆ mEtaEtaPSumSq_

const Double_t LauKMatrixPropagator::mEtaEtaPSumSq_
private
Initial value:

Defined as (mEta+mEta')^2.

Definition at line 607 of file LauKMatrixPropagator.hh.

◆ mK3piDiffSq_

const Double_t LauKMatrixPropagator::mK3piDiffSq_
private
Initial value:

Defined as (mK-3*mPi)^2.

Definition at line 625 of file LauKMatrixPropagator.hh.

◆ mKEtaPDiffSq_

const Double_t LauKMatrixPropagator::mKEtaPDiffSq_
private
Initial value:

Defined as (mK-mEta')^2.

Definition at line 622 of file LauKMatrixPropagator.hh.

◆ mKEtaPSumSq_

const Double_t LauKMatrixPropagator::mKEtaPSumSq_
private
Initial value:

Defined as (mK+mEta')^2.

Definition at line 619 of file LauKMatrixPropagator.hh.

◆ mKpiDiffSq_

const Double_t LauKMatrixPropagator::mKpiDiffSq_
private
Initial value:

Defined as (mK-mPi)^2.

Definition at line 616 of file LauKMatrixPropagator.hh.

◆ mKpiSumSq_

const Double_t LauKMatrixPropagator::mKpiSumSq_
private
Initial value:

Defined as (mK+mPi)^2.

Definition at line 613 of file LauKMatrixPropagator.hh.


The documentation for this class was generated from the following files:
static LauResonanceMaker & get()
Get the factory instance.
Double_t value() const
The value of the parameter.
const Double_t mEta
Mass of eta (GeV/c^2)
Definition: LauConstants.hh:63
LauParameter * getMass() const
Retrieve the mass of the resonant particle.
const Double_t mD0
Mass of neutral D (GeV/c^2)
Definition: LauConstants.hh:45
const Double_t mK
Mass of K+- (GeV/c^2)
Definition: LauConstants.hh:59
const Double_t mPi
Mass of pi+- (GeV/c^2)
Definition: LauConstants.hh:55
const Double_t mEtaPrime
Mass of eta' (GeV/c^2)
Definition: LauConstants.hh:65
LauResonanceInfo * getResInfo(const TString &resName) const
Get the information for the given resonance name.