PYTHIA
8.312
|
History class for the Vincia shower. More...
#include <VinciaHistory.h>
Public Member Functions | |
VinciaHistory (Event &stateIn, BeamParticle *beamAPtrIn, BeamParticle *beamBPtrIn, MergingHooksPtr mergingHooksPtrIn, PartonLevel *trialPartonLevelPtrIn, ParticleData *particleDataPtrIn, Info *infoPtrIn) | |
Constructor. More... | |
bool | isValid () |
Check if a valid history was found. | |
bool | isBelowMS () |
Check if history failed merging scale cut. | |
double | getWeightCKKWL () |
Perform a trial shower and get the ckkwl weight. More... | |
int | getNClusterSteps () |
What was the multiplicity of this event? More... | |
double | getRestartScale () |
Get the shower starting scale. More... | |
bool | hasNewProcess () |
Event | getNewProcess () |
bool | doAbort () |
VinciaHistory | ( | Event & | stateIn, |
BeamParticle * | beamAPtrIn, | ||
BeamParticle * | beamBPtrIn, | ||
MergingHooksPtr | mergingHooksPtrIn, | ||
PartonLevel * | trialPartonLevelPtrIn, | ||
ParticleData * | particleDataPtrIn, | ||
Info * | infoPtrIn | ||
) |
Constructor.
The VinciaHistory class.
Constructor.
Save copies of pointers to Pythia objects.
Cast input pointers as vincia objects.
Fetch AntennaSetFSR, MECs, VinciaCommon, and Resolution pointers.
Get verbosity.
Save event.
Copy beams.
Set the merging scale (cutoff to ME generator).
Set whether the merging scale is set in terms of the evolution variable.
Set the maximum multiplicites of matrix-element generator.
Possible new hard process information.
Find all histories, but only save best.
int getNClusterSteps | ( | ) |
What was the multiplicity of this event?
Return how many clusterings there are in our history (= number of additional emissions relative to Born config).
Loop over systems.
double getRestartScale | ( | ) |
Get the shower starting scale.
Return the scale at which to restart the parton shower.
Scale of new (MPI) emission.
Return the reconstructed scale of the last node.
Note: scale of first node gets set correctly in getStartScale().
Loop over systems and find lowest restart scale. TODO only use system 0 unless we use an actual resonance shower?
Merging scale. Should only be the last resort.
double getWeightCKKWL | ( | ) |
Perform a trial shower and get the ckkwl weight.
(Sudakov) weight from performing trial shower.
Initialise weight.
Communicate to Vincia that we are doing a trial shower.
Loop over systems.
Fetch shorthands for ME and Born node.
Communicate to Vincia whether this is a resonance system trial.
Set correct Born state for trial shower. Note: Born is last entry in history.
Get starting scale for trial shower.
Loop over nodes in history starting with Born. NB: last shower step starting from S_n will be performed in main shower.
Get end scale for trial shower.
Replace starting scale for next node.
Communicate end scale to merging hooks.
Perform a trial branching, get scale.
Check for abort.
Was it above the current scale?
Was this a new topology?
Veto this event.
Calculate PDF and alphaS ratios with next scale.
Replace starting scale for next node.
Finished loop over clustered states.
PDF ratio with factorisation scale.
For resonance systems also tell merging hooks.
Finished loop over systems.
Reset changed values to factory.
Got to here - event passes!
|
inline |
Should we overwrite the original event? E.g. if an MPI was generated.