PYTHIA
8.312
|
Class for a QED splitting system. More...
#include <VinciaQED.h>
Public Member Functions | |
QEDsplitSystem () | |
Constructor. | |
void | init (BeamParticle *beamAPtrIn, BeamParticle *beamBPtrIn, int verboseIn) override |
Initialize. More... | |
void | prepare (int iSysIn, Event &event, double q2CutIn, bool isBelowHadIn, vector< double > evolutionWindowsIn, AlphaEM alIn) override |
Prepare list of final-state photons - with recoilers - for splittings. More... | |
void | buildSystem (Event &event) override |
Build the splitting system. More... | |
double | q2Next (Event &event, double q2Start) override |
Generate a scale for the system. More... | |
bool | acceptTrial (Event &event) override |
Generate kinematics and check veto. More... | |
void | updateEvent (Event &event) override |
Update Event. More... | |
bool | isSplitting () override |
Branching type: isSplitting() = true. | |
void | print () override |
Print the system. | |
Public Member Functions inherited from QEDsystem | |
QEDsystem () | |
Constructor. | |
virtual | ~QEDsystem ()=default |
Destructor. | |
void | initPtr (Info *infoPtrIn, ParticleData *particleDataPtrIn, PartonSystems *partonSystemsPtrIn, Rndm *rndmPtrIn, Settings *settingsPtrIn, VinciaCommon *vinComPtrIn) |
Initialize pointers. More... | |
virtual void | setVerbose (int verboseIn) |
virtual void | updatePartonSystems () |
Update the parton systems. More... | |
virtual bool | isInitial () |
Additional Inherited Members | |
Protected Attributes inherited from QEDsystem | |
Info * | infoPtr {} |
Pointers. | |
PartonSystems * | partonSystemsPtr {} |
ParticleData * | particleDataPtr {} |
Rndm * | rndmPtr {} |
Settings * | settingsPtr {} |
Logger * | loggerPtr {} |
VinciaCommon * | vinComPtr {} |
bool | isInitPtr |
int | iSys |
Event system. | |
vector< Vec4 > | pNew |
int | verbose |
Verbose setting. | |
int | jNew |
Information for partonSystems. | |
map< int, int > | iReplace |
double | shat |
Class for a QED splitting system.
|
overridevirtual |
Generate kinematics and check veto.
Mark trial as used.
Set up some shorthands.
New momenta.
Safety check.
ij is the new pair, k is the spectator.
Check phase space.
Make sure any new qqbar pair has at least the invariant mass of the lightest meson. sijMin is 0 if these are not quarks.
Kernel veto.
Kinematics.
Done.
Implements QEDsystem.
|
overridevirtual |
Build the splitting system.
Verbose output.
Get rid of saved trial and clear all antennae.
Build lists of particles.
Only involve final state particles.
Find photons.
Find recoilers.
If no charged and no uncharged spectators, return.
Loop over photons.
If no charged spectators, use uncharged.
Check if there is another spectator than the current photon.
Continue to next photon if no spectator is available.
Select one at random that's not the photon itself.
Else use charged spectators.
Set up Ariadne factors.
Implements QEDsystem.
|
overridevirtual |
|
overridevirtual |
Prepare list of final-state photons - with recoilers - for splittings.
Input.
Set up weights for splitting flavours.
Splittings for gamma->lepton+lepton-.
Only include gamma->qqbar if above hadronisation scale.
Total weight.
Build internal system.
Done.
Implements QEDsystem.
|
overridevirtual |
Generate a scale for the system.
Return saved trial if we have one.
Check if there are any photons left.
Starting scale - account for cut on mGammaMax.
Check if qTrial is below the cutoff.
Find lower value from evolution window.
Compute weights.
If no antennae are active, don't generate new scale.
Generate scale and do alpha veto.
Check if evolution window was crossed.
Select antenna.
Select splitting ID.
Safety check.
Generate value of zeta and phi.
Done.
Implements QEDsystem.
|
overridevirtual |
Update Event.
Update event after splitting.
Clear information for replacing later in partonSystems
Set up the new fermions. Stochastic colour tag.
Shower may occur at a displaced vertex, or for unstable particle.
Change the event - add new particles.
Adjust old ones.
Save updates to be done on PartonSystems later.
Implements QEDsystem.