Herwig 7.3.0
|
The OneKaonTwoPionCurrent class implements the model of M. More...
#include <OneKaonTwoPionCurrent.h>
Public Member Functions | |
OneKaonTwoPionCurrent () | |
The default constructor. | |
Methods for the construction of the phase space integrator. | |
virtual bool | createMode (int icharge, tcPDPtr resonance, FlavourInfo flavour, unsigned int imode, PhaseSpaceModePtr mode, unsigned int iloc, int ires, PhaseSpaceChannel phase, Energy upp) |
Complete the construction of the decay mode for integration.classes inheriting from this one. | |
virtual vector< LorentzPolarizationVectorE > | current (tcPDPtr resonance, FlavourInfo flavour, const int imode, const int ichan, Energy &scale, const tPDVector &outgoing, const vector< Lorentz5Momentum > &momenta, DecayIntegrator::MEOption meopt) const |
Hadronic current. | |
virtual bool | accept (vector< int > id) |
Accept the decay. | |
virtual unsigned int | decayMode (vector< int > id) |
Return the decay mode number for a given set of particles in the current. | |
virtual tPDVector | particles (int icharge, unsigned int imode, int iq, int ia) |
The particles produced by the current. | |
virtual void | dataBaseOutput (ofstream &os, bool header, bool create) const |
Output the setup information for the particle database. | |
![]() | |
WeakCurrent () | |
Default constructor. | |
unsigned int | numberOfModes () const |
Return the number of modes handled by this current. | |
virtual void | constructSpinInfo (ParticleVector decay) const |
Construct the SpinInfo for the decay products. | |
void | decayModeInfo (unsigned int imode, int &iq, int &ia) const |
Information on a decay mode. | |
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. | |
![]() | |
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 |
![]() | |
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 |
![]() | |
void | debug () const |
virtual void | debugme () const |
![]() | |
CounterType | referenceCount () const |
![]() | |
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 |
Clone Methods. | |
vector< double > | _rho1wgts |
Parameters for the \(\rho\) in the axial-vector terms. | |
vector< Energy > | _rho1mass |
Masses. | |
vector< Energy > | _rho1width |
Widths. | |
vector< double > | _kstar1wgts |
Parameters for the \(K^*\) in the axial-vector terms. | |
vector< Energy > | _kstar1mass |
Masses. | |
vector< Energy > | _kstar1width |
Widths. | |
vector< double > | _kstar2wgts |
Parameters for the \(K^*\) in the vector terms. | |
vector< Energy > | _kstar2mass |
Masses. | |
vector< Energy > | _kstar2width |
Widths. | |
vector< Energy > | _k1mass |
Parameters for the three meson resonances. | |
vector< Energy > | _k1width |
The widths of the \(K_1\) resonances. | |
vector< double > | _k1wgta |
The weights for the different \(K_1\) resonances for \(K_1\to K^*\pi\). | |
vector< double > | _k1wgtb |
The weights for the different \(K_1\) resonaces for \(K_1\to\rho K\). | |
Energy | _fpi |
The pion decay constant, \(f_\pi\). | |
Energy | _mpi |
The pion mass. | |
Energy | _mK |
The kaon mass. | |
virtual IBPtr | clone () const |
Make a simple clone of this object. | |
virtual IBPtr | fullclone () const |
Make a clone of this object, possibly modifying the cloned object to make it sane. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving and EventGenerator to disk. | |
OneKaonTwoPionCurrent & | operator= (const OneKaonTwoPionCurrent &)=delete |
The assignment operator is private and must never be called. | |
Complex | Trho1 (Energy2 q2, int ires) const |
The \(\rho\) lineshape for the axial-vector terms. | |
Complex | TKstar1 (Energy2 q2, int ires) const |
The \(K^*\) lineshape for the axial-vector terms. | |
Complex | TKstar2 (Energy2 q2, int ires) const |
The \(K^*\) lineshape for the vector terms. | |
Complex | TK1 (Energy2 q2, unsigned int iopt, int ires) const |
The \(K_1\) line shape. | |
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 | |
![]() | |
enum | InitState |
![]() | |
typedef unsigned int | CounterType |
![]() | |
static void | Init () |
Standard Init function used to initialize the interfaces. | |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
static void | Init () |
![]() | |
initializing | |
uninitialized | |
initialized | |
runready | |
![]() | |
const unsigned long | uniqueId |
![]() | |
void | addDecayMode (int iq, int ia) |
Add a decay mode to the list. | |
void | setInitialModes (unsigned int nmodes) |
Set initial number of modes. | |
![]() | |
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) |
![]() | |
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 &) |
![]() | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
![]() | |
const Named & | operator= (const Named &other) |
const string & | name (const string &newName) |
![]() | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
The OneKaonTwoPionCurrent class implements the model of M.
Finkemeier and E.~Mirkes, Z. Phys. C 69 (1996) 243 [arXiv:hep-ph/9503474], for the weak current for three mesons where at least one of the mesons is a kaon.
This is the base class for the three meson decays of the weak current. It is designed so that the currents for the following modes can be implemented in classes inheriting from this
obviously there are other modes with three pseudoscalar mesons for the decay of the weak current but this model original came from \(\tau\) decay where these are the only modes. However one case which is important is the inclusion of the mixing in the neutral kaon sector for which we include the additional currents
\( K^0_S \pi^- K^0_L\), (imode=11)
In this case the current is given by
\[ J^\mu = \left(g^{\mu\nu}-\frac{q^\mu q^\nu}{q^2}\right) \left[F_1(p_2-p_3)^\mu +F_2(p_3-p_1)^\mu+F_3(p_1-p_2)^\mu\right] +q^\mu F_4 +F_5\epsilon^{\mu\alpha\beta\gamma}p_1^\alpha p_2^\beta p_3^\gamma \]
where
Definition at line 71 of file OneKaonTwoPionCurrent.h.
|
virtual |
Accept the decay.
Checks the mesons against the list.
id | The id's of the particles in the current. |
Implements Herwig::WeakCurrent.
|
protectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
|
virtual |
Complete the construction of the decay mode for integration.classes inheriting from this one.
This method is purely virtual and must be implemented in the classes inheriting from WeakCurrent.
icharge | The total charge of the outgoing particles in the current. |
resonance | If specified only include terms with this particle |
flavour | Information on the required flavours of the quarks |
imode | The mode in the current being asked for. |
mode | The phase space mode for the integration |
iloc | The location of the of the first particle from the current in the list of outgoing particles. |
ires | The location of the first intermediate for the current. |
phase | The prototype phase space channel for the integration. |
upp | The maximum possible mass the particles in the current are allowed to have. |
Implements Herwig::WeakCurrent.
|
virtual |
Hadronic current.
This method is purely virtual and must be implemented in all classes inheriting from this one.
resonance | If specified only include terms with this particle |
flavour | Information on the required flavours of the quarks |
imode | The mode |
ichan | The phase-space channel the current is needed for. |
scale | The invariant mass of the particles in the current. |
outgoing | The particles produced in the decay |
momenta | The momenta of the particles produced in the decay |
meopt | Option for the calculation of the matrix element |
Implements Herwig::WeakCurrent.
|
virtual |
Output the setup information for the particle database.
os | The stream to output the information to |
header | Whether or not to output the information for MySQL |
create | Whether or not to add a statement creating the object |
Reimplemented from Herwig::WeakCurrent.
|
virtual |
Return the decay mode number for a given set of particles in the current.
Checks the mesons against the list.
id | The id's of the particles in the current. |
Implements Herwig::WeakCurrent.
|
protectedvirtual |
Initialize this object after the setup phase before saving and EventGenerator to disk.
InitException | if object could not be initialized properly. |
Reimplemented from ThePEG::InterfacedBase.
|
protectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
|
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.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
|
virtual |
The particles produced by the current.
This returns the mesons for the mode.
icharge | The total charge of the particles in the current. |
imode | The mode for which the particles are being requested |
iq | The PDG code for the quark |
ia | The PDG code for the antiquark |
Implements Herwig::WeakCurrent.
void Herwig::OneKaonTwoPionCurrent::persistentInput | ( | PersistentIStream & | is, |
int | version | ||
) |
Function used to read in object persistently.
is | the persistent input stream read from. |
version | the version number of the object when written. |
void Herwig::OneKaonTwoPionCurrent::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
private |
The \(K_1\) line shape.
q2 | The scale \(q^2\) for the Breit-Wigner |
iopt | Whether this is \(K^*\pi\) or \(\rho K\). |
ires | the resonance |
|
inlineprivate |
The \(K^*\) lineshape for the axial-vector terms.
q2 | The scale \(q^2\) for the lineshape |
ires | Which \(K^*\) multiplet |
Definition at line 249 of file OneKaonTwoPionCurrent.h.
References _kstar1mass, _kstar1wgts, _kstar1width, _mK, and _mpi.
|
inlineprivate |
The \(K^*\) lineshape for the vector terms.
q2 | The scale \(q^2\) for the lineshape |
ires | Which \(K^*\) multiplet |
Definition at line 269 of file OneKaonTwoPionCurrent.h.
References _kstar2mass, _kstar2wgts, _kstar2width, _mK, and _mpi.
|
inlineprivate |
The \(\rho\) lineshape for the axial-vector terms.
q2 | The scale \(q^2\) for the lineshape |
ires | Which \(\rho\) multiplet |
Definition at line 229 of file OneKaonTwoPionCurrent.h.
References _mpi, _rho1mass, _rho1wgts, and _rho1width.
|
private |
The pion decay constant, \(f_\pi\).
Definition at line 383 of file OneKaonTwoPionCurrent.h.
|
private |
Parameters for the three meson resonances.
The masses of the \(aK1\) resonances.
Definition at line 362 of file OneKaonTwoPionCurrent.h.
|
private |
The weights for the different \(K_1\) resonances for \(K_1\to K^*\pi\).
Definition at line 372 of file OneKaonTwoPionCurrent.h.
|
private |
The weights for the different \(K_1\) resonaces for \(K_1\to\rho K\).
Definition at line 377 of file OneKaonTwoPionCurrent.h.
|
private |
The widths of the \(K_1\) resonances.
Definition at line 367 of file OneKaonTwoPionCurrent.h.
|
private |
|
private |
Parameters for the \(K^*\) in the axial-vector terms.
Weight for the different resonances
Definition at line 321 of file OneKaonTwoPionCurrent.h.
Referenced by TKstar1().
|
private |
|
private |
|
private |
Parameters for the \(K^*\) in the vector terms.
Weight for the different resonances
Definition at line 341 of file OneKaonTwoPionCurrent.h.
Referenced by TKstar2().
|
private |
|
private |
The kaon mass.
Definition at line 393 of file OneKaonTwoPionCurrent.h.
|
private |
The pion mass.
Definition at line 388 of file OneKaonTwoPionCurrent.h.
|
private |
|
private |
Parameters for the \(\rho\) in the axial-vector terms.
Weight for the different resonances
Definition at line 301 of file OneKaonTwoPionCurrent.h.
Referenced by Trho1().
|
private |