herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
ClusterFinder.h
1 // -*- C++ -*-
2 //
3 // ClusterFinder.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4 // Copyright (C) 2002-2019 The Herwig Collaboration
5 //
6 // Herwig is licenced under version 3 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef HERWIG_ClusterFinder_H
10 #define HERWIG_ClusterFinder_H
11 
12 #include <ThePEG/Interface/Interfaced.h>
13 #include "CluHadConfig.h"
14 #include "ClusterFinder.fh"
15 
16 namespace Herwig {
17 using namespace ThePEG;
18 
45 class ClusterFinder: public Interfaced {
46 
47 public :
48 
54  ClusterFinder() : heavyDiquarks_(2), diQuarkSelection_(1), diQuarkOnShell_(false)
55  {}
57 
58 public:
59 
67  ClusterVector formClusters(const PVector & partons)
68  ;
69 
79  void reduceToTwoComponents(ClusterVector&)
80  ;
81 
82 public:
83 
87  static void Init();
88 
95  void persistentOutput(PersistentOStream & os) const;
96 
102  void persistentInput(PersistentIStream & is, int version);
104 
105 protected:
106 
113  virtual IBPtr clone() const;
114 
119  virtual IBPtr fullclone() const;
121 
122 private:
123 
127  ClusterFinder & operator=(const ClusterFinder &) = delete;
128 
129 private:
130 
134  unsigned int heavyDiquarks_;
135 
139  unsigned int diQuarkSelection_;
140 
145 
146 };
147 
148 }
149 
150 #endif /* HERWIG_ClusterFinder_H */
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ClusterFinder()
Default constructor.
Definition: ClusterFinder.h:54
vector< ClusterPtr > ClusterVector
This file contains the typedef declarations used in Hadronization.
Definition: CluHadConfig.h:38
unsigned int heavyDiquarks_
Treatment of diquarks contain heavy quarks in baryon-number violating clusters.
bool diQuarkOnShell_
Force diquarks to be on-shell.
This class forms clusters from the partons produced in the Shower.
Definition: ClusterFinder.h:45
-*- C++ -*-
vector< PPtr > PVector
unsigned int diQuarkSelection_
Option for the selection of which quarks to make into a diquark.