PYTHIA  8.312
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Sigma3qqbar2ggg Class Reference

A derived class for q qbar -> g g g. More...

#include <SigmaQCD.h>

Inheritance diagram for Sigma3qqbar2ggg:
Sigma3Process SigmaProcess PhysicsBase Sigma3gg2qqbarg Sigma3qg2qgg

Public Member Functions

 Sigma3qqbar2ggg ()
 Constructor.
 
virtual void sigmaKin ()
 Calculate flavour-independent parts of cross section. More...
 
virtual double sigmaHat ()
 Evaluate d(sigmaHat)/d(tHat).
 
virtual void setIdColAcol ()
 Select flavour, colour and anticolour. More...
 
virtual string name () const
 Info on the subprocess.
 
virtual int code () const
 
virtual int nFinal () const
 Number of final-state particles.
 
virtual string inFlux () const
 Need to know which incoming partons to set up interaction for.
 
virtual bool isQCD3body () const
 QCD 2 -> 3 processes need special phase space selection machinery.
 
- Public Member Functions inherited from Sigma3Process
virtual ~Sigma3Process ()
 Destructor.
 
virtual void set3Kin (double x1in, double x2in, double sHin, Vec4 p3cmIn, Vec4 p4cmIn, Vec4 p5cmIn, double m3in, double m4in, double m5in, double runBW3in, double runBW4in, double runBW5in)
 Input and complement kinematics for resolved 2 -> 3 process.
 
- Public Member Functions inherited from SigmaProcess
virtual ~SigmaProcess ()
 Destructor.
 
void init (BeamParticle *beamAPtrIn, BeamParticle *beamBPtrIn, SLHAinterface *slhaInterfacePtrIn=0)
 Perform simple initialization and store pointers. More...
 
void setLHAPtr (LHAupPtr lhaUpPtrIn)
 Store or replace Les Houches pointer.
 
void updateBeamIDs ()
 Switch to new beam particle identities; for similar hadrons only.
 
virtual void initProc ()
 Initialize process. Only used for some processes.
 
virtual bool initFlux ()
 Set up allowed flux of incoming partons. Default is no flux. More...
 
virtual void set1Kin (double, double, double)
 
virtual void set2Kin (double, double, double, double, double, double, double, double)
 
virtual void set2KinMPI (double, double, double, double, double, double, double, bool, double, double)
 
virtual double sigmaHatWrap (int id1in=0, int id2in=0)
 
virtual double sigmaPDF (bool initPS=false, bool samexGamma=false, bool useNewXvalues=false, double x1New=0., double x2New=0.)
 
void pickInState (int id1in=0, int id2in=0)
 Select incoming parton channel and extract parton densities (resolved). More...
 
virtual bool final2KinMPI (int=0, int=0, Vec4=0., Vec4=0., double=0., double=0.)
 Perform kinematics for a Multiparton Interaction, in its rest frame.
 
virtual double weightDecay (Event &, int, int)
 
virtual void setScale ()
 Set scale, when that is missing for an external LHA process.
 
virtual bool convert2mb () const
 Need to know whether to convert cross section answer from GeV^-2 to mb.
 
virtual bool convertM2 () const
 For 2 -> 2 process optional conversion from |M|^2 to d(sigmaHat)/d(tHat).
 
virtual bool isLHA () const
 Special treatment needed for Les Houches processes.
 
virtual bool isNonDiff () const
 Special treatment needed for elastic and diffractive processes.
 
virtual bool isResolved () const
 
virtual bool isDiffA () const
 
virtual bool isDiffB () const
 
virtual bool isDiffC () const
 
virtual bool isSUSY () const
 Special treatment needed for SUSY processes.
 
virtual bool allowNegativeSigma () const
 Special treatment needed if negative cross sections allowed.
 
virtual int id3Mass () const
 
virtual int id4Mass () const
 
virtual int id5Mass () const
 
virtual int resonanceA () const
 Special treatment needed if process contains an s-channel resonance.
 
virtual int resonanceB () const
 
virtual bool isSChannel () const
 2 -> 2 and 2 -> 3 processes only through s-channel exchange.
 
virtual int idSChannel () const
 NOAM: Insert an intermediate resonance in 2 -> 1 -> 2 (or 3) listings.
 
virtual int idTchan1 () const
 Special treatment in 2 -> 3 with two massive propagators.
 
virtual int idTchan2 () const
 
virtual double tChanFracPow1 () const
 
virtual double tChanFracPow2 () const
 
virtual bool useMirrorWeight () const
 
virtual int gmZmode () const
 Special process-specific gamma*/Z0 choice if >=0 (e.g. f fbar -> H0 Z0).
 
bool swappedTU () const
 Tell whether tHat and uHat are swapped (= same as swap 3 and 4).
 
int id (int i) const
 Give back particle properties: flavours, colours, masses, or all.
 
int col (int i) const
 
int acol (int i) const
 
double m (int i) const
 
Particle getParton (int i) const
 
double Q2Ren () const
 
double alphaEMRen () const
 
double alphaSRen () const
 
double Q2Fac () const
 
double pdf1 () const
 
double pdf2 () const
 
double thetaMPI () const
 Give back angles; relevant only for multipe-interactions processes.
 
double phiMPI () const
 
double sHBetaMPI () const
 
double pT2MPI () const
 
double pTMPIFin () const
 
void saveKin ()
 Save and load kinematics for trial interactions.
 
void loadKin ()
 
void swapKin ()
 
virtual void setIdInDiff (int, int)
 Set the incoming ids for diffraction.
 
- Public Member Functions inherited from PhysicsBase
void initInfoPtr (Info &infoPtrIn)
 This function is called from above for physics objects used in a run. More...
 
virtual ~PhysicsBase ()
 Empty virtual destructor.
 
bool flag (string key) const
 Shorthand to read settings values.
 
int mode (string key) const
 
double parm (string key) const
 
string word (string key) const
 
vector< bool > fvec (string key) const
 
vector< int > mvec (string key) const
 
vector< double > pvec (string key) const
 
vector< string > wvec (string key) const
 

Protected Member Functions

void pickFinal ()
 
void mapFinal ()
 Map a final state configuration.
 
double m2Calc ()
 |M|^2 calculation More...
 
- Protected Member Functions inherited from Sigma3Process
 Sigma3Process ()
 Constructor.
 
virtual void store3Kin (double x1in, double x2in, double sHin, Vec4 p3cmIn, Vec4 p4cmIn, Vec4 p5cmIn, double m3in, double m4in, double m5in, double runBW3in, double runBW4in, double runBW5in)
 Store kinematics and set scales for resolved 2 -> 3 process. More...
 
virtual bool setupForME ()
 Calculate modified masses and four-vectors for matrix elements. More...
 
- Protected Member Functions inherited from SigmaProcess
 SigmaProcess ()
 Constructor.
 
void addBeamA (int idIn)
 
void addBeamB (int idIn)
 
int sizeBeamA () const
 
int sizeBeamB () const
 
void addPair (int idAIn, int idBIn)
 
int sizePair () const
 
bool setupForMEin ()
 Calculate incoming modified masses and four-vectors for matrix elements. More...
 
void setId (int id1in=0, int id2in=0, int id3in=0, int id4in=0, int id5in=0)
 Set flavour, colour and anticolour.
 
void setColAcol (int col1=0, int acol1=0, int col2=0, int acol2=0, int col3=0, int acol3=0, int col4=0, int acol4=0, int col5=0, int acol5=0)
 
void swapColAcol ()
 
void swapCol1234 ()
 
void swapCol12 ()
 
void swapCol34 ()
 
double weightTopDecay (Event &process, int iResBeg, int iResEnd)
 Common code for top and Higgs secondary decay angular weights. More...
 
double weightHiggsDecay (Event &process, int iResBeg, int iResEnd)
 
- Protected Member Functions inherited from PhysicsBase
 PhysicsBase ()
 Default constructor.
 
virtual void onInitInfoPtr ()
 
virtual void onBeginEvent ()
 This function is called in the very beginning of each Pythia::next call.
 
virtual void onEndEvent (Status)
 
virtual void onStat ()
 This function is called from the Pythia::stat() call.
 
void registerSubObject (PhysicsBase &pb)
 Register a sub object that should have its information in sync with this.
 

Protected Attributes

int config
 Pick/map a random final state configuration.
 
Vec4 pCM [5]
 Four-vectors for |M|^2 calculation.
 
double a [3]
 Intermediate storage and calculation of four-products.
 
double b [3]
 
double pp [3][3]
 
double ab [3][3]
 
double sigma
 Values stored for colour flow selection.
 
- Protected Attributes inherited from Sigma3Process
double m3
 Store subprocess kinematics quantities.
 
double s3
 
double m4
 
double s4
 
double m5
 
double s5
 
double runBW3
 
double runBW4
 
double runBW5
 
Vec4 p3cm
 
Vec4 p4cm
 
Vec4 p5cm
 
- Protected Attributes inherited from SigmaProcess
SusyLesHouchesslhaPtr
 Pointer to an SLHA object.
 
LHAupPtr lhaUpPtr
 Pointer to LHAup for generating external events.
 
bool doVarE
 Initialization data, normally only set once.
 
int nQuarkIn
 
int renormScale1
 
int renormScale2
 
int renormScale3
 
int renormScale3VV
 
int factorScale1
 
int factorScale2
 
int factorScale3
 
int factorScale3VV
 
double Kfactor
 
double mcME
 
double mbME
 
double mmuME
 
double mtauME
 
double renormMultFac
 
double renormFixScale
 
double factorMultFac
 
double factorFixScale
 
int higgsH1parity
 CP violation parameters for Higgs sector, normally only set once.
 
int higgsH2parity
 
int higgsA3parity
 
double higgsH1eta
 
double higgsH2eta
 
double higgsA3eta
 
double higgsH1phi
 
double higgsH2phi
 
double higgsA3phi
 
int idA
 Information on incoming beams.
 
int idB
 
double mA
 
double mB
 
bool isLeptonA
 
bool isLeptonB
 
bool hasLeptonBeams
 
bool beamA2gamma
 
bool beamB2gamma
 
bool hasGamma
 
vector< InBeaminBeamA
 Partons in beams, with PDF's.
 
vector< InBeaminBeamB
 
vector< InPairinPair
 Allowed colliding parton pairs, with pdf's.
 
double mH
 Store common subprocess kinematics quantities.
 
double sH
 
double sH2
 
double Q2RenSave
 Store Q2 renormalization and factorization scales, and related values.
 
double alpEM
 
double alpS
 
double Q2FacSave
 
double x1Save
 
double x2Save
 
double pdf1Save
 
double pdf2Save
 
double sigmaSumSave
 
int id1
 Store flavour, colour, anticolour, mass, angles and the whole particle.
 
int id2
 
int id3
 
int id4
 
int id5
 
int idSave [12]
 
int colSave [12]
 
int acolSave [12]
 
double mSave [12]
 
double cosTheta
 
double sinTheta
 
double phi
 
double sHMass
 
double sHBeta
 
double pT2Mass
 
double pTFin
 
Particle parton [12]
 
Particle partonT [12]
 
double mSaveT [12]
 
double pTFinT
 
double cosThetaT
 
double sinThetaT
 
double phiT
 
double mME [12]
 
Vec4 pME [12]
 
bool swapTU
 Store whether tHat and uHat are swapped (= same as swap 3 and 4).
 
- Protected Attributes inherited from PhysicsBase
InfoinfoPtr = {}
 
SettingssettingsPtr = {}
 Pointer to the settings database.
 
ParticleDataparticleDataPtr = {}
 Pointer to the particle data table.
 
LoggerloggerPtr = {}
 Pointer to logger.
 
HadronWidthshadronWidthsPtr = {}
 Pointer to the hadron widths data table.
 
RndmrndmPtr = {}
 Pointer to the random number generator.
 
CoupSMcoupSMPtr = {}
 Pointers to SM and SUSY couplings.
 
CoupSUSYcoupSUSYPtr = {}
 
BeamSetupbeamSetupPtr = {}
 
BeamParticlebeamAPtr = {}
 
BeamParticlebeamBPtr = {}
 
BeamParticlebeamPomAPtr = {}
 
BeamParticlebeamPomBPtr = {}
 
BeamParticlebeamGamAPtr = {}
 
BeamParticlebeamGamBPtr = {}
 
BeamParticlebeamVMDAPtr = {}
 
BeamParticlebeamVMDBPtr = {}
 
PartonSystemspartonSystemsPtr = {}
 Pointer to information on subcollision parton locations.
 
SigmaTotalsigmaTotPtr = {}
 Pointers to the total/elastic/diffractive cross sections.
 
SigmaCombinedsigmaCmbPtr = {}
 
set< PhysicsBase * > subObjects
 
UserHooksPtr userHooksPtr
 

Additional Inherited Members

- Public Types inherited from PhysicsBase
enum  Status {
  INCOMPLETE = -1, COMPLETE = 0, CONSTRUCTOR_FAILED, INIT_FAILED,
  LHEF_END, LOWENERGY_FAILED, PROCESSLEVEL_FAILED, PROCESSLEVEL_USERVETO,
  MERGING_FAILED, PARTONLEVEL_FAILED, PARTONLEVEL_USERVETO, HADRONLEVEL_FAILED,
  CHECK_FAILED, OTHER_UNPHYSICAL, HEAVYION_FAILED, HADRONLEVEL_USERVETO
}
 Enumerate the different status codes the event generation can have.
 
- Public Attributes inherited from SigmaProcess
Z0 gamma *Z0Usage: weightDecayFlav( process). */ virtual double weightDecayFlav( Event&) {return 1.
 
- Static Protected Attributes inherited from SigmaProcess
static const double CONVERT2MB = 0.389380
 Constants: could only be changed in the code itself. More...
 
static const double MASSMARGIN = 0.1
 The sum of outgoing masses must not be too close to the cm energy.
 
static const double COMPRELERR = 1e-10
 
static const int NCOMPSTEP = 10
 

Detailed Description

A derived class for q qbar -> g g g.

Member Function Documentation

double m2Calc ( )
inlineprotected

|M|^2 calculation

|M|^2

Calculate four-products

qbar (p+) + q(p-) -> g(k1) g(k2) g(k3) a_i = (p+ . ki), i = 1, 2, 3 b_i = (p- . ki), i = 1, 2, 3

ab[i][j] = a_i * b_j + a_j * b_i

Cross section

Final answer

void setIdColAcol ( )
virtual

Select flavour, colour and anticolour.

Select identity, colour and anticolour.

Flavours are trivial.

Temporary solution.

Reimplemented from SigmaProcess.

Reimplemented in Sigma3gg2qqbarg, and Sigma3qg2qgg.

void sigmaKin ( )
virtual

Calculate flavour-independent parts of cross section.

Evaluate |M|^2 - no incoming flavour dependence.

Sigma3qqbar2ggg class. Cross section for q qbar -> g g g.

Setup four-vectors

Calculate |M|^2 Answer has a factor 6 due to identical gluons, which is cancelled by phase space factor (1 / 6)

Reimplemented from SigmaProcess.

Reimplemented in Sigma3gg2qqbarg, and Sigma3qg2qgg.


The documentation for this class was generated from the following files: