herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
Herwig::KMatrix Class Referenceabstract

The KMatrix class is a base class for the implementation of K-matrix parameterizations in Herwig. More...

#include <KMatrix.h>

Inheritance diagram for Herwig::KMatrix:

Public Types

enum  Channels {
  PiPi , KPi , KEta , KEtaPrime ,
  KK , EtaEta , EtaEtaPrime , FourPi
}
 Enum for the possible channels. More...
 
- Public Types inherited from ThePEG::InterfacedBase
enum  InitState
 
- Public Types inherited from ThePEG::Pointer::ReferenceCounted
typedef unsigned int CounterType
 

Public Member Functions

 KMatrix (FlavourInfo flavour=FlavourInfo(), vector< Channels > channels=vector< Channels >(), vector< Energy2 > poles=vector< Energy2 >(), vector< vector< Energy > > g=vector< vector< Energy > >())
 The default constructor.
 
FlavourInfo flavourInfo () const
 The quantum numbers of the K-matrix.
 
virtual ublas::matrix< double > K (Energy2 s, bool multiplyByPoles=false) const =0
 Compute the K-matrix for a given scale.
 
virtual ublas::matrix< Complexrho (Energy2 s) const
 The \(\rho\) matrix.
 
const vector< Energy2 > & poles () const
 Vector containing the locations of the poles.
 
const vector< vector< Energy > > & poleCouplings () const
 Access the couplings of the poles.
 
virtual ublas::vector< Complexamplitudes (Energy2 s, ublas::vector< Complex > pVector, bool multiplyByPoles=false) const
 Compute the amplitdes given the \(P\)-vector.
 
unsigned int numberOfChannels ()
 The number of channels.
 
string setCouplings (string arg)
 Set the couplings.
 
string setPoles (string arg)
 Set the pole values.
 
- Public Member Functions inherited from ThePEG::Interfaced
virtual bool defaultInit ()
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
PPtr getParticle (PID) const
 
PDPtr getParticleData (PID) const
 
bool used () const
 
void useMe () const
 
tEGPtr generator () const
 
- Public Member Functions inherited from ThePEG::InterfacedBase
string fullName () const
 
string name () const
 
string path () const
 
string comment () const
 
void setup (istream &is)
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
virtual IBPtr fullclone () const
 
void persistentOutput (PersistentOStream &os) const
 
void persistentInput (PersistentIStream &is, int version)
 
virtual void debugme () const
 
void update ()
 
void init ()
 
virtual bool preInitialize () const
 
void initrun ()
 
void finish ()
 
void touch ()
 
void reset ()
 
void clear ()
 
InitState state () const
 
bool locked () const
 
bool touched () const
 
virtual IBPtr fullclone () const
 
- Public Member Functions inherited from ThePEG::Base
void debug () const
 
virtual void debugme () const
 
- Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted
CounterType referenceCount () const
 
- Public Member Functions inherited from ThePEG::Named
 Named (const string &newName=string())
 
 Named (const Named &)=default
 
const string & name () const
 
bool operator== (const Named &other) const
 
bool operator< (const Named &other) const
 

Standard Interfaced functions.

FlavourInfo flavour_
 The quantum numbers for the K-matrix.
 
vector< Channelschannels_
 The mesons in the various channels.
 
vector< Energy2 > poles_
 The positions of the poles.
 
vector< vector< Energy > > g_
 Couplings for the resonances.
 
Energy mPiPlus_
 Common masses for the \(\rho\) matrix.
 
Energy mPi0_
 The neutral pion mass.
 
Energy mKPlus_
 The charged kaon mass.
 
Energy mK0_
 The neutral kaon mass.
 
Energy mEta_
 The \(\eta\) mass.
 
Energy mEtaPrime_
 The \(\eta^\prime\) mass.
 
bool initTable_
 Parameters for the four piojn phase space.
 
double rho0_
 Matching constant.
 
double n_
 Power.
 
vector< Energy2 > en_
 Energy values for interpolator.
 
vector< double > rho_
 \(\rho\) values
 
Interpolator< double, Energy2 >::Ptr inter_
 The interpolator.
 
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
 
KMatrixoperator= (const KMatrix &)=delete
 The assignment operator is private and must never be called.
 

Functions used by the persistent I/O system.

void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
 
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.
 
static void Init ()
 The standard Init function used to initialize the interfaces.
 

Additional Inherited Members

- Static Public Member Functions inherited from ThePEG::Interfaced
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::InterfacedBase
static void Init ()
 
- Static Public Member Functions inherited from ThePEG::Base
static void Init ()
 
- Public Attributes inherited from ThePEG::InterfacedBase
 initializing
 
 uninitialized
 
 initialized
 
 runready
 
- Public Attributes inherited from ThePEG::Pointer::ReferenceCounted
const unsigned long uniqueId
 
- Protected Member Functions inherited from ThePEG::Interfaced
void reporeg (IBPtr object, string name) const
 
bool setDefaultReference (PtrT &ptr, string classname, string objectname)
 
 Interfaced (const string &newName)
 
 Interfaced (const Interfaced &i)
 
void setGenerator (tEGPtr generator)
 
- Protected Member Functions inherited from ThePEG::InterfacedBase
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
virtual IBPtr clone () const=0
 
 InterfacedBase (string newName)
 
 InterfacedBase (const InterfacedBase &i)
 
virtual void readSetup (istream &is)
 
virtual void doupdate ()
 
virtual void doinit ()
 
virtual void doinitrun ()
 
virtual void dofinish ()
 
virtual IVector getReferences ()
 
virtual void rebind (const TranslationMap &)
 
- Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
- Protected Member Functions inherited from ThePEG::Named
const Namedoperator= (const Named &other)
 
const string & name (const string &newName)
 
- Static Protected Member Functions inherited from ThePEG::Interfaced
static void registerRepository (IBPtr)
 
static void registerRepository (IBPtr, string newName)
 

Detailed Description

The KMatrix class is a base class for the implementation of K-matrix parameterizations in Herwig.

See also
The interfaces defined for KMatrix.

Definition at line 25 of file KMatrix.h.

Member Enumeration Documentation

◆ Channels

Enum for the possible channels.

Definition at line 32 of file KMatrix.h.

Member Function Documentation

◆ amplitudes()

virtual ublas::vector< Complex > Herwig::KMatrix::amplitudes ( Energy2  s,
ublas::vector< Complex pVector,
bool  multiplyByPoles = false 
) const
virtual

Compute the amplitdes given the \(P\)-vector.

Parameters
Whetheror not to multiply by \(\prod_i(1-s/m^2_i)\) to regularise the poles

◆ doinit()

virtual void Herwig::KMatrix::doinit ( )
protectedvirtual

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions
InitExceptionif object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in Herwig::KPiIHalfFOCUSKMatrix, Herwig::KPiIThreeHalfFOCUSKMatrix, and Herwig::PiPiAnisovichKMatrix.

◆ flavourInfo()

FlavourInfo Herwig::KMatrix::flavourInfo ( ) const
inline

The quantum numbers of the K-matrix.

Definition at line 47 of file KMatrix.h.

References flavour_.

◆ Init()

static void Herwig::KMatrix::Init ( )
static

The standard Init function used to initialize the interfaces.

Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.

◆ K()

virtual ublas::matrix< double > Herwig::KMatrix::K ( Energy2  s,
bool  multiplyByPoles = false 
) const
pure virtual

Compute the K-matrix for a given scale.

Parameters
sThe scale
Whetheror not to multiply by \(\prod_i(1-s/m^2_i)\) to regularise the poles

Implemented in Herwig::KPiIHalfFOCUSKMatrix, Herwig::KPiIThreeHalfFOCUSKMatrix, and Herwig::PiPiAnisovichKMatrix.

◆ numberOfChannels()

unsigned int Herwig::KMatrix::numberOfChannels ( )
inline

The number of channels.

Definition at line 84 of file KMatrix.h.

References channels_.

◆ operator=()

KMatrix & Herwig::KMatrix::operator= ( const KMatrix )
privatedelete

The assignment operator is private and must never be called.

In fact, it should not even be implemented.

◆ persistentInput()

void Herwig::KMatrix::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters
isthe persistent input stream read from.
versionthe version number of the object when written.

◆ persistentOutput()

void Herwig::KMatrix::persistentOutput ( PersistentOStream os) const

Function used to write out object persistently.

Parameters
osthe persistent output stream written to.

◆ poleCouplings()

const vector< vector< Energy > > & Herwig::KMatrix::poleCouplings ( ) const
inline

Access the couplings of the poles.

Definition at line 71 of file KMatrix.h.

References g_.

◆ poles()

const vector< Energy2 > & Herwig::KMatrix::poles ( ) const
inline

Vector containing the locations of the poles.

Definition at line 66 of file KMatrix.h.

References poles_.

Member Data Documentation

◆ channels_

vector<Channels> Herwig::KMatrix::channels_
private

The mesons in the various channels.

Definition at line 152 of file KMatrix.h.

Referenced by numberOfChannels().

◆ en_

vector<Energy2> Herwig::KMatrix::en_
private

Energy values for interpolator.

Definition at line 223 of file KMatrix.h.

◆ flavour_

FlavourInfo Herwig::KMatrix::flavour_
private

The quantum numbers for the K-matrix.

Definition at line 147 of file KMatrix.h.

Referenced by flavourInfo().

◆ g_

vector<vector<Energy> > Herwig::KMatrix::g_
private

Couplings for the resonances.

Definition at line 162 of file KMatrix.h.

Referenced by poleCouplings().

◆ initTable_

bool Herwig::KMatrix::initTable_
private

Parameters for the four piojn phase space.

Initialize the table

Definition at line 208 of file KMatrix.h.

◆ inter_

Interpolator<double,Energy2>::Ptr Herwig::KMatrix::inter_
mutableprivate

The interpolator.

Definition at line 233 of file KMatrix.h.

◆ mEta_

Energy Herwig::KMatrix::mEta_
private

The \(\eta\) mass.

Definition at line 193 of file KMatrix.h.

◆ mEtaPrime_

Energy Herwig::KMatrix::mEtaPrime_
private

The \(\eta^\prime\) mass.

Definition at line 198 of file KMatrix.h.

◆ mK0_

Energy Herwig::KMatrix::mK0_
private

The neutral kaon mass.

Definition at line 188 of file KMatrix.h.

◆ mKPlus_

Energy Herwig::KMatrix::mKPlus_
private

The charged kaon mass.

Definition at line 183 of file KMatrix.h.

◆ mPi0_

Energy Herwig::KMatrix::mPi0_
private

The neutral pion mass.

Definition at line 178 of file KMatrix.h.

◆ mPiPlus_

Energy Herwig::KMatrix::mPiPlus_
private

Common masses for the \(\rho\) matrix.

The charged pion mass

Definition at line 173 of file KMatrix.h.

◆ n_

double Herwig::KMatrix::n_
private

Power.

Definition at line 218 of file KMatrix.h.

◆ poles_

vector<Energy2> Herwig::KMatrix::poles_
private

The positions of the poles.

Definition at line 157 of file KMatrix.h.

Referenced by poles().

◆ rho0_

double Herwig::KMatrix::rho0_
private

Matching constant.

Definition at line 213 of file KMatrix.h.

◆ rho_

vector<double> Herwig::KMatrix::rho_
private

\(\rho\) values

Definition at line 228 of file KMatrix.h.


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