PYTHIA
8.312
|
A derived class for f fbar' -> Z0 W+-. (Here pure Z0, unfortunately.) More...
#include <SigmaEW.h>
Public Member Functions | |
Sigma2ffbar2ZW () | |
Constructor. | |
virtual void | initProc () |
Initialize process. More... | |
virtual void | sigmaKin () |
Calculate flavour-independent parts of cross section. More... | |
virtual double | sigmaHat () |
Evaluate d(sigmaHat)/d(tHat). More... | |
virtual void | setIdColAcol () |
Select flavour, colour and anticolour. More... | |
virtual double | weightDecay (Event &process, int iResBeg, int iResEnd) |
Evaluate weight for Z0 and W+- decay angles. More... | |
virtual string | name () const |
Info on the subprocess. | |
virtual int | code () const |
virtual string | inFlux () const |
Need to know which incoming partons to set up interaction for. | |
virtual int | id3Mass () const |
virtual int | id4Mass () const |
virtual int | resonanceA () const |
Special treatment needed if process contains an s-channel resonance. | |
Public Member Functions inherited from Sigma2ffbargmZWgmZW | |
Sigma2ffbargmZWgmZW () | |
Constructor. | |
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 | 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 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 | 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 | id5Mass () const |
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 |
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. |
Protected Member Functions inherited from Sigma2ffbargmZWgmZW | |
void | setupProd (Event &process, int i1, int i2, int i3, int i4, int i5, int i6) |
Calculate and store internal products. More... | |
complex | fGK (int i1, int i2, int i3, int i4, int i5, int i6) |
Evaluate the F function of Gunion and Kunszt. | |
double | xiGK (double tHnow, double uHnow) |
Evaluate the Xi function of Gunion and Kunszt. | |
double | xjGK (double tHnow, double uHnow) |
Evaluate the Xj function of Gunion and Kunszt. | |
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 inherited from Sigma2ffbargmZWgmZW | |
Vec4 | pRot [7] |
Internal products. | |
complex | hA [7][7] |
complex | hC [7][7] |
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 |
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 |
A derived class for f fbar' -> Z0 W+-. (Here pure Z0, unfortunately.)
|
inlinevirtual |
Flavours in 2 -> 2/3 processes where masses needed from beginning. (For a light quark masses will be used in the final kinematics, but not at the matrix-element level. For a gluon no masses at all.)
Reimplemented from SigmaProcess.
|
virtual |
Initialize process.
Sigma2ffbar2ZW class. Cross section for f fbar' -> Z0 W+- (f is quark or lepton).
Store W+- mass and width for propagator.
Left-handed couplings for up/nu- and down/e-type quarks.
Common weak coupling factor.
Secondary open width fractions.
Reimplemented from SigmaProcess.
|
virtual |
Select flavour, colour and anticolour.
Select identity, colour and anticolour.
Sign of outgoing W.
tHat is defined between (f, W-) or (fbar, W+), so OK for u/ubar on side 1, but must swap tHat <-> uHat if d/dbar.
Colour flow topologies. Swap when antiquarks.
Reimplemented from SigmaProcess.
|
virtual |
Evaluate d(sigmaHat)/d(tHat).
Evaluate d(sigmaHat)/d(tHat), including incoming flavour dependence.
CKM and colour factors.
Corrections for secondary widths in Z0 and W+- decays.
Answer.
Reimplemented from Sigma2Process.
|
virtual |
Calculate flavour-independent parts of cross section.
Evaluate sigmaHat(sHat), part independent of incoming flavour.
Evaluate cross section, as programmed by Merlin Kole (after tidying), based on Brown, Sahdev, Mikaelian, Phys Rev. D20 (1979) 1069.
Evaluate cross section. Expression from EHLQ, with bug fix, but can still give negative cross section so suspect.
Need to protect against negative cross sections at times.
Reimplemented from SigmaProcess.
|
virtual |
Evaluate weight for Z0 and W+- decay angles.
Two resonance decays, but with common weight.
Order so that fbar(1) f(2) -> f'(3) fbar'(4) f"(5) fbar"(6) with f' fbar' from W+- and f" fbar" from Z0 (note flip Z0 <-> W+-).
Set up four-products and internal products.
Swap tHat and uHat if incoming fermion is downtype.
Couplings of incoming (anti)fermions and outgoing from Z0.
W propagator/interference factor.
Combinations of couplings and kinematics (norm(x) = |x|^2).
Weight and maximum weight.
Done.
Reimplemented from SigmaProcess.