herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
CKKWTree.h
1// -*- C++ -*-
2#ifndef HERWIG_CKKWTree_H
3#define HERWIG_CKKWTree_H
4//
5// This is the declaration of the CKKWTree class.
6//
7
8#include "Herwig/Shower/QTilde/Base/HardTree.h"
9#include "CKKWTree.fh"
10
11namespace Herwig {
12
13using namespace ThePEG;
14
18class CKKWTree: public HardTree {
19
20public:
21
25 CKKWTree(vector<HardBranchingPtr>, vector<HardBranchingPtr>, ShowerInteraction);
26
27public:
28
33
37 Energy lowestPtMomentum( int jetMeasureMode, int cutOption );
38
43
47 Energy totalPt() { return totalpT_; }
48
53 void findNodes();
54
58 map< HardBranchingPtr, Energy > & getNodes() { return nodes_; }
59
63 Energy lowestPt( int jetMeasureMode, Energy2 s );
64
68 bool ordered() const {return ordered_;}
69
70protected:
71
75 void getLowestJetMeasure( HardBranchingPtr branch, int jetMeasureMode, int cutOption );
76
80 Energy hadronJetMeasure( const Lorentz5Momentum & p1,
81 const Lorentz5Momentum & p2,
82 bool final );
86 Energy getJetMeasure( const Lorentz5Momentum & p1,
87 const Lorentz5Momentum & p2,
88 int jetMeasureMode );
89
93 bool externalBranching( HardBranchingPtr a, HardBranchingPtr b );
94
98 void fillHardScales( HardBranchingPtr branch, vector< pair< Energy, double > > & currentLine );
99
103 bool fillNodes( HardBranchingPtr );
104
108 bool fixParents( HardBranchingPtr );
109
110private:
111
116 map< HardBranchingPtr, Energy > nodes_;
117
121 vector< vector< pair< Energy, double > > > hardLineScales_;
122
128
132 Energy totalpT_;
133
138 HardBranchingPtr lowestpT_;
139
144
145};
146
147}
148
149#endif /* HERWIG_CKKWTree_H */
Here is the documentation of the CKKWTree class.
Definition: CKKWTree.h:18
Energy lowestPt(int jetMeasureMode, Energy2 s)
Get LowestPt in which ever jet definition from the shower variables.
bool checkHardOrdering()
Returns true if all lines in tree are ordered in /tilde(q)
bool fixParents(HardBranchingPtr)
Recursive function to fix the parent assignments.
void fillHardScales(HardBranchingPtr branch, vector< pair< Energy, double > > &currentLine)
Function to recursively find the hard line scales.
CKKWTree(vector< HardBranchingPtr >, vector< HardBranchingPtr >, ShowerInteraction)
The default constructor.
bool ordered_
Is the tree ordered.
Definition: CKKWTree.h:143
bool fillNodes(HardBranchingPtr)
Recursive function to fill externals, nodes and intermediates from the time-like showers.
Energy hadronJetMeasure(const Lorentz5Momentum &p1, const Lorentz5Momentum &p2, bool final)
Function for finding the hadronic jet measure of two partons.
Energy totalPt()
Returns sum of pts of all branchings in tree.
Definition: CKKWTree.h:47
bool ordered() const
Is the tree ordered?
Definition: CKKWTree.h:68
HardBranchingPtr lowestpT_
The hardBranching of softest branching This is found by looking at tree end points in fillNodes.
Definition: CKKWTree.h:138
bool checkXOrdering()
Returns true if all spacelike lines are ordered in x.
Energy getJetMeasure(const Lorentz5Momentum &p1, const Lorentz5Momentum &p2, int jetMeasureMode)
Function for finding the Durham or LUCLUS jet measures of two partons.
Energy totalpT_
The sum of the pts of all branchings.
Definition: CKKWTree.h:132
Energy lowestpTMomentum_
The lowest pt of the branchings in the hardtree in whatever jet measure according to the hardtree mom...
Definition: CKKWTree.h:127
map< HardBranchingPtr, Energy > & getNodes()
Access the nodal branchings.
Definition: CKKWTree.h:58
Energy lowestPtMomentum(int jetMeasureMode, int cutOption)
Get lowest Pt in which ever jet definition from the hardtree momentum.
vector< vector< pair< Energy, double > > > hardLineScales_
Scales and z along each hard line to check ordering.
Definition: CKKWTree.h:121
map< HardBranchingPtr, Energy > nodes_
Map containing all nodes with the ingoing partons and their scale (this is the the intermediates and ...
Definition: CKKWTree.h:116
void getLowestJetMeasure(HardBranchingPtr branch, int jetMeasureMode, int cutOption)
Recursive function to find the lowest jet measure in a hardtree from clustered momenta.
bool externalBranching(HardBranchingPtr a, HardBranchingPtr b)
Function to determine whether a branching consists of external partons.
void findNodes()
Calls recursive function to fill externals and nodes then finds the internal lines from the nodes.
The HardTree class is designed to contain the information required to implement the POWHEG approach f...
Definition: HardTree.h:23
ShowerInteraction
Handy header file to be included in all Shower classes.
-*- C++ -*-