PYTHIA
8.312
|
Class for a single step in the history of a process. More...
#include <VinciaHistory.h>
Public Member Functions | |
HistoryNode () | |
Constructors. | |
HistoryNode (Event &stateIn, vector< vector< int > > chainsIn, double scaleIn) | |
void | initPtr (VinciaCommon *vinComPtrIn, Resolution *resPtrIn, AntennaSetFSR *antSetPtrIn) |
Methods. | |
int | getNClusterings (shared_ptr< VinciaMergingHooks > vinMergingHooksPtr, Logger *loggerPtr, int verboseIn) |
Set clusterList. More... | |
void | setClusterList (shared_ptr< VinciaMergingHooks > vinMergingHooksPtr, Logger *loggerPtr, int verboseIn) |
Find all possible clusterings for current event. More... | |
bool | cluster (HistoryNode &nodeClus, Logger *loggerPtr, int verboseIn) |
Perform the clusterings according to the resolution criterion. More... | |
double | xA () const |
Get energy fractions (used in PDF ratios). | |
double | xB () const |
int | idA () const |
Get flavours of beams (used in PDF ratios). | |
int | idB () const |
int | colTypeA () const |
Get colour types of beams (used in PDF ratios). | |
int | colTypeB () const |
double | getEvolNow () const |
Get evolution scale (used in trial shower). | |
void | setEvolScale (double scaleIn) |
Setter methods. | |
Public Attributes | |
Event | state |
Current state. | |
bool | hasRes |
Resonance info. | |
int | iRes |
int | idRes |
int | nMinQQbar |
Minimal number of qqbar pairs. | |
vector< vector< int > > | clusterableChains |
List of unclusterable lists of colour-connected partons. | |
VinciaClustering | lastClustering |
Information corresponding to the last clustering. | |
Class for a single step in the history of a process.
bool cluster | ( | HistoryNode & | nodeNext, |
Logger * | loggerPtrIn, | ||
int | verboseIn | ||
) |
Perform the clusterings according to the resolution criterion.
Do the clustering in cluster list that corresponds to the maximal resolution criterion.
Check for clusterings.
1) Fetch the VinciaClustering with minimal resolution criterion.
2) Perform the clustering on event.
Find the evolution scale.
Save.
Done.
int getNClusterings | ( | shared_ptr< VinciaMergingHooks > | vinMergingHooksPtr, |
Logger * | loggerPtr, | ||
int | verboseIn | ||
) |
Set clusterList.
The HistoryNode class.
Return how many clusterings there are.
Find all possible clusterings.
Return the number we found.
void setClusterList | ( | shared_ptr< VinciaMergingHooks > | vinMergingHooksPtr, |
Logger * | loggerPtr, | ||
int | verboseIn | ||
) |
Find all possible clusterings for current event.
Print state to be clustered.
We can only have a single clusterable chain for resonances.
For hard process in VBF, we need at least two (beam) chains.
Loop over all chains.
For VBF, need one quark pair per line.
Fetch current chain and check whether we want to consider it.
If this chain has less than three particles, nothing more to be done.
Find candidate clusterings and qqbar pairs.
Count quarks and antiquarks in this chain.
Loop over particles in current chain.
Fetch daughters of this clustering.
Don't cluster emissions into the initial state...
Set information about daughters (masses and invariants).
Make sure we only add sensible clusterings to the list.
...but include colour partners of initial-state quarks in GXConv...
Fetch colour connection.
Check colour connection: 1 and 2 must not be connected, 2 and 3 must be connected.
Convention is that j is always in the final state, so we swap the order of dau1 and dau2.
Make sure we only add sensible clusterings to the list.
Check colour connection: 2 and 3 must not be connected, 1 and 2 must be connected.
Convention is that j is always in the final state, so we swap the order of dau2 and dau3.
Make sure we only add sensible clusterings to the list.
...and colour partners of initial-state gluons in QXConv.
If both colour-connected partners are quarks, we either encountered it already or will encounter it later.
Convention is that j is always in the final state, so we swap the order of dau1 and dau2.
Make sure we only add sensible clusterings to the list.
Convention is that j is always in the final state, so we swap the order of dau3 and dau2.
Make sure we only add sensible clusterings to the list.
Now loop over candidate clusterings.
Skip clusterings of resonances.
Find all antennae that can produce this post-branching state.
Loop over all histories for this post-branching state and save corresponding clusterings.
Fetch information about antenna function.
Check whether we are allowed to do this clustering.
Is FF on?
Is RF on?
For now warn if we do RF clusterings.
Is II on?
Is IF on?
Check if we have enough quarks left.
Initialise vectors of invariants and masses.
Calculate sector resolution variable for this clustering.
If nothing went wrong, save in cluster list.