herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Decay
WeakCurrents
TwoPionPhotonSNDCurrent.h
1
// -*- C++ -*-
2
#ifndef Herwig_TwoPionPhotonSNDCurrent_H
3
#define Herwig_TwoPionPhotonSNDCurrent_H
4
//
5
// This is the declaration of the TwoPionPhotonSNDCurrent class.
6
//
7
8
#include "WeakCurrent.h"
9
10
namespace
Herwig
{
11
12
using namespace
ThePEG
;
13
24
class
TwoPionPhotonSNDCurrent
:
public
WeakCurrent
{
25
26
public
:
27
31
TwoPionPhotonSNDCurrent
();
32
33
public
:
34
55
virtual
bool
createMode
(
int
icharge,
tcPDPtr
resonance,
56
FlavourInfo
flavour,
57
unsigned
int
imode,PhaseSpaceModePtr mode,
58
unsigned
int
iloc,
int
ires,
59
PhaseSpaceChannel
phase, Energy upp );
60
70
virtual
tPDVector
particles
(
int
icharge,
unsigned
int
imode,
int
iq,
int
ia);
72
86
virtual
vector<LorentzPolarizationVectorE>
87
current
(
tcPDPtr
resonance,
88
FlavourInfo
flavour,
89
const
int
imode,
const
int
ichan,Energy & scale,
90
const
tPDVector
&
outgoing
,
91
const
vector<Lorentz5Momentum> & momenta,
92
DecayIntegrator::MEOption
meopt)
const
;
93
97
virtual
void
constructSpinInfo
(
ParticleVector
decay)
const
;
98
104
virtual
bool
accept
(vector<int>
id
);
105
112
virtual
unsigned
int
decayMode
(vector<int>
id
);
113
120
virtual
void
dataBaseOutput
(ofstream & os,
bool
header,
bool
create)
const
;
121
122
public
:
123
130
void
persistentOutput
(
PersistentOStream
& os)
const
;
131
137
void
persistentInput
(
PersistentIStream
& is,
int
version);
139
146
static
void
Init
();
147
148
protected
:
149
156
virtual
IBPtr
clone
()
const
;
157
162
virtual
IBPtr
fullclone
()
const
;
164
protected
:
165
171
virtual
void
doinit
();
172
173
private
:
174
179
TwoPionPhotonSNDCurrent
&
operator=
(
const
TwoPionPhotonSNDCurrent
&) =
delete
;
180
181
private :
182
186
vector<Energy>
rhoMasses_
;
187
191
vector<Energy>
rhoWidths_
;
192
196
vector<double>
amp_
;
197
201
vector<double>
phase_
;
202
206
vector<Complex>
wgts_
;
207
211
double
fRho_
;
212
216
InvEnergy
gRhoOmegaPi_
;
217
221
InvEnergy
gGammaOmegaPi_
;
222
226
Energy
omegaMass_
;
227
231
Energy
omegaWidth_
;
232
236
Energy
mpi_
;
237
};
238
239
}
240
241
#endif
/* Herwig_TwoPionPhotonSNDCurrent_H */
Herwig::DecayIntegrator::MEOption
MEOption
Enum for the matrix element option.
Definition:
DecayIntegrator.h:72
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::TwoPionPhotonSNDCurrent
The TwoPionPhotonSNDCurrent class implements the decay current for via an intermediate .
Definition:
TwoPionPhotonSNDCurrent.h:24
Herwig::TwoPionPhotonSNDCurrent::TwoPionPhotonSNDCurrent
TwoPionPhotonSNDCurrent()
The default constructor.
Herwig::TwoPionPhotonSNDCurrent::constructSpinInfo
virtual void constructSpinInfo(ParticleVector decay) const
Construct the SpinInfo for the decay products.
Herwig::TwoPionPhotonSNDCurrent::omegaWidth_
Energy omegaWidth_
The width.
Definition:
TwoPionPhotonSNDCurrent.h:231
Herwig::TwoPionPhotonSNDCurrent::gGammaOmegaPi_
InvEnergy gGammaOmegaPi_
Coupling of the photon to the omega and a pion, .
Definition:
TwoPionPhotonSNDCurrent.h:221
Herwig::TwoPionPhotonSNDCurrent::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::TwoPionPhotonSNDCurrent::dataBaseOutput
virtual void dataBaseOutput(ofstream &os, bool header, bool create) const
Output the setup information for the particle database.
Herwig::TwoPionPhotonSNDCurrent::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::TwoPionPhotonSNDCurrent::mpi_
Energy mpi_
The pion mass.
Definition:
TwoPionPhotonSNDCurrent.h:236
Herwig::TwoPionPhotonSNDCurrent::amp_
vector< double > amp_
Ampltitudes for the different rhos in the current.
Definition:
TwoPionPhotonSNDCurrent.h:196
Herwig::TwoPionPhotonSNDCurrent::rhoWidths_
vector< Energy > rhoWidths_
Widths of the resonances.
Definition:
TwoPionPhotonSNDCurrent.h:191
Herwig::TwoPionPhotonSNDCurrent::decayMode
virtual unsigned int decayMode(vector< int > id)
Return the decay mode number for a given set of particles in the current.
Herwig::TwoPionPhotonSNDCurrent::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::TwoPionPhotonSNDCurrent::fRho_
double fRho_
Coupling of the rho to the photon, .
Definition:
TwoPionPhotonSNDCurrent.h:211
Herwig::TwoPionPhotonSNDCurrent::omegaMass_
Energy omegaMass_
The mass.
Definition:
TwoPionPhotonSNDCurrent.h:226
Herwig::TwoPionPhotonSNDCurrent::accept
virtual bool accept(vector< int > id)
Accept the decay.
Herwig::TwoPionPhotonSNDCurrent::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::TwoPionPhotonSNDCurrent::particles
virtual tPDVector particles(int icharge, unsigned int imode, int iq, int ia)
The particles produced by the current.
Herwig::TwoPionPhotonSNDCurrent::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::TwoPionPhotonSNDCurrent::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::TwoPionPhotonSNDCurrent::phase_
vector< double > phase_
Phases for the different rhos in the current.
Definition:
TwoPionPhotonSNDCurrent.h:201
Herwig::TwoPionPhotonSNDCurrent::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::TwoPionPhotonSNDCurrent::operator=
TwoPionPhotonSNDCurrent & operator=(const TwoPionPhotonSNDCurrent &)=delete
The assignment operator is private and must never be called.
Herwig::TwoPionPhotonSNDCurrent::rhoMasses_
vector< Energy > rhoMasses_
Masses of the resonances.
Definition:
TwoPionPhotonSNDCurrent.h:186
Herwig::TwoPionPhotonSNDCurrent::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::TwoPionPhotonSNDCurrent::gRhoOmegaPi_
InvEnergy gRhoOmegaPi_
Coupling of the rho to the omega and a pion, .
Definition:
TwoPionPhotonSNDCurrent.h:216
Herwig::TwoPionPhotonSNDCurrent::wgts_
vector< Complex > wgts_
Weights of the different rho resonances in the current.
Definition:
TwoPionPhotonSNDCurrent.h:206
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