|
|
|||
File indexing completed on 2026-08-06 09:24:00
0001 // -*- C++ -*- 0002 #ifndef HERWIG_KornerKurodaFormFactor_H 0003 #define HERWIG_KornerKurodaFormFactor_H 0004 // 0005 // This is the declaration of the KornerKurodaFormFactor class. 0006 // 0007 0008 #include "BaryonFormFactor.h" 0009 0010 namespace Herwig { 0011 using namespace ThePEG; 0012 0013 /** 0014 * The KornerKurodaFormFactor class implements the simple model of PRD 16, 2165, 1997 for the 0015 * form factors of the baryon octet/ 0016 * 0017 * @see \ref KornerKurodaFormFactorInterfaces "The interfaces" 0018 * defined for KornerKurodaFormFactor. 0019 */ 0020 class KornerKurodaFormFactor: public BaryonFormFactor { 0021 0022 public: 0023 0024 /** 0025 * The default constructor. 0026 */ 0027 KornerKurodaFormFactor(); 0028 0029 /** 0030 * The form factor for the weak decay of a spin \f$\frac12\f$ baryon to a 0031 * spin \f$\frac12\f$ baryon. 0032 * @param q2 The scale \f$q^2\f$. 0033 * @param iloc The location in the form factor list. 0034 * @param id0 The PDG code of the incoming baryon. 0035 * @param id1 The PDG code of the outgoing baryon. 0036 * @param m0 The mass of the incoming baryon. 0037 * @param m1 The mass of the outgoing baryon. 0038 * @param f1v The form factor \f$F^V_1\f$. 0039 * @param f2v The form factor \f$F^V_2\f$. 0040 * @param f3v The form factor \f$F^V_3\f$. 0041 * @param f1a The form factor \f$F^A_1\f$. 0042 * @param f2a The form factor \f$F^A_2\f$. 0043 * @param f3a The form factor \f$F^A_3\f$. 0044 * @param virt Whether the q2 is space or timelike 0045 */ 0046 virtual void SpinHalfSpinHalfFormFactor(Energy2 q2,int iloc, int id0, int id1, 0047 Energy m0, Energy m1, 0048 Complex & f1v,Complex & f2v,Complex & f3v, 0049 Complex & f1a,Complex & f2a,Complex & f3a, 0050 FlavourInfo flavour, 0051 Virtuality virt=SpaceLike); 0052 0053 /** 0054 * Output the setup information for the particle database 0055 * @param os The stream to output the information to 0056 * @param header Whether or not to output the information for MySQL 0057 * @param create Whether or not to add a statement creating the object 0058 */ 0059 virtual void dataBaseOutput(ofstream & os,bool header,bool create) const; 0060 0061 public: 0062 0063 /** @name Functions used by the persistent I/O system. */ 0064 //@{ 0065 /** 0066 * Function used to write out object persistently. 0067 * @param os the persistent output stream written to. 0068 */ 0069 void persistentOutput(PersistentOStream & os) const; 0070 0071 /** 0072 * Function used to read in object persistently. 0073 * @param is the persistent input stream read from. 0074 * @param version the version number of the object when written. 0075 */ 0076 void persistentInput(PersistentIStream & is, int version); 0077 //@} 0078 0079 /** 0080 * The standard Init function used to initialize the interfaces. 0081 * Called exactly once for each class by the class description system 0082 * before the main function starts or 0083 * when this class is dynamically loaded. 0084 */ 0085 static void Init(); 0086 0087 protected: 0088 0089 /** @name Clone Methods. */ 0090 //@{ 0091 /** 0092 * Make a simple clone of this object. 0093 * @return a pointer to the new object. 0094 */ 0095 virtual IBPtr clone() const; 0096 0097 /** Make a clone of this object, possibly modifying the cloned object 0098 * to make it sane. 0099 * @return a pointer to the new object. 0100 */ 0101 virtual IBPtr fullclone() const; 0102 //@} 0103 0104 protected: 0105 0106 /** 0107 * Initialize this object after the setup phase before saving an 0108 * EventGenerator to disk. 0109 * @throws InitException if object could not be initialized properly. 0110 */ 0111 virtual void doinit(); 0112 0113 private: 0114 0115 /** 0116 * The assignment operator is private and must never be called. 0117 * In fact, it should not even be implemented. 0118 */ 0119 KornerKurodaFormFactor & operator=(const KornerKurodaFormFactor &) = delete; 0120 0121 private: 0122 0123 /** 0124 * Whether or not to include the nucleon modes 0125 */ 0126 bool includeNucleon_; 0127 0128 /** 0129 * Masses for the form-factors 0130 */ 0131 //@{ 0132 /** 0133 * Mass of the \f$\rho\f$ meson 0134 */ 0135 Energy mRho_; 0136 0137 /** 0138 * Mass of the \f$\omega\f$ meson 0139 */ 0140 Energy mOmega_; 0141 0142 /** 0143 * Mass of the \f$\phi\f$ meson 0144 */ 0145 Energy mPhi_; 0146 //@} 0147 0148 /** 0149 * Regge slope 0150 */ 0151 InvEnergy2 aPrime_; 0152 0153 /** 0154 * Couplings for the form factors 0155 */ 0156 //@{ 0157 /** 0158 * Coupling \f$C_1^\rho\f$ 0159 */ 0160 vector<double> c1Rho_; 0161 0162 /** 0163 * Coupling \f$C_1^\omega\f$ 0164 */ 0165 vector<double> c1Omega_; 0166 0167 /** 0168 * Coupling \f$C_1^\phi\f$ 0169 */ 0170 vector<double> c1Phi_; 0171 0172 /** 0173 * Coupling \f$C_1^\rho+C_2^\rho\f$ 0174 */ 0175 vector<double> c12Rho_; 0176 0177 /** 0178 * Coupling \f$C_1^\omega+C_2^\omega\f$ 0179 */ 0180 vector<double> c12Omega_; 0181 0182 /** 0183 * Coupling \f$C_1^\phi+C_2^\phi\f$ 0184 */ 0185 vector<double> c12Phi_; 0186 0187 /** 0188 * Coupling \f$C_2^\rho\f$ 0189 */ 0190 vector<double> c2Rho_; 0191 0192 /** 0193 * Coupling \f$C_2^\omega\f$ 0194 */ 0195 vector<double> c2Omega_; 0196 0197 /** 0198 * Coupling \f$C_2^\phi\f$ 0199 */ 0200 vector<double> c2Phi_; 0201 0202 /** 0203 * Magnetic moments 0204 */ 0205 vector<double> mu_; 0206 //@} 0207 }; 0208 0209 } 0210 0211 #endif /* HERWIG_KornerKurodaFormFactor_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|