PYTHIA
8.312
|
An intermediate class for f fbar -> gamma*/Z0 g/gamma and permutations. More...
#include <SigmaEW.h>
Public Member Functions | |
Sigma2ffbargmZggm () | |
Constructor. | |
virtual void | initProc () |
Initialize process. More... | |
virtual double | weightDecay (Event &process, int iResBeg, int iResEnd) |
Evaluate weight for gamma&/Z0 decay angle. More... | |
Public Member Functions inherited from Sigma2Process | |
virtual | ~Sigma2Process () |
Destructor. | |
virtual int | nFinal () const |
Number of final-state particles. | |
virtual void | set2Kin (double x1in, double x2in, double sHin, double tHin, double m3in, double m4in, double runBW3in, double runBW4in) |
Input and complement kinematics for resolved 2 -> 2 process. | |
virtual void | set2KinMPI (double x1in, double x2in, double sHin, double tHin, double uHin, double alpSin, double alpEMin, bool needMasses, double m3in, double m4in) |
Ditto, but for Multiparton Interactions applications, so different input. | |
virtual double | sigmaHat () |
Evaluate d(sigmaHat)/d(tHat) for resolved 2 -> 2 processes. | |
virtual double | sigmaHatWrap (int id1in=0, int id2in=0) |
virtual bool | final2KinMPI (int i1Res=0, int i2Res=0, Vec4 p1Res=0., Vec4 p2Res=0., double m1Res=0., double m2Res=0.) |
Perform kinematics for a Multiparton Interaction, in its rest frame. More... | |
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 bool | initFlux () |
Set up allowed flux of incoming partons. Default is no flux. More... | |
virtual void | set1Kin (double, double, double) |
virtual void | set3Kin (double, double, double, Vec4, Vec4, Vec4, double, double, double, double, double, double) |
virtual void | sigmaKin () |
Calculate flavour-independent parts of cross section. | |
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 void | setIdColAcol () |
Select flavour, colour and anticolour. | |
virtual void | setScale () |
Set scale, when that is missing for an external LHA process. | |
virtual string | name () const |
Process name and code, and the number of final-state particles. | |
virtual int | code () const |
virtual string | inFlux () const |
Need to know which incoming partons to set up interaction for. | |
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 bool | isQCD3body () const |
QCD 2 -> 3 processes need special phase space selection machinery. | |
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 | flavSum () |
Evaluate current sum of flavour couplings times phase space. More... | |
void | propTerm () |
Evaluate current propagator terms of cross section. More... | |
Protected Member Functions inherited from Sigma2Process | |
Sigma2Process () | |
Constructor. | |
virtual void | store2Kin (double x1in, double x2in, double sHin, double tHin, double m3in, double m4in, double runBW3in, double runBW4in) |
Store kinematics and set scales for resolved 2 -> 2 process. More... | |
virtual void | store2KinMPI (double x1in, double x2in, double sHin, double tHin, double uHin, double alpSin, double alpEMin, bool needMasses, double m3in, double m4in) |
As above, special kinematics for multiparton interactions. 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 | gmZmode |
Parameters set at initialization or for each new event. | |
double | mRes |
double | GammaRes |
double | m2Res |
double | GamMRat |
double | thetaWRat |
double | gamSum |
double | intSum |
double | resSum |
double | gamProp |
double | intProp |
double | resProp |
Protected Attributes inherited from Sigma2Process | |
double | tH |
Store subprocess kinematics quantities. | |
double | uH |
double | tH2 |
double | uH2 |
double | m3 |
double | s3 |
double | m4 |
double | s4 |
double | pT2 |
double | runBW3 |
double | runBW4 |
Protected Attributes inherited from SigmaProcess | |
SusyLesHouches * | slhaPtr |
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< InBeam > | inBeamA |
Partons in beams, with PDF's. | |
vector< InBeam > | inBeamB |
vector< InPair > | inPair |
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 | |
Info * | infoPtr = {} |
Settings * | settingsPtr = {} |
Pointer to the settings database. | |
ParticleData * | particleDataPtr = {} |
Pointer to the particle data table. | |
Logger * | loggerPtr = {} |
Pointer to logger. | |
HadronWidths * | hadronWidthsPtr = {} |
Pointer to the hadron widths data table. | |
Rndm * | rndmPtr = {} |
Pointer to the random number generator. | |
CoupSM * | coupSMPtr = {} |
Pointers to SM and SUSY couplings. | |
CoupSUSY * | coupSUSYPtr = {} |
BeamSetup * | beamSetupPtr = {} |
BeamParticle * | beamAPtr = {} |
BeamParticle * | beamBPtr = {} |
BeamParticle * | beamPomAPtr = {} |
BeamParticle * | beamPomBPtr = {} |
BeamParticle * | beamGamAPtr = {} |
BeamParticle * | beamGamBPtr = {} |
BeamParticle * | beamVMDAPtr = {} |
BeamParticle * | beamVMDBPtr = {} |
PartonSystems * | partonSystemsPtr = {} |
Pointer to information on subcollision parton locations. | |
SigmaTotal * | sigmaTotPtr = {} |
Pointers to the total/elastic/diffractive cross sections. | |
SigmaCombined * | sigmaCmbPtr = {} |
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 *Z0 * | Usage: 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 |
An intermediate class for f fbar -> gamma*/Z0 g/gamma and permutations.
|
protected |
Evaluate current sum of flavour couplings times phase space.
Evaluate sum of flavour couplings times phase space.
Coupling factors for Z0 subsystem.
Reset quantities to sum. Declare variables in loop.
Loop over all Z0 decay channels.
Only contributions from three fermion generations, except top.
Check that above threshold. Phase space.
Combine phase space with couplings.
Store sum of combinations. For outstate only open channels.
End loop over fermions.
Done. Return values in gamSum, intSum and resSum.
|
virtual |
Initialize process.
Sigma2ffbargmZggm class. Collects common methods for f fbar -> gamma
Allow to pick only gamma* or Z0 part of full gamma*/Z0 expression.
Store Z0 mass and width for propagator.
Set pointer to particle properties and decay table.
Reimplemented from SigmaProcess.
|
protected |
Evaluate current propagator terms of cross section.
Calculate common parts of gamma/interference/Z0 propagator terms.
Calculate prefactors for gamma/interference/Z0 cross section terms.
Optionally only keep gamma* or Z0 term.
|
virtual |
Evaluate weight for gamma&/Z0 decay angle.
Evaluate weight for gamma*/Z0 decay angle.
Z should sit in entry 5 and one more parton in entry 6.
In an outgoing sense fermions are labelled f(1) fbar(2) f'(3) fbar'(4) where f' fbar' come from gamma
Order so that fbar(1) f(2) -> gamma*/Z0 g/gamma.
Order so that f(2)/fbar(1) g/gamma -> f(1)/fbar(2) f'(3) gamma*/Z0.
Charge/2, left- and righthanded couplings for in- and out-fermion.
Combinations of left/right for in/out, gamma*/interference/Z0.
Evaluate four-vector products.
Calculate weight and its maximum.
Done.
Reimplemented from SigmaProcess.