|
|
|||
File indexing completed on 2026-08-06 09:24:19
0001 // -*- C++ -*- 0002 #ifndef HERWIG_NMSSMWWHHVertex_H 0003 #define HERWIG_NMSSMWWHHVertex_H 0004 // 0005 // This is the declaration of the NMSSMWWHHVertex class. 0006 // 0007 0008 #include "ThePEG/Helicity/Vertex/Scalar/VVSSVertex.h" 0009 #include "Herwig/Models/Susy/MixingMatrix.h" 0010 0011 namespace Herwig { 0012 0013 using namespace ThePEG; 0014 0015 /** 0016 * Here is the documentation of the NMSSMWWHHVertex class. 0017 * 0018 * @see \ref NMSSMWWHHVertexInterfaces "The interfaces" 0019 * defined for NMSSMWWHHVertex. 0020 */ 0021 class NMSSMWWHHVertex: public Helicity::VVSSVertex { 0022 0023 public: 0024 0025 /** 0026 * The default constructor. 0027 */ 0028 NMSSMWWHHVertex(); 0029 0030 /** 0031 * Calculate the couplings. 0032 * @param q2 The scale \f$q^2\f$ for the coupling at the vertex. 0033 * @param part1 The ParticleData pointer for the first particle. 0034 * @param part2 The ParticleData pointer for the second particle. 0035 * @param part3 The ParticleData pointer for the third particle. 0036 * @param part4 The ParticleData pointer for the fourth particle. 0037 */ 0038 virtual void setCoupling(Energy2 q2,tcPDPtr part1,tcPDPtr part2, 0039 tcPDPtr part3, tcPDPtr part4); 0040 0041 public: 0042 0043 /** @name Functions used by the persistent I/O system. */ 0044 //@{ 0045 /** 0046 * Function used to write out object persistently. 0047 * @param os the persistent output stream written to. 0048 */ 0049 void persistentOutput(PersistentOStream & os) const; 0050 0051 /** 0052 * Function used to read in object persistently. 0053 * @param is the persistent input stream read from. 0054 * @param version the version number of the object when written. 0055 */ 0056 void persistentInput(PersistentIStream & is, int version); 0057 //@} 0058 0059 /** 0060 * The standard Init function used to initialize the interfaces. 0061 * Called exactly once for each class by the class description system 0062 * before the main function starts or 0063 * when this class is dynamically loaded. 0064 */ 0065 static void Init(); 0066 0067 protected: 0068 0069 /** @name Clone Methods. */ 0070 //@{ 0071 /** 0072 * Make a simple clone of this object. 0073 * @return a pointer to the new object. 0074 */ 0075 virtual IBPtr clone() const; 0076 0077 /** Make a clone of this object, possibly modifying the cloned object 0078 * to make it sane. 0079 * @return a pointer to the new object. 0080 */ 0081 virtual IBPtr fullclone() const; 0082 //@} 0083 0084 protected: 0085 0086 /** @name Standard Interfaced functions. */ 0087 //@{ 0088 /** 0089 * Initialize this object after the setup phase before saving and 0090 * EventGenerator to disk. 0091 * @throws InitException if object could not be initialized properly. 0092 */ 0093 virtual void doinit(); 0094 //@} 0095 0096 private: 0097 0098 /** 0099 * The assignment operator is private and must never be called. 0100 * In fact, it should not even be implemented. 0101 */ 0102 NMSSMWWHHVertex & operator=(const NMSSMWWHHVertex &) = delete; 0103 0104 private: 0105 0106 /** 0107 * Storage of the couplings. 0108 */ 0109 //@{ 0110 /** 0111 * The last value of the electroweak coupling calculated. 0112 */ 0113 Complex couplast_; 0114 0115 /** 0116 * The scale \f$q^2\f$ at which the coupling was last evaluated. 0117 */ 0118 Energy2 q2last_; 0119 //@} 0120 0121 /** 0122 * \f$\sin\theta_W\f$ 0123 */ 0124 double sw_; 0125 0126 /** 0127 * \f$\cos\theta_W\f$ 0128 */ 0129 double cw_; 0130 0131 /** 0132 * \f$\sin\beta\f$ 0133 */ 0134 double sb_; 0135 0136 /** 0137 * \f$\cos\beta\f$ 0138 */ 0139 double cb_; 0140 0141 /** 0142 * The CP-even Higgs mixing matrix 0143 */ 0144 MixingMatrixPtr mixS_; 0145 0146 /** 0147 * The CP-odd Higgs mixing matrix 0148 */ 0149 MixingMatrixPtr mixP_; 0150 }; 0151 0152 } 0153 0154 #endif /* HERWIG_NMSSMWWHHVertex_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|