Herwig 7.3.0
|
Weak current for the production of two mesons via the \(\rho\) or \(K^*\) resonances. More...
#include <KPiKStarCurrent.h>
Public Member Functions | |
KPiKStarCurrent () | |
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 tPDVector | particles (int icharge, unsigned int imode, int iq, int ia) |
The particles produced by the current. | |
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 void | dataBaseOutput (ofstream &os, bool header, bool create) const |
Output the setup information for the particle database. | |
Public Member Functions inherited from Herwig::WeakCurrent | |
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. | |
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 |
Protected Member Functions | |
Clone Methods. | |
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. | |
Protected Member Functions inherited from Herwig::WeakCurrent | |
void | addDecayMode (int iq, int ia) |
Add a decay mode to the list. | |
void | setInitialModes (unsigned int nmodes) |
Set initial number of modes. | |
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 &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Protected Member Functions inherited from ThePEG::Named | |
const Named & | operator= (const Named &other) |
const string & | name (const string &newName) |
Standard Interfaced functions. | |
vector< Complex > | _kwgt |
Weights for the different \(K^*\) resonances in the current, \(\alpha_k\). | |
vector< double > | _kmag |
The magnitude for input. | |
vector< double > | _kphase |
The phase for input. | |
int | _kmodel |
Model to use for the \(K^*\) propagator. | |
bool | _kstarparameters |
Option not to use the physical masses and widths for the \(K^*\). | |
vector< Energy > | _kstarmasses |
The masses of the \(K^*\) resonances. | |
vector< Energy > | _kstarwidths |
The masses of the \(K^*\) resonances. | |
vector< Energy > | _mass |
Parameters for the Breit-Wigners. | |
vector< Energy > | _width |
The widths of the resonances. | |
vector< Energy > | _massa |
Masses of the decay products for the momentum calculation. | |
vector< Energy > | _massb |
vector< double > | _dh |
The function \(\frac{\\hat{H}}{dq^2}\) at \(q^2=m^2\) for the GS form of the Breit-Wigner. | |
vector< Energy2 > | _hres |
The function \(\\hat{H}\) at \(q^2=m^2\) for the GS form of the Breit-Wigner. | |
vector< Energy2 > | _h0 |
The \(H(0)\) parameter for the GS form of the Breit-Wigner. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving and EventGenerator to disk. | |
KPiKStarCurrent & | operator= (const KPiKStarCurrent &)=delete |
Private and non-existent assignment operator. | |
Complex | BreitWigner (Energy2 q2, unsigned int imodel, unsigned int ires) const |
\(p\)-wave breit wigner for form-factors | |
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 () |
Standard Init function used to initialize the interfaces. | |
Additional Inherited Members | |
Public Types inherited from ThePEG::InterfacedBase | |
enum | InitState |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
Static Public Member Functions inherited from Herwig::WeakCurrent | |
static void | Init () |
Standard Init function used to initialize the interfaces. | |
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 |
Static Protected Member Functions inherited from ThePEG::Interfaced | |
static void | registerRepository (IBPtr) |
static void | registerRepository (IBPtr, string newName) |
Weak current for the production of two mesons via the \(\rho\) or \(K^*\) resonances.
These currents are taken from tau decays.
The current takes the form
\[J^\mu = \frac{\sqrt{2}}{\sum_k\alpha_k}\left((p_1-p_2)^\mu-\frac{(p_1-p_2)\cdot q}{q^2}q^\mu))\right) \sum_k \alpha_k B_{R_k}(q^2) \]
where
\(\alpha_k\) is the weight for the resonance.
The Breit-Wigner term is summed over the \(\rho\) or \(K^*\) resonances that can contribute to a given decay.
The models of either Kuhn and Santamaria (Z. Phys. C48, 445 (1990)) or Gounaris and Sakurai Phys. Rev. Lett. 21, 244 (1968) are supported for the shape of the Breit-Wigner distribution. The mixing parameters are taken from Phys.Rev.D61:112002,2000 (CLEO) for the decay \(\pi^\pm\pi^0\) and the CLEO version of TAUOLA for the \(K\pi\) decays.
Definition at line 54 of file KPiKStarCurrent.h.
|
virtual |
Accept the decay.
Checks the particles are the allowed mode.
id | The id's of the particles in the current. |
Implements Herwig::WeakCurrent.
|
inlineprivate |
\(p\)-wave breit wigner for form-factors
q2 | The scale \(q^2\) for the Breit-Wigner |
imodel | Which of the two models for the Breit-Wigner shape to use. |
ires | Which of the different multiplets to use. |
Definition at line 213 of file KPiKStarCurrent.h.
|
inlineprotectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
Definition at line 175 of file KPiKStarCurrent.h.
|
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.
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.
|
inlineprotectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
Definition at line 181 of file KPiKStarCurrent.h.
|
virtual |
The particles produced by the current.
This just returns the two pseudoscalar mesons and the photon.
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::KPiKStarCurrent::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::KPiKStarCurrent::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
private |
The function \(\frac{\\hat{H}}{dq^2}\) at \(q^2=m^2\) for the GS form of the Breit-Wigner.
Definition at line 295 of file KPiKStarCurrent.h.
Referenced by BreitWigner().
|
private |
The \(H(0)\) parameter for the GS form of the Breit-Wigner.
Definition at line 307 of file KPiKStarCurrent.h.
Referenced by BreitWigner().
|
private |
The function \(\\hat{H}\) at \(q^2=m^2\) for the GS form of the Breit-Wigner.
Definition at line 301 of file KPiKStarCurrent.h.
Referenced by BreitWigner().
|
private |
The magnitude for input.
Definition at line 244 of file KPiKStarCurrent.h.
|
private |
Model to use for the \(K^*\) propagator.
Definition at line 255 of file KPiKStarCurrent.h.
|
private |
The phase for input.
Definition at line 249 of file KPiKStarCurrent.h.
|
private |
The masses of the \(K^*\) resonances.
Definition at line 265 of file KPiKStarCurrent.h.
|
private |
Option not to use the physical masses and widths for the \(K^*\).
Definition at line 260 of file KPiKStarCurrent.h.
|
private |
The masses of the \(K^*\) resonances.
Definition at line 270 of file KPiKStarCurrent.h.
|
private |
Weights for the different \(K^*\) resonances in the current, \(\alpha_k\).
The Complex weight used in the calculation
Definition at line 239 of file KPiKStarCurrent.h.
|
private |
Parameters for the Breit-Wigners.
The masses of the resonances
Definition at line 279 of file KPiKStarCurrent.h.
Referenced by BreitWigner().
|
private |
Masses of the decay products for the momentum calculation.
Definition at line 289 of file KPiKStarCurrent.h.
Referenced by BreitWigner().
|
private |
Definition at line 289 of file KPiKStarCurrent.h.
|
private |
The widths of the resonances.
Definition at line 284 of file KPiKStarCurrent.h.
Referenced by BreitWigner().