|
|
|||
File indexing completed on 2026-08-06 09:23:59
0001 // -*- C++ -*- 0002 #ifndef HERWIG_SU3BaryonDecupletOctetScalarDecayer_H 0003 #define HERWIG_SU3BaryonDecupletOctetScalarDecayer_H 0004 // 0005 // This is the declaration of the SU3BaryonDecupletOctetScalarDecayer class. 0006 // 0007 #include "Baryon1MesonDecayerBase.h" 0008 0009 namespace Herwig { 0010 using namespace ThePEG; 0011 0012 /** \ingroup Decay 0013 * 0014 * The <code>SU3BaryonDecupletOctetScalarDecayer</code> class is designed for the 0015 * decay of a \f$SU(3)\f$ deculpet baryon to an octet baryon and a pseudoscalar meson 0016 * from the lightest multiplet. 0017 * 0018 * The coupling is taken to have the form 0019 * \f[\frac{C}{f_\pi}\left[ 0020 * \bar{\Delta}^{\mu,abc}p_{\phi,\mu}\phi^i_aB^j_b\epsilon_{cij} 0021 * -\bar{B}^b_ip_{\phi,\mu}\phi^a_j\Delta^\mu_{abc}\epsilon^{cij} 0022 * \right],\f] 0023 * where \f$\Delta^\mu_{abc}\f$ is the decuplet field, \f$B^j_b\f$ 0024 * is the octet field and 0025 * \f$\phi^i_a\f$ is the pseudoscalar field, \f$f_\pi\f$ is the pion decay constant 0026 * and \f$C\f$ is the coupling for the decay. 0027 * 0028 * This is one of a number of decayers based on \f$SU(3)\f$ symmetry which are 0029 * intended for the decay of excited baryons. 0030 * 0031 * @see Baryon1MesonDecayerBase 0032 * @see SU3BaryonOctetOctetPhotonDecayer 0033 * @see SU3BaryonDecupletOctetPhotonDecayer 0034 * @see SU3BaryonDecupletOctetScalarDecayer 0035 * @see SU3BaryonSingletOctetPhotonDecayer 0036 * @see SU3BaryonSingletOctetScalarDecayer 0037 * @see SU3BaryonOctetDecupletScalarDecayer 0038 * @see SU3BaryonOctetOctetScalarDecayer 0039 * 0040 */ 0041 class SU3BaryonDecupletOctetScalarDecayer: public Baryon1MesonDecayerBase { 0042 0043 public: 0044 0045 /** 0046 * Default constructor. 0047 */ 0048 SU3BaryonDecupletOctetScalarDecayer(); 0049 0050 /** 0051 * Which of the possible decays is required 0052 * @param cc Is this mode the charge conjugate 0053 * @param parent The decaying particle 0054 * @param children The decay products 0055 */ 0056 virtual int modeNumber(bool & cc, tcPDPtr parent, 0057 const tPDVector & children) const; 0058 0059 /** 0060 * Output the setup information for the particle database 0061 * @param os The stream to output the information to 0062 * @param header Whether or not to output the information for MySQL 0063 */ 0064 virtual void dataBaseOutput(ofstream & os,bool header) const; 0065 0066 public: 0067 0068 /** @name Functions used by the persistent I/O system. */ 0069 //@{ 0070 /** 0071 * Function used to write out object persistently. 0072 * @param os the persistent output stream written to. 0073 */ 0074 void persistentOutput(PersistentOStream & os) const; 0075 0076 /** 0077 * Function used to read in object persistently. 0078 * @param is the persistent input stream read from. 0079 * @param version the version number of the object when written. 0080 */ 0081 void persistentInput(PersistentIStream & is, int version); 0082 //@} 0083 0084 /** 0085 * Standard Init function used to initialize the interfaces. 0086 */ 0087 static void Init(); 0088 0089 protected: 0090 0091 /** 0092 * Coupling Members. 0093 */ 0094 //@{ 0095 /** 0096 * Couplings for spin-\f$\frac12\f$ to spin-\f$\frac32\f$ and a scalar. 0097 * @param imode The mode 0098 * @param m0 The mass of the decaying particle. 0099 * @param m1 The mass of the outgoing baryon. 0100 * @param m2 The mass of the outgoing meson. 0101 * @param A The coupling \f$A\f$ described above. 0102 * @param B The coupling \f$B\f$ described above. 0103 */ 0104 virtual void threeHalfHalfScalarCoupling(int imode,Energy m0,Energy m1,Energy m2, 0105 Complex& A,Complex& B) const; 0106 //@} 0107 0108 protected: 0109 0110 /** @name Clone Methods. */ 0111 //@{ 0112 /** 0113 * Make a simple clone of this object. 0114 * @return a pointer to the new object. 0115 */ 0116 virtual IBPtr clone() const {return new_ptr(*this);} 0117 0118 /** Make a clone of this object, possibly modifying the cloned object 0119 * to make it sane. 0120 * @return a pointer to the new object. 0121 */ 0122 virtual IBPtr fullclone() const {return new_ptr(*this);} 0123 //@} 0124 0125 protected: 0126 0127 /** @name Standard Interfaced functions. */ 0128 //@{ 0129 /** 0130 * Initialize this object after the setup phase before saving and 0131 * EventGenerator to disk. 0132 * @throws InitException if object could not be initialized properly. 0133 */ 0134 virtual void doinit(); 0135 0136 /** 0137 * Initialize this object to the begining of the run phase. 0138 */ 0139 virtual void doinitrun(); 0140 //@} 0141 0142 private: 0143 0144 /** 0145 * Private and non-existent assignment operator. 0146 */ 0147 SU3BaryonDecupletOctetScalarDecayer & 0148 operator=(const SU3BaryonDecupletOctetScalarDecayer &) = delete; 0149 0150 private: 0151 0152 /** 0153 * Set-up the modes 0154 */ 0155 void setupModes(unsigned int) const; 0156 0157 private: 0158 0159 /** 0160 * the coupling 0161 */ 0162 double _c; 0163 0164 /** 0165 * the relative parities of the two baryon multiplets 0166 */ 0167 bool _parity; 0168 0169 /** 0170 * the pion decay constant 0171 */ 0172 Energy _fpi; 0173 0174 /** 0175 * PDG codes for the various octet baryons 0176 */ 0177 //@{ 0178 /** 0179 * The PDG code for the \f$p\f$-like member of the outgoing octet. 0180 */ 0181 long _proton; 0182 0183 /** 0184 * The PDG code for the \f$n\f$-like member of the outgoing octet. 0185 */ 0186 long _neutron; 0187 0188 /** 0189 * The PDG code for the \f$\Sigma^0\f$-like member of the outgoing octet. 0190 */ 0191 long _sigma0; 0192 0193 /** 0194 * The PDG code for the \f$\Sigma^+\f$-like member of the outgoing octet. 0195 */ 0196 long _sigmap; 0197 0198 /** 0199 * The PDG code for the \f$\Sigma^-\f$-like member of the outgoing octet. 0200 */ 0201 long _sigmam; 0202 0203 /** 0204 * The PDG code for the \f$\Sigma^0\f$-like member of the outgoing octet. 0205 */ 0206 long _lambda; 0207 0208 /** 0209 * The PDG code for the \f$\Xi^0\f$-like member of the outgoing octet. 0210 */ 0211 long _xi0; 0212 0213 /** 0214 * The PDG code for the \f$\Xi^-\f$-like member of the outgoing octet. 0215 */ 0216 long _xim; 0217 //@} 0218 0219 /** 0220 * PDG codes for the various decuplet baryons 0221 */ 0222 //@{ 0223 /** 0224 * The PDG code for the \f$\Delta^{++}\f$-like member of the incoming decuplet. 0225 */ 0226 long _deltapp; 0227 0228 /** 0229 * The PDG code for the \f$\Delta^{+}\f$-like member of the incoming decuplet. 0230 */ 0231 long _deltap; 0232 0233 /** 0234 * The PDG code for the \f$\Delta^{0}\f$-like member of the incoming decuplet. 0235 */ 0236 long _delta0; 0237 0238 /** 0239 * The PDG code for the \f$\Delta^{-}\f$-like member of the incoming decuplet. 0240 */ 0241 long _deltam; 0242 0243 /** 0244 * The PDG code for the \f$\Sigma^{*+}\f$-like member of the incoming decuplet. 0245 */ 0246 long _sigmasp; 0247 0248 /** 0249 * The PDG code for the \f$\Sigma^{*0}\f$-like member of the incoming decuplet. 0250 */ 0251 long _sigmas0; 0252 0253 /** 0254 * The PDG code for the \f$\Sigma^{*-}\f$-like member of the incoming decuplet. 0255 */ 0256 long _sigmasm; 0257 0258 /** 0259 * The PDG code for the \f$\Omega^-\f$-like member of the incoming decuplet. 0260 */ 0261 long _omega; 0262 0263 /** 0264 * The PDG code for the \f$\Xi^{*-}\f$-like member of the incoming decuplet. 0265 */ 0266 long _xism; 0267 0268 /** 0269 * The PDG code for the \f$\Xi^{*0}\f$-like member of the incoming decuplet. 0270 */ 0271 long _xis0; 0272 //@} 0273 0274 /** 0275 * PDG code for the incoming baryons 0276 */ 0277 mutable vector<long> _incomingB; 0278 0279 /** 0280 * PDG code for the outgoing baryons 0281 */ 0282 mutable vector<long> _outgoingB; 0283 0284 /** 0285 * PDG code for the outgoing mesons 0286 */ 0287 mutable vector<long> _outgoingM; 0288 0289 /** 0290 * the maximum weight for the various modes 0291 */ 0292 vector<double> _maxweight; 0293 0294 /** 0295 * The couplings for the different modes 0296 */ 0297 mutable vector<InvEnergy> _prefactor; 0298 0299 }; 0300 0301 } 0302 0303 0304 #endif /* HERWIG_SU3BaryonDecupletOctetScalarDecayer_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|