herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
NonLeptonicOmegaDecayer.h
1 // -*- C++ -*-
2 #ifndef HERWIG_NonLeptonicOmegaDecayer_H
3 #define HERWIG_NonLeptonicOmegaDecayer_H
4 // This is the declaration of the NonLeptonicOmegaDecayer class.
5 
6 #include "Baryon1MesonDecayerBase.h"
7 
8 namespace Herwig {
9 using namespace ThePEG;
10 
24 
25 public:
26 
31 
38  virtual int modeNumber(bool & cc, tcPDPtr parent,
39  const tPDVector & children) const;
40 
46  virtual void dataBaseOutput(ofstream & os,bool header) const;
47 
48 public:
49 
56  void persistentOutput(PersistentOStream & os) const;
57 
63  void persistentInput(PersistentIStream & is, int version);
65 
69  static void Init();
70 
71 protected:
72 
86  virtual void threeHalfHalfScalarCoupling(int imode,Energy m0,Energy m1,Energy m2,
87  Complex& A,Complex& B) const;
89 
90 protected:
91 
98  virtual IBPtr clone() const {return new_ptr(*this);}
99 
104  virtual IBPtr fullclone() const {return new_ptr(*this);}
106 
107 protected:
108 
116  virtual void doinit();
117 
121  virtual void doinitrun();
123 
124 private:
125 
129  NonLeptonicOmegaDecayer & operator=(const NonLeptonicOmegaDecayer &) = delete;
130 
131 private:
132 
137  double _dstar;
138 
143  double _fstar;
144 
149  double _omegad;
150 
155  double _omegaf;
156 
160  double _cbstar;
161 
165  double _sc;
166 
170  double _c;
171 
175  Energy _fpi;
176 
180  double _hpi;
181 
185  Energy _hc;
186 
190  Energy _d;
191 
195  Energy _f;
196 
200  Energy _mlambda;
201 
205  Energy _mxi;
206 
210  Energy _momega;
211 
215  Energy _mxistar;
216 
220  Energy _mpip;
221 
225  Energy _mpi0;
226 
230  Energy _mkp;
231 
235  Energy _mk0;
236 
240  Energy _mbstar;
241 
245  Energy _mr;
246 
251 
256 
260  vector<long> _outgoingB;
261 
265  vector<long> _outgoingM;
266 
270  vector<InvEnergy> _a;
271 
275  vector<InvEnergy> _b;
276 
280  vector<double> _maxweight;
281 };
282 
283 }
284 
285 
286 #endif /* HERWIG_NonLeptonicOmegaDecayer_H */
std::complex< double > Complex
bool _localmasses
use local values for the masses for the couplings
Energy _f
The coupling for the ground-state baryon multiplet.
vector< double > _maxweight
The maximum weights for the decays.
long _incomingB
The PDG code for the incoming baryon.
double _c
The coupling of the decuplet to the ground state baryons.
vector< long > _outgoingM
The PDG code for the outgoing meson.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
double _omegad
The coupling for the multiplet, this is from the paper.
virtual IBPtr clone() const
Make a simple clone of this object.
double _dstar
The coupling for the multiplet, this is from the paper.
vector< InvEnergy > _a
The coefficient for the decays.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
The NonLeptonicOmegaDecayer class is designed for the non-leptonic weak decay of the Omega to a baryo...
The Baryon1MesonDecayerBase class is the base class for the decay of a baryon to another baryon and a...
Energy _fpi
The pion decay constant .
vector< tPDPtr > tPDVector
double _fstar
The coupling for the multiplet, this is from the paper.
Energy _mbstar
The mass of the resonance, this is the multiplet.
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
double _sc
The coupling of the multiplet to the decuplet.
Energy _d
The coupling for the ground-state baryon multiplet.
double _omegaf
The coupling for the multiplet, this is from the paper.
double _cbstar
The coupling of the multiplet to the decuplet.
double _hpi
The pion self-coupling.
Energy _mr
The mass of the resonance, this is the multiplet.
vector< long > _outgoingB
The PDG code for the outgoing baryon.
vector< InvEnergy > _b
The coefficient for the decays.
-*- C++ -*-