PYTHIA
8.312
|
Class for colour reconnection models of general validity. More...
#include <ColourReconnectionHooks.h>
Public Member Functions | |
MBReconUserHooks (int modeIn=0, int flipIn=0, double dLamCutIn=0., double fracGluonIn=1.) | |
virtual bool | canReconnectResonanceSystems () |
Allow colour reconnection after resonance decays (early or late)... | |
virtual bool | doReconnectResonanceSystems (int, Event &event) |
...which gives access to the event, for modification. More... | |
Public Member Functions inherited from UserHooks | |
virtual | ~UserHooks () |
Destructor. | |
virtual bool | initAfterBeams () |
Initialisation after beams have been set by Pythia::init(). | |
virtual bool | canModifySigma () |
Possibility to modify cross section of process. | |
virtual double | multiplySigmaBy (const SigmaProcess *sigmaProcessPtr, const PhaseSpace *phaseSpacePtr, bool inEvent) |
Multiplicative factor modifying the cross section of a hard process. More... | |
virtual bool | canBiasSelection () |
Possibility to bias selection of events, compensated by a weight. | |
virtual double | biasSelectionBy (const SigmaProcess *sigmaProcessPtr, const PhaseSpace *phaseSpacePtr, bool inEvent) |
Multiplicative factor in the phase space selection of a hard process. More... | |
virtual double | biasedSelectionWeight () |
Event weight to compensate for selection weight above. | |
virtual bool | canVetoProcessLevel () |
Possibility to veto event after process-level selection. | |
virtual bool | doVetoProcessLevel (Event &) |
virtual bool | canSetLowEnergySigma (int, int) const |
virtual double | doSetLowEnergySigma (int, int, double, double, double) const |
virtual bool | canVetoResonanceDecays () |
Possibility to veto resonance decay chain. | |
virtual bool | doVetoResonanceDecays (Event &) |
virtual bool | canVetoPT () |
virtual double | scaleVetoPT () |
Transverse-momentum scale for veto test. | |
virtual bool | doVetoPT (int, const Event &) |
virtual bool | canVetoStep () |
virtual int | numberVetoStep () |
Up to how many ISR + FSR steps of hardest interaction should be checked. | |
virtual bool | doVetoStep (int, int, int, const Event &) |
virtual bool | canVetoMPIStep () |
virtual int | numberVetoMPIStep () |
Up to how many MPI steps should be checked. | |
virtual bool | doVetoMPIStep (int, const Event &) |
virtual bool | canVetoPartonLevelEarly () |
virtual bool | doVetoPartonLevelEarly (const Event &) |
virtual bool | retryPartonLevel () |
virtual bool | canVetoPartonLevel () |
Possibility to veto event after parton-level selection. | |
virtual bool | doVetoPartonLevel (const Event &) |
virtual bool | canSetResonanceScale () |
Possibility to set initial scale in TimeShower for resonance decay. | |
virtual double | scaleResonance (int, const Event &) |
virtual bool | canVetoISREmission () |
Possibility to veto an emission in the ISR machinery. | |
virtual bool | doVetoISREmission (int, const Event &, int) |
virtual bool | canVetoFSREmission () |
Possibility to veto an emission in the FSR machinery. | |
virtual bool | doVetoFSREmission (int, const Event &, int, bool=false) |
virtual bool | canVetoMPIEmission () |
Possibility to veto an MPI. | |
virtual bool | doVetoMPIEmission (int, const Event &) |
virtual bool | canChangeFragPar () |
Can change fragmentation parameters. | |
virtual void | setStringEnds (const StringEnd *, const StringEnd *, vector< int >) |
virtual bool | doChangeFragPar (StringFlav *, StringZ *, StringPT *, int, double, vector< int >, const StringEnd *) |
virtual bool | doVetoFragmentation (Particle, const StringEnd *) |
virtual bool | doVetoFragmentation (Particle, Particle, const StringEnd *, const StringEnd *) |
virtual bool | canVetoAfterHadronization () |
virtual bool | doVetoAfterHadronization (const Event &) |
Do the actual veto after hadronization. | |
virtual bool | canSetImpactParameter () const |
Can set the overall impact parameter for the MPI treatment. | |
virtual double | doSetImpactParameter () |
Set the overall impact parameter for the MPI treatment. | |
virtual bool | onEndHadronLevel (HadronLevel &, Event &) |
Custom processing at the end of HadronLevel::next. | |
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. | |
Protected Member Functions inherited from UserHooks | |
UserHooks () | |
Constructor. | |
virtual void | onInitInfoPtr () override |
After initInfoPtr, initialize workEvent. More... | |
void | omitResonanceDecays (const Event &process, bool finalOnly=false) |
omitResonanceDecays omits resonance decay chains from process record. More... | |
void | subEvent (const Event &event, bool isHardest=true) |
subEvent extracts currently resolved partons in the hard process. More... | |
Protected Member Functions inherited from PhysicsBase | |
PhysicsBase () | |
Default constructor. | |
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 UserHooks | |
Event | workEvent = {} |
Have one event object around as work area. | |
double | selBias = 1. |
User-imposed selection bias. | |
double | enhancedEventWeight = {} |
Bookkept quantities for boosted event weights. | |
double | pTEnhanced = {} |
double | wtEnhanced = {} |
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 |
Class for colour reconnection models of general validity.
|
inline |
Constructor and destructor. mode = 0: no reconnection (dummy option, does nothing); = 1: swap gluons to minimize lambda. = 2: move gluons to minimize lambda. flip = 0: no flip between quark-antiquark ends. = 1: flip between quark-antiquark ends, excluding junction systems. = 2: flip between quark-antiquark ends, including junction systems. dLamCut: smallest -delta-lambda value for which to swap/mode (positive). fracGluon: the fraction of gluons that will be studied for reconnection. m2Ref : squared reference mass scale for lambda measure calculation.
|
inlinevirtual |
...which gives access to the event, for modification.
Return without action for relevant mode numbers.
Double diffraction not yet implemented, so return without action. (But works for internal move implementation.)
Initial setup: relevant gluons and coloured partons.
Done if not enough gluons.
Colour reconnect. Return if failed.
Colour flip afterburner.
Reimplemented from UserHooks.