thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Cuts
OneJetCut.h
1
// -*- C++ -*-
2
//
3
// OneJetCut.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
// Copyright (C) 2009-2019 Simon Platzer
6
//
7
// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
8
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
9
//
10
#ifndef THEPEG_OneJetCut_H
11
#define THEPEG_OneJetCut_H
12
//
13
// This is the declaration of the OneJetCut class.
14
//
15
16
#include "ThePEG/Cuts/MultiCutBase.h"
17
#include "ThePEG/PDT/MatcherBase.h"
18
19
namespace
ThePEG
{
20
28
class
OneJetCut
:
public
MultiCutBase
{
29
30
public
:
31
35
OneJetCut
();
36
37
public
:
38
45
virtual
bool
passCuts
(tcCutsPtr parent,
const
tcPDVector
& ptype,
46
const
vector<LorentzMomentum> & p)
const
;
48
52
virtual
void
describe
()
const
;
53
54
public
:
55
62
void
persistentOutput
(
PersistentOStream
& os)
const
;
63
69
void
persistentInput
(
PersistentIStream
& is,
int
version);
71
78
static
void
Init
();
79
80
protected
:
81
88
virtual
IBPtr
clone
()
const
;
89
94
virtual
IBPtr
fullclone
()
const
;
96
97
private
:
98
102
Ptr<MatcherBase>::ptr
unresolvedMatcher
;
103
107
Energy
ptMin
;
108
112
double
yMin
;
113
117
double
yMax
;
118
119
private
:
120
125
static
ClassDescription<OneJetCut>
initOneJetCut
;
126
131
OneJetCut
&
operator=
(
const
OneJetCut
&) =
delete
;
132
133
};
134
135
}
136
137
#include "ThePEG/Utilities/ClassTraits.h"
138
139
namespace
ThePEG
{
140
145
template
<>
146
struct
BaseClassTrait<OneJetCut,1> {
148
typedef
MultiCutBase
NthBase
;
149
};
150
153
template
<>
154
struct
ClassTraits<OneJetCut>
155
:
public
ClassTraitsBase<OneJetCut> {
157
static
string
className
() {
return
"ThePEG::OneJetCut"
; }
161
static
string
library
() {
return
"JetCuts.so"
; }
162
};
163
166
}
167
168
#endif
/* THEPEG_OneJetCut_H */
ThePEG::ClassDescription
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data.
Definition:
ClassDescription.h:333
ThePEG::MultiCutBase
This class corresponds to a kinematical cut to be made on a set of outgoing particles from a hard sub...
Definition:
MultiCutBase.h:34
ThePEG::OneJetCut
OneJetsCut is a simple one-jet inclusive cut, requiring at least one jet above a certain pt in a give...
Definition:
OneJetCut.h:28
ThePEG::OneJetCut::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::OneJetCut::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::OneJetCut::yMax
double yMax
The maximum rapidity.
Definition:
OneJetCut.h:117
ThePEG::OneJetCut::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::OneJetCut::OneJetCut
OneJetCut()
The default constructor.
ThePEG::OneJetCut::describe
virtual void describe() const
Describe the currently active cuts in the log file.
ThePEG::OneJetCut::operator=
OneJetCut & operator=(const OneJetCut &)=delete
The assignment operator is private and must never be called.
ThePEG::OneJetCut::yMin
double yMin
The minimum rapidity.
Definition:
OneJetCut.h:112
ThePEG::OneJetCut::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::OneJetCut::passCuts
virtual bool passCuts(tcCutsPtr parent, const tcPDVector &ptype, const vector< LorentzMomentum > &p) const
Return true if a set of outgoing particles with typea ptype and corresponding momenta p passes the cu...
ThePEG::OneJetCut::ptMin
Energy ptMin
The minimum pt.
Definition:
OneJetCut.h:107
ThePEG::OneJetCut::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::OneJetCut::unresolvedMatcher
Ptr< MatcherBase >::ptr unresolvedMatcher
A matcher for unresolved partons.
Definition:
OneJetCut.h:102
ThePEG::OneJetCut::initOneJetCut
static ClassDescription< OneJetCut > initOneJetCut
The static object used to initialize the description of this class.
Definition:
OneJetCut.h:125
ThePEG::PersistentIStream
PersistentIStream is used to read persistent objects from a stream where they were previously written...
Definition:
PersistentIStream.h:48
ThePEG::PersistentOStream
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
Definition:
PersistentOStream.h:51
ThePEG::Pointer::RCPtr
RCPtr is a reference counted (smart) pointer.
Definition:
RCPtr.h:60
ThePEG::Qty< 0, 1, 0 >
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::tcPDVector
vector< tcPDPtr > tcPDVector
A vector of transient pointers to const ParticleData objects.
Definition:
Containers.h:42
ThePEG::BaseClassTrait::NthBase
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
Definition:
ClassTraits.h:161
ThePEG::ClassTraitsBase::className
static string className()
Return the name of class T.
Definition:
ClassTraits.h:66
ThePEG::ClassTraitsBase::library
static string library()
The name of a file containing the dynamic library where the class T is implemented.
Definition:
ClassTraits.h:85
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6