thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.2.1
Cuts
JetRegion.h
1
// -*- C++ -*-
2
//
3
// JetRegion.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_JetRegion_H
11
#define ThePEG_JetRegion_H
12
//
13
// This is the declaration of the JetRegion class.
14
//
15
16
#include "ThePEG/Handlers/HandlerBase.h"
17
#include "ThePEG/EventRecord/Particle.h"
18
#include "ThePEG/Cuts/Cuts.h"
19
20
namespace
ThePEG
{
21
32
class
JetRegion
:
public
HandlerBase
{
33
34
public
:
35
41
JetRegion
();
42
46
virtual
~JetRegion
();
48
49
public
:
50
54
Energy
ptMin
()
const
{
return
thePtMin
; }
55
59
Energy
ptMax
()
const
{
return
thePtMax
; }
60
64
const
vector<pair<double,double> >&
yRanges
()
const
{
return
theYRanges
; }
65
71
const
vector<int>&
accepts
()
const
{
return
theAccepts
; }
72
76
bool
fuzzy
()
const
{
return
theFuzzy
; }
77
81
double
cutWeight
()
const
{
return
theCutWeight
; }
82
86
bool
lessThanEnergy
(
Energy
a,
Energy
b,
double
& weight)
const
;
87
91
bool
lessThanRapidity
(
double
a,
double
b,
double
& weight)
const
;
92
93
public
:
94
98
virtual
void
describe
()
const
;
99
103
virtual
bool
matches
(tcCutsPtr parent,
int
n,
const
LorentzMomentum
& p,
104
double
yHat = 0.0);
105
109
bool
didMatch
() {
return
theDidMatch
; }
110
114
virtual
void
reset
() {
theDidMatch
=
false
; }
115
119
int
lastNumber
()
const
{
return
theLastNumber
; }
120
124
const
LorentzMomentum
&
lastMomentum
()
const
{
return
theLastMomentum
; }
125
126
public
:
127
134
void
persistentOutput
(
PersistentOStream
& os)
const
;
135
141
void
persistentInput
(
PersistentIStream
& is,
int
version);
143
150
static
void
Init
();
151
152
protected
:
153
160
virtual
IBPtr
clone
()
const
;
161
166
virtual
IBPtr
fullclone
()
const
;
168
169
170
// If needed, insert declarations of virtual function defined in the
171
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
172
173
174
private
:
175
179
string
doYRange
(
string
);
180
184
Energy
thePtMin
;
185
189
Energy
thePtMax
;
190
194
vector<pair<double,double> >
theYRanges
;
195
201
vector<int>
theAccepts
;
202
206
bool
theDidMatch
;
207
211
int
theLastNumber
;
212
216
LorentzMomentum
theLastMomentum
;
217
221
bool
theFuzzy
;
222
226
double
theCutWeight
;
227
231
Energy
theEnergyCutWidth
;
232
236
double
theRapidityCutWidth
;
237
242
JetRegion
&
operator=
(
const
JetRegion
&) =
delete
;
243
244
};
245
246
}
247
248
#endif
/* ThePEG_JetRegion_H */
ThePEG::JetRegion::fuzzy
bool fuzzy() const
Return true, if this jet region is fuzzy.
Definition:
JetRegion.h:76
ThePEG::PersistentIStream
PersistentIStream is used to read persistent objects from a stream where they were previously written...
Definition:
PersistentIStream.h:48
ThePEG::LorentzVector< Energy >
ThePEG::JetRegion::theCutWeight
double theCutWeight
The cut weight encountered from the last call to matches()
Definition:
JetRegion.h:226
ThePEG::JetRegion::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::JetRegion::accepts
const vector< int > & accepts() const
Return the jets accepted by this region (with respect to the ordering imposed by the JetCuts object)...
Definition:
JetRegion.h:71
ThePEG::JetRegion::reset
virtual void reset()
Reset this region to act on a new event.
Definition:
JetRegion.h:114
ThePEG::JetRegion::theFuzzy
bool theFuzzy
True if this region is fuzzy.
Definition:
JetRegion.h:221
ThePEG::JetRegion::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::JetRegion::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::JetRegion::theEnergyCutWidth
Energy theEnergyCutWidth
The smearing width for the pt or mass cuts, if fuzzy.
Definition:
JetRegion.h:231
ThePEG::JetRegion::lessThanEnergy
bool lessThanEnergy(Energy a, Energy b, double &weight) const
Perform a (potentially) fuzzy check on energy-type quantities.
ThePEG::JetRegion::theYRanges
vector< pair< double, double > > theYRanges
The rapidity ranges.
Definition:
JetRegion.h:194
ThePEG::JetRegion::operator=
JetRegion & operator=(const JetRegion &)=delete
The assignment operator is private and must never be called.
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::JetRegion::theRapidityCutWidth
double theRapidityCutWidth
The smearing width for the rapidity cut, if fuzzy.
Definition:
JetRegion.h:236
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::JetRegion::thePtMax
Energy thePtMax
The maximum pt.
Definition:
JetRegion.h:189
ThePEG::JetRegion::describe
virtual void describe() const
Describe the currently active cuts in the log file.
ThePEG::JetRegion::lastNumber
int lastNumber() const
Return the number of the last jet matching this region.
Definition:
JetRegion.h:119
ThePEG::JetRegion::theDidMatch
bool theDidMatch
True, if this region matched a jet in the last call to matches().
Definition:
JetRegion.h:206
ThePEG::JetRegion::ptMin
Energy ptMin() const
Return the minimum pt.
Definition:
JetRegion.h:54
ThePEG::JetRegion::ptMax
Energy ptMax() const
Return the maximum pt.
Definition:
JetRegion.h:59
ThePEG::JetRegion::lessThanRapidity
bool lessThanRapidity(double a, double b, double &weight) const
Perform a (potentially) fuzzy check on angular-type quantities.
ThePEG::JetRegion::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::JetRegion::theLastNumber
int theLastNumber
The number of the last jet matching this region.
Definition:
JetRegion.h:211
ThePEG::JetRegion::didMatch
bool didMatch()
Return true, if this region matched a jet in the last call to matches().
Definition:
JetRegion.h:109
ThePEG::JetRegion::theAccepts
vector< int > theAccepts
The jets accepted by this region (with respect to the ordering imposed by the JetCuts object)...
Definition:
JetRegion.h:201
ThePEG::Pointer::RCPtr
RCPtr is a reference counted (smart) pointer.
Definition:
RCPtr.h:60
ThePEG::JetRegion::~JetRegion
virtual ~JetRegion()
The destructor.
ThePEG::JetRegion::yRanges
const vector< pair< double, double > > & yRanges() const
Return the rapidity ranges.
Definition:
JetRegion.h:64
ThePEG::HandlerBase
HandlerBase is an abstract base class derived from the Interfaced class via the HandlerBaseT class ad...
Definition:
HandlerBase.h:151
ThePEG::JetRegion::lastMomentum
const LorentzMomentum & lastMomentum() const
Return the momentum of the last jet matching this region.
Definition:
JetRegion.h:124
ThePEG::JetRegion::doYRange
string doYRange(string)
Command to insert a rapidity range.
ThePEG::JetRegion::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::JetRegion::matches
virtual bool matches(tcCutsPtr parent, int n, const LorentzMomentum &p, double yHat=0.0)
Return true, if the given jet matches this region.
ThePEG::Qty< 0, 1, 0 >
ThePEG::JetRegion
JetRegion implements the requirement of finding a jet inside a given range of transverse momenta...
Definition:
JetRegion.h:32
ThePEG::JetRegion::cutWeight
double cutWeight() const
Return the cut weight encountered from the last call to matches()
Definition:
JetRegion.h:81
ThePEG::JetRegion::JetRegion
JetRegion()
The default constructor.
ThePEG::JetRegion::thePtMin
Energy thePtMin
The minimum pt.
Definition:
JetRegion.h:184
ThePEG::JetRegion::theLastMomentum
LorentzMomentum theLastMomentum
Return the momentum of the last jet matching this region.
Definition:
JetRegion.h:216
Generated on Sat Apr 11 2020 14:31:17 for ThePEG by
1.8.13