herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Decay
WeakCurrents
EtaPhotonCurrent.h
1
// -*- C++ -*-
2
#ifndef Herwig_EtaPhotonCurrent_H
3
#define Herwig_EtaPhotonCurrent_H
4
//
5
// This is the declaration of the EtaPhotonCurrent class.
6
//
7
8
#include "WeakCurrent.h"
9
10
namespace
Herwig
{
11
12
using namespace
ThePEG
;
13
26
class
EtaPhotonCurrent
:
public
WeakCurrent
{
27
28
public
:
29
33
EtaPhotonCurrent
();
34
35
public
:
36
57
virtual
bool
createMode
(
int
icharge,
tcPDPtr
resonance,
58
FlavourInfo
flavour,
59
unsigned
int
imode,PhaseSpaceModePtr mode,
60
unsigned
int
iloc,
int
ires,
61
PhaseSpaceChannel
phase, Energy upp );
62
72
virtual
tPDVector
particles
(
int
icharge,
unsigned
int
imode,
int
iq,
int
ia);
74
88
virtual
vector<LorentzPolarizationVectorE>
89
current
(
tcPDPtr
resonance,
90
FlavourInfo
flavour,
91
const
int
imode,
const
int
ichan,Energy & scale,
92
const
tPDVector
&
outgoing
,
93
const
vector<Lorentz5Momentum> & momenta,
94
DecayIntegrator::MEOption
meopt)
const
;
95
99
virtual
void
constructSpinInfo
(
ParticleVector
decay)
const
;
100
106
virtual
bool
accept
(vector<int>
id
);
107
114
virtual
unsigned
int
decayMode
(vector<int>
id
);
115
122
virtual
void
dataBaseOutput
(ofstream & os,
bool
header,
bool
create)
const
;
123
124
public
:
125
132
void
persistentOutput
(
PersistentOStream
& os)
const
;
133
139
void
persistentInput
(
PersistentIStream
& is,
int
version);
141
148
static
void
Init
();
149
150
protected
:
151
158
virtual
IBPtr
clone
()
const
;
159
164
virtual
IBPtr
fullclone
()
const
;
166
167
protected
:
168
176
virtual
void
doinit
();
178
179
private
:
180
185
EtaPhotonCurrent
&
operator=
(
const
EtaPhotonCurrent
&) =
delete
;
186
187
private
:
188
192
vector<Energy>
resMasses_
;
193
197
vector<Energy>
resWidths_
;
198
202
vector<InvEnergy>
amp_
;
203
207
vector<double>
phase_
;
208
212
vector<complex<InvEnergy> >
couplings_
;
213
217
Energy
mpi_
;
218
};
219
220
}
221
222
#endif
/* Herwig_EtaPhotonCurrent_H */
Herwig::DecayIntegrator::MEOption
MEOption
Enum for the matrix element option.
Definition:
DecayIntegrator.h:72
Herwig::EtaPhotonCurrent
The EtaPhotonCurrent class implements the decay current for via intermediate .
Definition:
EtaPhotonCurrent.h:26
Herwig::EtaPhotonCurrent::resWidths_
vector< Energy > resWidths_
Widths for the resonances.
Definition:
EtaPhotonCurrent.h:197
Herwig::EtaPhotonCurrent::createMode
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.
Herwig::EtaPhotonCurrent::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::EtaPhotonCurrent::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.
Herwig::EtaPhotonCurrent::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::EtaPhotonCurrent::decayMode
virtual unsigned int decayMode(vector< int > id)
Return the decay mode number for a given set of particles in the current.
Herwig::EtaPhotonCurrent::resMasses_
vector< Energy > resMasses_
Mass for the resonances.
Definition:
EtaPhotonCurrent.h:192
Herwig::EtaPhotonCurrent::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::EtaPhotonCurrent::EtaPhotonCurrent
EtaPhotonCurrent()
The default constructor.
Herwig::EtaPhotonCurrent::constructSpinInfo
virtual void constructSpinInfo(ParticleVector decay) const
Construct the SpinInfo for the decay products.
Herwig::EtaPhotonCurrent::mpi_
Energy mpi_
The pion mass.
Definition:
EtaPhotonCurrent.h:217
Herwig::EtaPhotonCurrent::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::EtaPhotonCurrent::accept
virtual bool accept(vector< int > id)
Accept the decay.
Herwig::EtaPhotonCurrent::couplings_
vector< complex< InvEnergy > > couplings_
Couplings for the resonances.
Definition:
EtaPhotonCurrent.h:212
Herwig::EtaPhotonCurrent::amp_
vector< InvEnergy > amp_
Amplitudes for couplings for the resonances.
Definition:
EtaPhotonCurrent.h:202
Herwig::EtaPhotonCurrent::dataBaseOutput
virtual void dataBaseOutput(ofstream &os, bool header, bool create) const
Output the setup information for the particle database.
Herwig::EtaPhotonCurrent::operator=
EtaPhotonCurrent & operator=(const EtaPhotonCurrent &)=delete
The assignment operator is private and must never be called.
Herwig::EtaPhotonCurrent::phase_
vector< double > phase_
Amplitudes for couplings for the resonances.
Definition:
EtaPhotonCurrent.h:207
Herwig::EtaPhotonCurrent::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::EtaPhotonCurrent::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::EtaPhotonCurrent::particles
virtual tPDVector particles(int icharge, unsigned int imode, int iq, int ia)
The particles produced by the current.
Herwig::PhaseSpaceChannel
This class is designed to store the information needed for a given phase-space channel for use by the...
Definition:
PhaseSpaceChannel.h:52
Herwig::WeakCurrent
The WeakCurrent class is the base class for the hadronic currents produced in weak decays.
Definition:
WeakCurrent.h:59
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::Helicity::outgoing
outgoing
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::tPDVector
vector< tPDPtr > tPDVector
ThePEG::ParticleVector
vector< PPtr > ParticleVector
ThePEG::tcPDPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
Herwig::FlavourInfo
Definition:
IsoSpin.h:46
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6