|
|
|||
File indexing completed on 2026-08-06 09:23:59
0001 // -*- C++ -*- 0002 #ifndef Herwig_AnalyticOmnesFunction_H 0003 #define Herwig_AnalyticOmnesFunction_H 0004 // 0005 // This is the declaration of the AnalyticOmnesFunction class. 0006 // 0007 0008 #include "OmnesFunction.h" 0009 0010 namespace Herwig { 0011 0012 using namespace ThePEG; 0013 0014 /** 0015 * Here is the documentation of the AnalyticOmnesFunction class. 0016 * 0017 * @see \ref AnalyticOmnesFunctionInterfaces "The interfaces" 0018 * defined for AnalyticOmnesFunction. 0019 */ 0020 class AnalyticOmnesFunction: public OmnesFunction { 0021 0022 public: 0023 0024 /** 0025 * The default constructor. 0026 */ 0027 AnalyticOmnesFunction() : fPi_(130.7*MeV), mRho_(0.7711*GeV), 0028 rhoWidth_(0.1492*GeV), rhoConst_(0.), mPi_(ZERO), 0029 localParameters_(true) 0030 {} 0031 0032 /** 0033 * Method to return the function value 0034 */ 0035 virtual Complex D(Energy2 s) const; 0036 0037 /** 0038 * Output the setup information for the particle database 0039 * @param os The stream to output the information to 0040 * @param header Whether or not to output the information for MySQL 0041 * @param create Whether or not to add a statement creating the object 0042 */ 0043 virtual void dataBaseOutput(ofstream & os,bool header,bool create) const; 0044 0045 public: 0046 0047 /** @name Functions used by the persistent I/O system. */ 0048 //@{ 0049 /** 0050 * Function used to write out object persistently. 0051 * @param os the persistent output stream written to. 0052 */ 0053 void persistentOutput(PersistentOStream & os) const; 0054 0055 /** 0056 * Function used to read in object persistently. 0057 * @param is the persistent input stream read from. 0058 * @param version the version number of the object when written. 0059 */ 0060 void persistentInput(PersistentIStream & is, int version); 0061 //@} 0062 0063 /** 0064 * The standard Init function used to initialize the interfaces. 0065 * Called exactly once for each class by the class description system 0066 * before the main function starts or 0067 * when this class is dynamically loaded. 0068 */ 0069 static void Init(); 0070 0071 protected: 0072 0073 /** @name Clone Methods. */ 0074 //@{ 0075 /** 0076 * Make a simple clone of this object. 0077 * @return a pointer to the new object. 0078 */ 0079 virtual IBPtr clone() const; 0080 0081 /** Make a clone of this object, possibly modifying the cloned object 0082 * to make it sane. 0083 * @return a pointer to the new object. 0084 */ 0085 virtual IBPtr fullclone() const; 0086 //@} 0087 protected: 0088 0089 /** @name Standard Interfaced functions. */ 0090 //@{ 0091 /** 0092 * Initialize this object after the setup phase before saving an 0093 * EventGenerator to disk. 0094 * @throws InitException if object could not be initialized properly. 0095 */ 0096 virtual void doinit(); 0097 //@} 0098 0099 0100 private: 0101 0102 /** 0103 * The assignment operator is private and must never be called. 0104 * In fact, it should not even be implemented. 0105 */ 0106 AnalyticOmnesFunction & operator=(const AnalyticOmnesFunction &) = delete; 0107 0108 private: 0109 0110 /** 0111 * the pion decay constant, \f$F_\pi\f$. 0112 */ 0113 Energy fPi_; 0114 0115 /** 0116 * The \f$\rho\f$ mass 0117 */ 0118 Energy mRho_; 0119 0120 /** 0121 * The \f$\rho\f$ width 0122 */ 0123 Energy rhoWidth_; 0124 0125 /** 0126 * Constant for the running \f$rho\f$ width. 0127 */ 0128 double rhoConst_; 0129 0130 /** 0131 * The \f$m_\pi\f$. 0132 */ 0133 Energy mPi_; 0134 0135 /** 0136 * Use local values of the parameters. 0137 */ 0138 bool localParameters_; 0139 0140 }; 0141 0142 } 0143 0144 #endif /* Herwig_AnalyticOmnesFunction_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|