Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-08-06 09:24:11

0001 // -*- C++ -*-
0002 //
0003 // MG_gg2ttxg.h is a part of Herwig - A multi-purpose Monte Carlo event generator
0004 // Copyright (C) 2002-2019 The Herwig Collaboration
0005 //
0006 // Herwig is licenced under version 3 of the GPL, see COPYING for details.
0007 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
0008 //
0009 #ifndef MG5_Sigma_sm_gg2ttxg_H
0010 #define MG5_Sigma_sm_gg2ttxg_H
0011 //
0012 // This is the declaration of the MG_gg2ttxg class.
0013 //
0014 
0015 #include <complex> 
0016 #include <vector> 
0017 #include "Parameters_sm.h"
0018 
0019 using namespace std; 
0020 
0021 
0022 class MG_gg2ttxg
0023 {
0024   public:
0025 
0026     // Constructor.
0027     MG_gg2ttxg() {}
0028 
0029     // Initialize process using Herwig parameters
0030     virtual void initProc(map<string, double> & MGParams); 
0031 
0032     // Calculate flavour-independent parts of cross section.
0033     virtual void sigmaKin(vector<std::complex<double> >& amps, const vector<int>& hel); 
0034 
0035     // Set momenta for matrix element evaluation
0036     void setMomenta(vector < double * > & momenta){p = momenta;}
0037  
0038     // number of external particles
0039     static const int nexternal = 5; 
0040 
0041     // number of colour ordered amplitudes
0042     static const int namplitudes = 18; 
0043     std::complex<double> amp[namplitudes]; 
0044 
0045   private:
0046     // Calculate wavefunctions
0047     void calculate_wavefunctions(const int perm[], const int hel[]); 
0048 
0049     // number of wavefunctions used in calculate_wavefunctions 
0050     static const int nwavefuncs = 18; 
0051     std::complex<double> w[nwavefuncs][18]; 
0052 
0053     // Pointer to the model parameters
0054     Parameters_sm * pars; 
0055 
0056     // vector with external particle masses
0057     vector<double> mME; 
0058 
0059     // vector with momenta 
0060     vector < double * > p; 
0061  
0062 }; 
0063 
0064 
0065 #endif  // MG5_Sigma_sm_gg2ttxg_H