Herwig 7.3.0
|
The a1ThreePionDecayer
class is designed to implement the decay of the a_1 to three pions.
More...
#include <a1ThreePionDecayer.h>
Public Member Functions | |
a1ThreePionDecayer () | |
Default constructor. | |
virtual int | modeNumber (bool &cc, tcPDPtr parent, const tPDVector &children) const |
Which of the possible decays is required. | |
double | me2 (const int ichan, const Particle &part, const tPDVector &outgoing, const vector< Lorentz5Momentum > &momenta, MEOption meopt) const |
Return the matrix element squared for a given mode and phase-space channel. | |
virtual void | constructSpinInfo (const Particle &part, ParticleVector outgoing) const |
Construct the SpinInfos for the particles produced in the decay. | |
virtual WidthCalculatorBasePtr | threeBodyMEIntegrator (const DecayMode &dm) const |
Method to return an object to calculate the 3 body partial width. | |
virtual double | threeBodyMatrixElement (const int imode, const Energy2 q2, const Energy2 s3, const Energy2 s2, const Energy2 s1, const Energy m1, const Energy m2, const Energy m3) const |
The matrix element to be integrated for the three-body decays as a function of the invariant masses of pairs of the outgoing particles. | |
virtual void | dataBaseOutput (ofstream &os, bool header) const |
Output the setup information for the particle database. | |
Public Member Functions inherited from Herwig::DecayIntegrator | |
DecayIntegrator () | |
The default constructor. | |
virtual bool | accept (tcPDPtr parent, const tPDVector &children) const |
Check if this decayer can perfom the decay for a particular mode. | |
virtual ParticleVector | decay (const Particle &parent, const tPDVector &children) const |
For a given decay mode and a given particle instance, perform the decay and return the decay products. | |
virtual int | modeNumber (bool &cc, tcPDPtr parent, const tPDVector &children) const =0 |
Which of the possible decays is required. | |
int | imode () const |
The mode being used for this decay. | |
void | addMode (PhaseSpaceModePtr mode) const |
Add a phase-space mode to the list. | |
virtual double | me2 (const int ichan, const Particle &part, const tPDVector &outgoing, const vector< Lorentz5Momentum > &momenta, MEOption meopt) const =0 |
Return the matrix element squared for a given mode and phase-space channel. | |
virtual void | constructSpinInfo (const Particle &part, ParticleVector outgoing) const =0 |
Construct the SpinInfos for the particles produced in the decay. | |
virtual void | dataBaseOutput (ofstream &os, bool header) const |
Output the setup information for the particle database. | |
void | setPartialWidth (const DecayMode &dm, int imode) |
Set the code for the partial width. | |
virtual bool | twoBodyMEcode (const DecayMode &, int &mecode, double &coupling) const |
Specify the \(1\to2\) matrix element to be used in the running width calculation. | |
virtual WidthCalculatorBasePtr | threeBodyMEIntegrator (const DecayMode &dm) const |
Method to return an object to calculate the 3 (or higher body) partial width. | |
virtual double | threeBodyMatrixElement (const int imode, const Energy2 q2, const Energy2 s3, const Energy2 s2, const Energy2 s1, const Energy m1, const Energy m2, const Energy m3) const |
The matrix element to be integrated for the three-body decays as a function of the invariant masses of pairs of the outgoing particles. | |
virtual InvEnergy | threeBodydGammads (const int imode, const Energy2 q2, const Energy2 s, const Energy m1, const Energy m2, const Energy m3) const |
The differential three body decay rate with one integral performed. | |
int | findMode (const DecayMode &dm) |
Finds the phase-space mode corresponding to a given decay mode. | |
ParticleVector | generatePhotons (const Particle &p, ParticleVector children) |
Members for the generation of QED radiation in the decays. | |
bool | canGeneratePhotons () |
check if photons can be generated in the decay | |
virtual double | oneLoopVirtualME (unsigned int imode, const Particle &part, const ParticleVector &products) |
The one-loop virtual correction. | |
bool | hasOneLoopME () |
Whether or not the one loop matrix element is implemented. | |
virtual InvEnergy2 | realEmissionME (unsigned int imode, const Particle &part, ParticleVector &products, unsigned int iemitter, double ctheta, double stheta, const LorentzRotation &rot1, const LorentzRotation &rot2) |
The real emission matrix element. | |
bool | hasRealEmissionME () |
Whether or not the real emission matrix element is implemented. | |
bool | warnings () const |
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 Herwig::HwDecayerBase | |
HwDecayerBase () | |
The default constructor. | |
virtual bool | accept (const DecayMode &dm) const |
Check if this decayer can perfom the decay specified by the given decay mode. | |
virtual ParticleVector | decay (const DecayMode &dm, const Particle &p) const |
Perform a decay for a given DecayMode and a given Particle instance. | |
virtual POWHEGType | hasPOWHEGCorrection () |
Has a POWHEG style correction. | |
virtual bool | hasMECorrection () |
Has an old fashioned ME correction. | |
virtual void | initializeMECorrection (RealEmissionProcessPtr, double &, double &) |
Initialize the ME correction. | |
virtual RealEmissionProcessPtr | applyHardMatrixElementCorrection (RealEmissionProcessPtr) |
Apply the hard matrix element correction to a given hard process or decay. | |
virtual bool | softMatrixElementVeto (PPtr parent, PPtr progenitor, const bool &fs, const Energy &highestpT, const vector< tcPDPtr > &ids, const double &z, const Energy &scale, const Energy &pT) |
Apply the soft matrix element correction. | |
virtual RealEmissionProcessPtr | generateHardest (RealEmissionProcessPtr) |
Apply the POWHEG style correction. | |
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. | |
bool | initialize () const |
Access to the initialize variable. | |
bool | databaseOutput () const |
Access the database output variable. | |
Public Member Functions inherited from ThePEG::Decayer | |
void | persistentOutput (PersistentOStream &os) const |
void | persistentInput (PersistentIStream &is, int version) |
virtual bool | accept (const DecayMode &dm) const=0 |
virtual bool | needsFullStep () const |
virtual ParticleVector | decay (const DecayMode &dm, const Particle &p) const=0 |
virtual ParticleVector | decay (const DecayMode &dm, const Particle &p, Step &step) const |
virtual double | brat (const DecayMode &dm, const ParticleData &pd, double oldbrat) const |
virtual double | brat (const DecayMode &dm, const Particle &p, double oldbrat) const |
virtual ParticleVector | getChildren (const DecayMode &dm, const Particle &parent) const |
virtual void | finalBoost (const Particle &parent, const ParticleVector &children) const |
virtual void | setScales (const Particle &parent, const ParticleVector &children) const |
Ptr< Amplitude >::pointer | amplitude () const |
Public Member Functions inherited from ThePEG::HandlerBaseT< UseRandom > | |
double | rnd () const |
double | rnd (double xu) const |
double | rnd (double xl, double xu) const |
bool | rndbool () const |
bool | rndbool (double p) const |
bool | rndbool (double p1, double p2) const |
int | rndsign (double p1, double p2, double p3) const |
int | rnd2 (double p0, double p1) const |
int | rnd3 (double p0, double p1, double p2) const |
int | rnd4 (double p0, double p1, double p2, double p3) const |
long | irnd (long xu=2) const |
long | irnd (long xl, long xu) const |
const StandardModelBase & | SM () const |
tSMPtr | standardModel () const |
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::DecayIntegrator | |
ParticleVector | generate (bool inter, bool cc, const unsigned int &imode, const Particle &inpart) const |
Generate the momenta for the decay. | |
void | imode (int in) |
Set the mode being use for this decay. | |
void | ME (DecayMEPtr in) const |
Set the helicity matrix element for the decay. | |
DecayMEPtr | ME () const |
The helicity amplitude matrix element for spin correlations. | |
void | resetIntermediate (tcPDPtr part, Energy mass, Energy width) |
Reset the properities of all intermediates. | |
Energy | initializePhaseSpaceMode (unsigned int imode, bool init, bool onShell=false) const |
Initialize the phase-space mode. | |
void | generateIntermediates (bool in) |
Methods to set variables in inheriting classes. | |
bool | generateIntermediates () const |
Set whether or not the intermediates are included. | |
void | hasOneLoopME (bool in) |
Whether or not the one loop matrix element is implemented. | |
void | hasRealEmissionME (bool in) |
Whether or not the real emission matrix element is implemented. | |
void | epsilonPS (Energy in) |
Set the epsilon parameter. | |
void | clearModes () |
Clear the models. | |
unsigned int | numberModes () const |
Number of decay modes. | |
tPhaseSpaceModePtr | mode (unsigned int ix) |
Pointer to a mode. | |
tcPhaseSpaceModePtr | mode (unsigned int ix) const |
Pointer to a mode. | |
Protected Member Functions inherited from Herwig::HwDecayerBase | |
virtual void | dofinish () |
Finalize this object. | |
void | fixRho (RhoDMatrix &) const |
Set rho to be diagonal if no correlations. | |
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< Energy > | _rhomass |
Mass of the rho resonances. | |
vector< Energy > | _rhowidth |
Width of the rho resonaces. | |
vector< Energy > | _prho |
Momentum of the pions produced in the \(\rho\) decay. | |
vector< Energy2 > | _hm2 |
The function \(h(q^2)\) evaluated at \(q^2=M^2_{\rho_k}\). | |
vector< Energy2 > | _rhoD |
The normalization factor for the \(\rho_k\) propagator factor. | |
vector< double > | _dhdq2m2 |
The \(\frac{dh}{dq^2}\) function in the rho propagator evaluated at \(q^2=m^2\) for the different \(\rho\) multiplets. | |
Energy | _sigmamass |
The mass of the \(\sigma\) meson. | |
Energy | _sigmawidth |
The width of the \(\sigma\) meson. | |
Energy | _psigma |
The momenta of the pions produced in the \(\sigma\) meson decay. | |
Energy | _mpi |
The mass of the pion, \(m_\pi\). | |
Energy2 | _mpi2 |
The mass of the pion, \(m^2_\pi\). | |
Energy2 | _lambda2 |
The \(\Lambda^2\) parameter for the \(a_1\) form factor. | |
Energy2 | _a1mass2 |
The mass squared of the \(a_1\) meson, \(m_{a_1}^2\). | |
Complex | _zsigma |
The \(z\) coupling for the \(\sigma\) resonance. | |
double | _zmag |
The magnitude of the \(z\) \(\sigma\) coupling. | |
double | _zphase |
The phase of the \(z\) \(\sigma\) coupling. | |
vector< Complex > | _rhocoupling |
\(g_{\rho_k}\) is the coupling of the \(k\) th \(\rho\) multiplet. | |
vector< double > | _rhomag |
Magnitude of the rho coupling. | |
vector< double > | _rhophase |
Phase of the rho coupling. | |
double | _coupling |
The overall coupling for the decay. | |
bool | _localparameters |
use local values of the mass parameters | |
vector< double > | _zerowgts |
Weights for the channels for the zero charged pion channel. | |
vector< double > | _onewgts |
Weights for the channels for the one charged pion channel. | |
vector< double > | _twowgts |
Weights for the channels for the two charged pion channel. | |
vector< double > | _threewgts |
Weights for the channels for the three charged pion channel. | |
double | _zeromax |
Maximum weight for the zero charged pion channel. | |
double | _onemax |
Maximum weight for the one charged pion channel. | |
double | _twomax |
Maximum weight for the two charged pion channel. | |
double | _threemax |
Maximum weight for the three charged pion channel. | |
RhoDMatrix | _rho |
Spin density matrix. | |
vector< Helicity::LorentzPolarizationVector > | _vectors |
Polarization vectors. | |
virtual void | doinit () |
Initialize this object after the setup phase before saving and EventGenerator to disk. | |
virtual void | doinitrun () |
Initialize this object to the begining of the run phase. | |
a1ThreePionDecayer & | operator= (const a1ThreePionDecayer &)=delete |
Private and non-existent assignment operator. | |
Complex | sigmaBreitWigner (Energy2 q2) const |
Breit-wigner for the \(\sigma\), this is \(\frac1{D_\sigma(q^2)}\). | |
double | a1FormFactor (Energy2 q2) const |
The \(a_1\) form factor, \(F_{a_1}(q^2)\). | |
Complex | rhoBreitWigner (Energy2 q2, int ires) const |
Breit-Wigner for the \(\rho\), this is \(\frac1{D_{\rho_k}(q^2)}\). | |
Energy2 | DParameter (int ires) const |
Normalisation factor for the \(\rho\) propagator to ensure \(D(0)=-1\). | |
double | dhdq2Parameter (int ires) const |
The \(\frac{dh}{dq^2}\) function in the rho propagator evaluated at \(q^2=m^2\). | |
Energy2 | hFunction (const Energy q) const |
The \(h(q^2)\) function in the \(\rho\) propagator. | |
Energy4 | lambda (Energy2 a, Energy2 b, Energy2 c) const |
Momentum Function. | |
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 Herwig::DecayIntegrator | |
enum | MEOption { Initialize , Calculate , Terminate } |
Enum for the matrix element option. More... | |
Public Types inherited from Herwig::HwDecayerBase | |
enum | POWHEGType { No , ISR , FSR , Both } |
Virtual members to be overridden by inheriting classes which implement hard corrections. More... | |
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::DecayIntegrator | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Static Public Member Functions inherited from Herwig::HwDecayerBase | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Static Public Member Functions inherited from ThePEG::Decayer | |
static void | Init () |
static ParticleVector | DecayParticle (tPPtr parent, Step &step, long maxtry=1000) |
Static Public Member Functions inherited from ThePEG::HandlerBase | |
static void | Init () |
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) |
The a1ThreePionDecayer
class is designed to implement the decay of the a_1 to three pions.
The model used is one based on the Novosibirsk four pion current used in TAUOLA.
\[J^\mu =\frac{F_{a_1}(q^2)g}{qM^2_{\rho_0}}\epsilon_\mu\left[ q^2z \sum_i p^\mu_i \frac1{D_\sigma(s_i)}\right]\]
\[J^\mu =\frac{F_{a_1}(q^2)g}{qM^2_{\rho_0}}\epsilon_\mu\left[ q^2z\frac1{D_\sigma(s_3)} p_3^\mu +\sum_k g_{\rho_k}\left\{ \frac1{D_{\rho_k}(s_1)}\left(p_0\cdot p_3p_2^\mu-p_0\cdot p_2p_3^\mu\right) +\frac1{D_{\rho_k}(s_2)}\left(p_0\cdot p_3p_1^\mu-p_0\cdot p_1p_3^\mu\right) \right\} \right]\]
\[J^\mu =\frac{F_{a_1}(q^2)g}{qM^2_{\rho_0}}\left[ q^2z\frac1{D_\sigma(s_3)}p_3^\mu +\sum_k g_{\rho_k}\left\{ \frac1{D_{\rho_k}(s_1)}\left(p_0\cdot p_3p_2^\mu-p_0\cdot p_2p_3^\mu\right) +\frac1{D_{\rho_k}(s_2)}\left(p_0\cdot p_3p_1^\mu-p_0\cdot p_1p_3^\mu\right)\right\} \right]\]
\[J^\mu = \frac{F_{a_1}(q^2)g}{qM^2_{\rho_0}}\left[ q^2z\left(\frac1{D_\sigma(s_1)}p_1^\mu+\frac1{D_\sigma(s_2)}p_2^\mu\right) -\sum_k g_{\rho_k}\left\{ \frac1{D_{\rho_k}(s_1)}\left(p_0\cdot p_3p_2^\mu-p_0\cdot p_2p_3^\mu\right) +\frac1{D_{\rho_k}(s_2)}\left(p_0\cdot p_3p_1^\mu-p_0\cdot p_1p_3^\mu\right)\right\} \right]\]
\[D_\sigma(q^2) = q^2-M^2+iM\Gamma\frac{g_\sigma(q^2)}{g_\sigma(M^2)}\]
where \(g(s) = \left(1-4\frac{m_{\pi}^2}{s}\right)\) for the \(\sigma\) meson, and\[D_{\rho_k}(q^2) = q^2-M^2_{\rho_k}-M_{\rho_k}\Gamma_{\rho_k}dm(q^2) +iM_{\rho_k}\Gamma_{\rho_k}\frac{g_{\rho_k}(q^2)}{g_{\rho_k}(M^2)} \]
for the \(\rho\).The propagator factors are normalized such that \(D(0)=-1\).
Here
\[dm(q^2) = \frac1{g_{\rho_k}(M^2_{\rho_k}}\left(h_{\rho_k}(q^2)-h_{\rho_k}(M^2_{\rho_k} -\left.(q^2-M^2_{\rho_k})\frac{dh_{\rho_k}(q^2)}{dq^2}\right|_{q^2=M^2_{\rho_k}} \right)\]
where
\[h_{\rho_k}(q^2) = \left\{ \begin{array}{cc} \frac{\sqrt{1-\frac{4m_\pi^2}{q^2}}\ln\left(\frac{1+\sqrt{1-\frac{4m_\pi^2}{q^2}}}{1-\sqrt{1-\frac{4m_\pi^2}{q^2}}}\right)(q^2-4m_\pi^2)}\pi & {\rm for\ } q^2>4m_\pi^2 \\ -8\frac{m_\pi^2}{\pi} & {\rm for\ } q^2=0\,{\rm GeV^2} \\ 0 & {\rm otherwise} \end{array}\right.\]
The \(a_1\) form factor for the off-shell \(a_1\) is given by
\[F_{a_1}(q^2) = \frac{\left(1+m^2_{a_1}/\Lambda^2\right)} {\left(1+ q^2/\Lambda^2\right)}.\]
The masses and couplings are
Definition at line 102 of file a1ThreePionDecayer.h.
|
inlineprivate |
The \(a_1\) form factor, \(F_{a_1}(q^2)\).
q2 | The scale, \(q^2\). |
Definition at line 258 of file a1ThreePionDecayer.h.
|
inlineprotectedvirtual |
Make a simple clone of this object.
Implements ThePEG::InterfacedBase.
Definition at line 203 of file a1ThreePionDecayer.h.
|
virtual |
Construct the SpinInfos for the particles produced in the decay.
Implements Herwig::DecayIntegrator.
|
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 |
Reimplemented from Herwig::DecayIntegrator.
|
inlineprivate |
The \(\frac{dh}{dq^2}\) function in the rho propagator evaluated at \(q^2=m^2\).
ires | The \(\rho\) resonance for the function |
Definition at line 305 of file a1ThreePionDecayer.h.
References _mpi2, _rhomass, ThePEG::Constants::pi, ThePEG::sqr(), and ThePEG::sqrt().
|
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 |
Initialize this object to the begining of the run phase.
Reimplemented from Herwig::DecayIntegrator.
|
inlineprivate |
Normalisation factor for the \(\rho\) propagator to ensure \(D(0)=-1\).
ires | The \(\rho\) multiplet. |
Definition at line 294 of file a1ThreePionDecayer.h.
References _dhdq2m2, _hm2, _prho, _rhomass, _rhowidth, hFunction(), ThePEG::sqr(), and ThePEG::ZERO.
|
inlineprotectedvirtual |
Make a clone of this object, possibly modifying the cloned object to make it sane.
Reimplemented from ThePEG::InterfacedBase.
Definition at line 209 of file a1ThreePionDecayer.h.
|
inlineprivate |
The \(h(q^2)\) function in the \(\rho\) propagator.
q | The scale, \(q\). |
Definition at line 317 of file a1ThreePionDecayer.h.
References _mpi2, ThePEG::Constants::pi, ThePEG::sqr(), ThePEG::sqrt(), and ThePEG::ZERO.
Referenced by DParameter(), and rhoBreitWigner().
|
inlineprivate |
|
virtual |
Return the matrix element squared for a given mode and phase-space channel.
ichan | The channel we are calculating the matrix element for. |
part | The decaying Particle. |
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::DecayIntegrator.
|
virtual |
Which of the possible decays is required.
cc | Is this mode the charge conjugate |
parent | The decaying particle |
children | The decay products |
Implements Herwig::DecayIntegrator.
void Herwig::a1ThreePionDecayer::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::a1ThreePionDecayer::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
inlineprivate |
Breit-Wigner for the \(\rho\), this is \(\frac1{D_{\rho_k}(q^2)}\).
q2 | The scale, \(q^2\). |
ires | The \(\rho\) multiplet. |
Definition at line 268 of file a1ThreePionDecayer.h.
References _dhdq2m2, _hm2, _mpi, _mpi2, _prho, _rhoD, _rhomass, _rhowidth, hFunction(), Herwig::Kinematics::pstarTwoBodyDecay(), and ThePEG::sqrt().
|
inlineprivate |
Breit-wigner for the \(\sigma\), this is \(\frac1{D_\sigma(q^2)}\).
q2 | The scale, \(q^2\). |
Definition at line 243 of file a1ThreePionDecayer.h.
References _mpi, _psigma, _sigmamass, _sigmawidth, Herwig::Kinematics::pstarTwoBodyDecay(), and ThePEG::sqrt().
|
virtual |
The matrix element to be integrated for the three-body decays as a function of the invariant masses of pairs of the outgoing particles.
imode | The mode for which the matrix element is needed. |
q2 | The scale, i.e. the mass squared of the decaying particle. |
s3 | The invariant mass squared of particles 1 and 2, \(s_3=m^2_{12}\). |
s2 | The invariant mass squared of particles 1 and 3, \(s_2=m^2_{13}\). |
s1 | The invariant mass squared of particles 2 and 3, \(s_1=m^2_{23}\). |
m1 | The mass of the first outgoing particle. |
m2 | The mass of the second outgoing particle. |
m3 | The mass of the third outgoing particle. |
Reimplemented from Herwig::DecayIntegrator.
|
virtual |
Method to return an object to calculate the 3 body partial width.
dm | The DecayMode |
Reimplemented from Herwig::DecayIntegrator.
|
private |
The mass squared of the \(a_1\) meson, \(m_{a_1}^2\).
Definition at line 402 of file a1ThreePionDecayer.h.
Referenced by a1FormFactor().
|
private |
The overall coupling for the decay.
Definition at line 437 of file a1ThreePionDecayer.h.
|
private |
The \(\frac{dh}{dq^2}\) function in the rho propagator evaluated at \(q^2=m^2\) for the different \(\rho\) multiplets.
Definition at line 367 of file a1ThreePionDecayer.h.
Referenced by DParameter(), and rhoBreitWigner().
|
private |
The function \(h(q^2)\) evaluated at \(q^2=M^2_{\rho_k}\).
Definition at line 356 of file a1ThreePionDecayer.h.
Referenced by DParameter(), and rhoBreitWigner().
|
private |
The \(\Lambda^2\) parameter for the \(a_1\) form factor.
Definition at line 397 of file a1ThreePionDecayer.h.
Referenced by a1FormFactor().
|
private |
use local values of the mass parameters
Definition at line 442 of file a1ThreePionDecayer.h.
|
private |
The mass of the pion, \(m_\pi\).
Definition at line 387 of file a1ThreePionDecayer.h.
Referenced by rhoBreitWigner(), and sigmaBreitWigner().
|
private |
The mass of the pion, \(m^2_\pi\).
Definition at line 392 of file a1ThreePionDecayer.h.
Referenced by dhdq2Parameter(), hFunction(), and rhoBreitWigner().
|
mutableprivate |
Maximum weight for the one charged pion channel.
Definition at line 472 of file a1ThreePionDecayer.h.
|
mutableprivate |
Weights for the channels for the one charged pion channel.
Definition at line 452 of file a1ThreePionDecayer.h.
|
private |
Momentum of the pions produced in the \(\rho\) decay.
Definition at line 351 of file a1ThreePionDecayer.h.
Referenced by DParameter(), and rhoBreitWigner().
|
private |
The momenta of the pions produced in the \(\sigma\) meson decay.
Definition at line 382 of file a1ThreePionDecayer.h.
Referenced by sigmaBreitWigner().
|
mutableprivate |
Spin density matrix.
Definition at line 487 of file a1ThreePionDecayer.h.
|
private |
\(g_{\rho_k}\) is the coupling of the \(k\) th \(\rho\) multiplet.
Definition at line 422 of file a1ThreePionDecayer.h.
|
private |
The normalization factor for the \(\rho_k\) propagator factor.
Definition at line 361 of file a1ThreePionDecayer.h.
Referenced by rhoBreitWigner().
|
private |
Magnitude of the rho coupling.
Definition at line 427 of file a1ThreePionDecayer.h.
|
private |
Mass of the rho resonances.
Definition at line 341 of file a1ThreePionDecayer.h.
Referenced by dhdq2Parameter(), DParameter(), and rhoBreitWigner().
|
private |
Phase of the rho coupling.
Definition at line 432 of file a1ThreePionDecayer.h.
|
private |
Width of the rho resonaces.
Definition at line 346 of file a1ThreePionDecayer.h.
Referenced by DParameter(), and rhoBreitWigner().
|
private |
The mass of the \(\sigma\) meson.
Definition at line 372 of file a1ThreePionDecayer.h.
Referenced by sigmaBreitWigner().
|
private |
The width of the \(\sigma\) meson.
Definition at line 377 of file a1ThreePionDecayer.h.
Referenced by sigmaBreitWigner().
|
mutableprivate |
Maximum weight for the three charged pion channel.
Definition at line 482 of file a1ThreePionDecayer.h.
|
mutableprivate |
Weights for the channels for the three charged pion channel.
Definition at line 462 of file a1ThreePionDecayer.h.
|
mutableprivate |
Maximum weight for the two charged pion channel.
Definition at line 477 of file a1ThreePionDecayer.h.
|
mutableprivate |
Weights for the channels for the two charged pion channel.
Definition at line 457 of file a1ThreePionDecayer.h.
|
mutableprivate |
Polarization vectors.
Definition at line 492 of file a1ThreePionDecayer.h.
|
mutableprivate |
Maximum weight for the zero charged pion channel.
Definition at line 467 of file a1ThreePionDecayer.h.
|
mutableprivate |
Weights for the channels for the zero charged pion channel.
Definition at line 447 of file a1ThreePionDecayer.h.
|
private |
The magnitude of the \(z\) \(\sigma\) coupling.
Definition at line 412 of file a1ThreePionDecayer.h.
|
private |
The phase of the \(z\) \(\sigma\) coupling.
Definition at line 417 of file a1ThreePionDecayer.h.
|
private |
The \(z\) coupling for the \(\sigma\) resonance.
Definition at line 407 of file a1ThreePionDecayer.h.