herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
StrongHeavyBaryonDecayer.h
1// -*- C++ -*-
2#ifndef HERWIG_StrongHeavyBaryonDecayer_H
3#define HERWIG_StrongHeavyBaryonDecayer_H
4// This is the declaration of the StrongHeavyBaryonDecayer class.
5
6#include "Baryon1MesonDecayerBase.h"
7
8namespace Herwig {
9using namespace ThePEG;
10
20
21public:
22
27
34 virtual int modeNumber(bool & cc, tcPDPtr parent,
35 const tPDVector & children) const;
36
42 virtual void dataBaseOutput(ofstream & os,bool header) const;
43
44public:
45
53
59 void persistentInput(PersistentIStream & is, int version);
61
65 static void Init();
66
67protected:
68
82 virtual void halfHalfScalarCoupling(int imode,Energy m0,Energy m1,Energy m2,
83 Complex& A,Complex& B) const;
84
96 virtual void halfThreeHalfScalarCoupling(int imode, Energy m0, Energy m1, Energy m2,
97 Complex& A,Complex& B) const;
98
108 virtual void threeHalfHalfScalarCoupling(int imode,Energy m0,Energy m1,Energy m2,
109 Complex& A,Complex& B) const;
110
124 virtual void threeHalfThreeHalfScalarCoupling(int imode,Energy m0,Energy m1,Energy m2,
125 Complex& A1,Complex& A2,
126 Complex& B1,Complex& B2) const;
128
129protected:
130
137 virtual IBPtr clone() const {return new_ptr(*this);}
138
143 virtual IBPtr fullclone() const {return new_ptr(*this);}
145
146protected:
147
150
156 virtual void doinit();
157
161 virtual void doinitrun();
163
164private:
165
170
171public:
172
176 string setUpDecayMode(string arg);
177
178private:
179
184
189
194
199
204
209
214
219
224
229
234
239
240
244 vector<int> incoming_;
245
249 vector<pair<int,int> > outgoing_;
250
254 vector<double> maxWeight_;
255
259 vector<double> _prefactor;
260
264 vector<int> modeType_;
265};
266
267}
268
269
270#endif /* HERWIG_StrongHeavyBaryonDecayer_H */
The Baryon1MesonDecayerBase class is the base class for the decay of a baryon to another baryon and a...
int imode() const
The mode being used for this decay.
The StrongHeavyBaryonDecayer class implements the strong decays of charm baryons using the results of...
virtual void halfThreeHalfScalarCoupling(int imode, Energy m0, Energy m1, Energy m2, Complex &A, Complex &B) const
Couplings for spin- to spin- and a scalar.
string setUpDecayMode(string arg)
Set the parameters for a decay mode.
InvEnergy _gxistar_cxi_cpi
strong coupling for .
InvEnergy _gsigma_blambda_bpi
Strong coupling for the .
virtual void halfHalfScalarCoupling(int imode, Energy m0, Energy m1, Energy m2, Complex &A, Complex &B) const
Coupling Members.
InvEnergy2 _flambda_c1starsigma_cpi
Strong coupling for .
InvEnergy2 _fxi_c1starxi_cpi
Strong couplng for .
InvEnergy2 _fxi_b1starxi_bpi
Strong couplng for .
StrongHeavyBaryonDecayer()
Default constructor.
vector< pair< int, int > > outgoing_
PDG code for the outgoing particles.
double _fxi_c1xi_cpi
Strong coupling for .
vector< int > incoming_
PDG code for the incoming baryons.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
virtual IBPtr clone() const
Make a simple clone of this object.
virtual void threeHalfThreeHalfScalarCoupling(int imode, Energy m0, Energy m1, Energy m2, Complex &A1, Complex &A2, Complex &B1, Complex &B2) const
Couplings for spin- to spin- and a scalar.
vector< int > modeType_
The type of matrix element.
virtual int modeNumber(bool &cc, tcPDPtr parent, const tPDVector &children) const
Which of the possible decays is required.
double _flambda_c1sigma_cpi
Strong coupling for .
virtual void doinitrun()
Initialize this object to the begining of the run phase.
double _flambda_b1sigma_bpi
Strong coupling for .
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
static void Init()
Standard Init function used to initialize the interfaces.
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
vector< double > _prefactor
The couplings for the different modes.
InvEnergy2 _flambda_b1starsigma_bpi
Strong coupling for .
double _fxi_b1xi_bpi
Strong coupling for .
StrongHeavyBaryonDecayer & operator=(const StrongHeavyBaryonDecayer &)=delete
Private and non-existent assignment operator.
InvEnergy _gxistar_bxi_bpi
Strong coupling for .
virtual void dataBaseOutput(ofstream &os, bool header) const
Output the setup information for the particle database.
InvEnergy _gsigma_clambda_cpi
Strong coupling for the .
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
virtual void threeHalfHalfScalarCoupling(int imode, Energy m0, Energy m1, Energy m2, Complex &A, Complex &B) const
Couplings for spin- to spin- and a scalar.
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
vector< tPDPtr > tPDVector
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr