10 #ifndef Pythia8_Merging_H
11 #define Pythia8_Merging_H
13 #include "Pythia8/Basics.h"
14 #include "Pythia8/BeamParticle.h"
15 #include "Pythia8/Event.h"
16 #include "Pythia8/History.h"
17 #include "Pythia8/Info.h"
18 #include "Pythia8/MergingHooks.h"
19 #include "Pythia8/ParticleData.h"
20 #include "Pythia8/PartonLevel.h"
21 #include "Pythia8/PhysicsBase.h"
22 #include "Pythia8/PythiaStdlib.h"
23 #include "Pythia8/Settings.h"
24 #include "Pythia8/StandardModel.h"
33 class Merging :
public PhysicsBase {
38 Merging() : PhysicsBase(), trialPartonLevelPtr(), mergingHooksPtr(),
45 void initPtrs( MergingHooksPtr mergingHooksPtrIn,
46 PartonLevel* trialPartonLevelPtrIn) {
47 trialPartonLevelPtr = trialPartonLevelPtrIn;
48 mergingHooksPtr = mergingHooksPtrIn;
55 virtual void statistics();
58 virtual int mergeProcess(
Event& process);
70 PartonLevel* trialPartonLevelPtr;
73 MergingHooksPtr mergingHooksPtr;
80 static const double TMSMISMATCH;
83 int mergeProcessCKKWL(
Event& process);
86 int mergeProcessUMEPS(
Event& process);
89 int mergeProcessNL3(
Event& process);
92 int mergeProcessUNLOPS(
Event& process);
95 bool cutOnProcess(
Event& process);
103 #endif // Pythia8_Merging_H