Herwig
7.2.1
|
The ShowerTree class stores the basic information needed for each hard interaction, either a scattering process or decay, which needs to be showered. More...
#include <ShowerTree.h>
Public Member Functions | |
ShowerTree (PerturbativeProcessPtr process) | |
Constructor from a perturbative process. More... | |
void | fillEventRecord (StepPtr pstep, bool ISR, bool FSR) |
Insert the tree into the event record. More... | |
void | setParents () |
Set the parent tree to this tree for trees which come from this one. More... | |
map< ShowerProgenitorPtr, ShowerParticlePtr > & | incomingLines () |
Get the incoming shower particles. | |
map< ShowerProgenitorPtr, tShowerParticlePtr > & | outgoingLines () |
Get the outgoing shower particles. | |
void | updateFinalStateShowerProduct (ShowerProgenitorPtr progenitor, ShowerParticlePtr parent, const ShowerParticleVector &children) |
Update the shower product for a final-state particle. | |
void | updateInitialStateShowerProduct (ShowerProgenitorPtr progenitor, ShowerParticlePtr newParent) |
Update the shower product for an initial-state particle. | |
tShowerParticlePtr | getFinalStateShowerProduct (ShowerProgenitorPtr progenitor) |
Get the current final shower product for a final-state particle. | |
void | addFinalStateBranching (ShowerParticlePtr parent, const ShowerParticleVector &children) |
Add a final-state branching. More... | |
void | addInitialStateBranching (ShowerParticlePtr oldParent, ShowerParticlePtr newParent, ShowerParticlePtr otherChild) |
Add an initial-state branching. More... | |
void | updateAfterShower (ShowerDecayMap &decay) |
Member called at the end of the shower of a tree to perform a number of updates. More... | |
ShowerTreePtr | parent () const |
Access the parent tree. | |
void | clear () |
Clear all the shower products so that the event can be reshowered if the first attempt fail. | |
void | resetShowerProducts () |
Reset the particles resulting from the shower to those which started the shower. | |
void | setVetoes (const map< ShowerInteraction, Energy > &pTs, unsigned int type) |
Set maximum Emission scales. | |
vector< ShowerProgenitorPtr > | extractProgenitors () |
Extract the progenitors for the reconstruction. | |
const set< tShowerParticlePtr > & | forwardParticles () const |
Access to the outgoing particles. | |
const map< tShowerTreePtr, pair< tShowerProgenitorPtr, tShowerParticlePtr > > & | treelinks () const |
Map of particles in this Tree which are the initial particles in other trees. | |
void | updateLink (tShowerTreePtr tree, pair< tShowerProgenitorPtr, tShowerParticlePtr > in) |
Update the link between shower particle and tree. | |
void | transform (const LorentzRotation &rot, bool applyNow) |
Transform the tree. | |
void | applyTransforms () |
Apply any postphoned transformations. | |
void | clearTransforms () |
Clear any postphoned transformations. | |
const LorentzRotation & | transform () |
Transform which needs to be applied. | |
vector< ShowerParticlePtr > | extractProgenitorParticles () |
Get all the progenitors. | |
void | checkMomenta () |
Check the momentum conservation in the tree. | |
void | update (PerturbativeProcessPtr newProcess) |
Update tree after the parent has been decayed. | |
RealEmissionProcessPtr | perturbativeProcess () |
The perturbative process. | |
bool | isHard () const |
Access methods for the type of interaction. More... | |
bool | isDecay () const |
Whether or not this is a decay. | |
bool | hasShowered () const |
Access and set the flag for whether this tree has been showered. More... | |
void | hasShowered (bool in) |
Set the flag. | |
Public Member Functions inherited from Herwig::ShowerEventRecord | |
tSubProPtr | subProcess () const |
Return the subprocess currently showered. | |
tStdXCombPtr | xcombPtr () const |
Return the XComb describing the hard process. | |
void | xcombPtr (tStdXCombPtr in) |
Set the XComb describing the hard process. | |
const StandardXComb & | xcomb () const |
Return the XComb describing the hard process. | |
PPair & | incoming () |
Return the incoming partons at the current stage of the evolution. | |
const PPair & | incoming () const |
Return the incoming partons at the current stage of the evolution. | |
PList & | outgoing () |
Return the outgoing partons at the current stage of the evolution. | |
const PList & | outgoing () const |
Return the outgoing partons at the current stage of the evolution. | |
PList & | intermediates () |
Return the intermediate particles at the current stage of the evolution. | |
const PList & | intermediates () const |
Return the intermediate particles at the current stage of the evolution. | |
const pair< double, double > & | fractions () const |
Return the momentum fractions. | |
pair< double, double > & | fractions () |
Return the momentum fractions. | |
const pair< PDF, PDF > & | pdfs () const |
Return the PDFs. | |
void | identifyEventType () |
Identify the type of event. | |
ShowerEventRecord () | |
The default constructor. | |
virtual | ~ShowerEventRecord () |
The destructor. | |
bool | isMCatNLOSEvent () const |
True, if Matchbox MC S-event. | |
bool | isMCatNLOHEvent () const |
True, if matchbox MC H-event. | |
bool | isPowhegSEvent () const |
True, if Matchbox MC S-event. | |
bool | isPowhegHEvent () const |
True, if matchbox MC H-event. | |
void | isMCatNLOSEvent (bool in) |
True, if Matchbox MC S-event. | |
void | isMCatNLOHEvent (bool in) |
True, if matchbox MC H-event. | |
Ptr< ShowerApproximation >::tptr | showerApproximation () |
Access to the shower approximation. | |
bool | truncatedShower () const |
True if truncated shower required. | |
void | truncatedShower (bool in) |
True if truncated shower required. | |
Public Member Functions inherited from ThePEG::Base | |
void | debug () const |
virtual void | debugme () const |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Static Public Member Functions | |
static Lorentz5Distance | spaceTimeDistance (tPPtr particle) |
Calculate the space-time displacement. More... | |
static void | constructTrees (ShowerTreePtr &hardTree, ShowerDecayMap &decayTrees, PerturbativeProcessPtr hard, DecayProcessMap decay) |
Construct the trees from the hard process. More... | |
Static Public Member Functions inherited from ThePEG::Base | |
static void | Init () |
Protected Member Functions | |
void | fixColour (tShowerParticlePtr part) |
After the creatation of a ShowerParticle make sure it is properly attached to its ColourLine. More... | |
void | insertHard (StepPtr pstep, bool ISR, bool FSR) |
Functions to add the shower to the event record. More... | |
void | insertDecay (StepPtr pstep, bool ISR, bool FSR) |
Insert a decay process. More... | |
void | addFinalStateShower (PPtr particle, StepPtr step) |
Recursively add the final-state shower from the particle to the event record. More... | |
void | addInitialStateShower (PPtr particle, PPtr hadron, StepPtr step, bool addchildren=true) |
Add the initial-state shwoer from the particle to the step. More... | |
Protected Member Functions inherited from Herwig::ShowerEventRecord | |
void | subProcess (tSubProPtr in) |
Set the subprocess. | |
pair< PDF, PDF > & | pdfs () |
Return the PDFs. | |
map< ColinePtr, ColinePtr > & | colourLines () |
Map of colour lines used to reset colours when inserted into the event. | |
void | colourIsolate (const vector< PPtr > &original, const vector< PPtr > ©) |
Isolate the colour of the process from the rest of the event. More... | |
void | updateColour (PPtr particle, bool recursive) |
Update the colour information of a particle prior to insertion into the event record. | |
void | mapColour (PPtr original, PPtr copy) |
Map the colours for a given particle. | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Private Attributes | |
PPair | _incoming |
Incoming partons for the hard process. | |
map< ShowerProgenitorPtr, ShowerParticlePtr > | _incomingLines |
The incoming ShowerParticles connected to the interaction as the index of a map with the particle the shower backward evolves them to as the value. | |
map< ShowerProgenitorPtr, tShowerParticlePtr > | _outgoingLines |
The outgoing ShowerParticles connected to the interaction as the index of a map with the particle the shower evolves them to as the value. | |
set< tShowerParticlePtr > | _forward |
The outgoing ShowerParticles at the end of the final-state shower. | |
bool | _wasHard |
Was this a scattering process or a decay. | |
map< tShowerTreePtr, pair< tShowerProgenitorPtr, tShowerParticlePtr > > | _treelinks |
Map of particles in this Tree which are the initial particles in other trees. | |
tShowerTreePtr | _parent |
The parent tree. | |
bool | _hasShowered |
Has this tree showered. | |
LorentzRotation | _transforms |
The transforms which still need to be applied. | |
Static Private Attributes | |
static bool | _spaceTime |
Whether or not to include space-time distances. | |
static Energy2 | _vmin2 |
Minimum virtuality for the space-time model. | |
Friends | |
class | QTildeShowerHandler |
Additional Inherited Members | |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
The ShowerTree class stores the basic information needed for each hard interaction, either a scattering process or decay, which needs to be showered.
Definition at line 40 of file ShowerTree.h.
Herwig::ShowerTree::ShowerTree | ( | PerturbativeProcessPtr | process | ) |
Constructor from a perturbative process.
process | The perturbative process |
void Herwig::ShowerTree::addFinalStateBranching | ( | ShowerParticlePtr | parent, |
const ShowerParticleVector & | children | ||
) |
Add a final-state branching.
This method removes the parent of the branching from the list of particles at the end of the shower and inserts the children
parent | The parent for the branching |
children | The outgoing particles in the branching |
Recursively add the final-state shower from the particle to the event record.
particle | The final-state particle |
step | The step |
void Herwig::ShowerTree::addInitialStateBranching | ( | ShowerParticlePtr | oldParent, |
ShowerParticlePtr | newParent, | ||
ShowerParticlePtr | otherChild | ||
) |
Add an initial-state branching.
This method removes the oldParent of the branching and inserts the result of the backward evolution and the outgoing particle into the relevant lists.
oldParent | The particle being backward evolved |
newParent | The initial-state particle resulting from the backward evolution |
otherChild | The final-state particle produced in the evolution. |
|
protected |
Add the initial-state shwoer from the particle to the step.
particle | The final-state particle |
hadron | The incoming hadron |
step | The step |
addchildren | Add the children of the particle |
|
static |
Construct the trees from the hard process.
hardTree | The output ShowerTree for the hard process |
decayTrees | The output ShowerTrees for any decays. |
hard | The output ShowerTree for the hard process |
decay | The output ShowerTrees for any decays. |
|
inline |
Insert the tree into the event record.
pstep | The step into which the particles should be inserted |
ISR | Whether or not ISR is switched on |
FSR | Whether or not FSR is switched on |
Definition at line 78 of file ShowerTree.h.
|
protected |
After the creatation of a ShowerParticle make sure it is properly attached to its ColourLine.
part | The particle |
|
inline |
Access and set the flag for whether this tree has been showered.
Access the flag
Definition at line 179 of file ShowerTree.h.
|
protected |
Insert a decay process.
pstep | The step into which the particles should be inserted |
ISR | Whether or not ISR is switched on |
FSR | Whether or not FSR is switched on |
|
protected |
Functions to add the shower to the event record.
Insert a hard process
pstep | The step into which the particles should be inserted |
ISR | Whether or not ISR is switched on |
FSR | Whether or not FSR is switched on |
|
inline |
Access methods for the type of interaction.
Whether or not this is a scattering process
Definition at line 99 of file ShowerTree.h.
void Herwig::ShowerTree::setParents | ( | ) |
Set the parent tree to this tree for trees which come from this one.
This needs to be run after the constructor.
|
static |
Calculate the space-time displacement.
particle | The particle for which to calculate the displacement |
void Herwig::ShowerTree::updateAfterShower | ( | ShowerDecayMap & | decay | ) |
Member called at the end of the shower of a tree to perform a number of updates.
decay | The map of widths and ShowerTrees for the decays so that any unstable decay products can be added. |