thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
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
39
JetRegion
();
40
41
public
:
42
46
Energy
ptMin
()
const
{
return
thePtMin
; }
47
51
Energy
ptMax
()
const
{
return
thePtMax
; }
52
56
const
vector<pair<double,double> >&
yRanges
()
const
{
return
theYRanges
; }
57
63
const
vector<int>&
accepts
()
const
{
return
theAccepts
; }
64
68
bool
fuzzy
()
const
{
return
theFuzzy
; }
69
73
double
cutWeight
()
const
{
return
theCutWeight
; }
74
78
bool
lessThanEnergy
(
Energy
a,
Energy
b,
double
& weight)
const
;
79
83
bool
lessThanRapidity
(
double
a,
double
b,
double
& weight)
const
;
84
85
public
:
86
90
virtual
void
describe
()
const
;
91
95
virtual
bool
matches
(tcCutsPtr parent,
int
n,
const
LorentzMomentum
& p,
96
double
yHat = 0.0);
97
101
bool
didMatch
() {
return
theDidMatch
; }
102
106
virtual
void
reset
() {
theDidMatch
=
false
; }
107
111
int
lastNumber
()
const
{
return
theLastNumber
; }
112
116
const
LorentzMomentum
&
lastMomentum
()
const
{
return
theLastMomentum
; }
117
118
public
:
119
126
void
persistentOutput
(
PersistentOStream
& os)
const
;
127
133
void
persistentInput
(
PersistentIStream
& is,
int
version);
135
142
static
void
Init
();
143
144
protected
:
145
152
virtual
IBPtr
clone
()
const
;
153
158
virtual
IBPtr
fullclone
()
const
;
160
161
162
// If needed, insert declarations of virtual function defined in the
163
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
164
165
166
private
:
167
171
string
doYRange
(
string
);
172
176
Energy
thePtMin
;
177
181
Energy
thePtMax
;
182
186
vector<pair<double,double> >
theYRanges
;
187
193
vector<int>
theAccepts
;
194
198
bool
theDidMatch
;
199
203
int
theLastNumber
;
204
208
LorentzMomentum
theLastMomentum
;
209
213
bool
theFuzzy
;
214
218
double
theCutWeight
;
219
223
Energy
theEnergyCutWidth
;
224
228
double
theRapidityCutWidth
;
229
234
JetRegion
&
operator=
(
const
JetRegion
&) =
delete
;
235
236
};
237
238
}
239
240
#endif
/* ThePEG_JetRegion_H */
ThePEG::HandlerBase
HandlerBase is an abstract base class derived from the Interfaced class via the HandlerBaseT class ad...
Definition:
HandlerBase.h:151
ThePEG::JetRegion
JetRegion implements the requirement of finding a jet inside a given range of transverse momenta,...
Definition:
JetRegion.h:32
ThePEG::JetRegion::fuzzy
bool fuzzy() const
Return true, if this jet region is fuzzy.
Definition:
JetRegion.h:68
ThePEG::JetRegion::didMatch
bool didMatch()
Return true, if this region matched a jet in the last call to matches().
Definition:
JetRegion.h:101
ThePEG::JetRegion::lessThanRapidity
bool lessThanRapidity(double a, double b, double &weight) const
Perform a (potentially) fuzzy check on angular-type quantities.
ThePEG::JetRegion::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
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:193
ThePEG::JetRegion::lessThanEnergy
bool lessThanEnergy(Energy a, Energy b, double &weight) const
Perform a (potentially) fuzzy check on energy-type quantities.
ThePEG::JetRegion::operator=
JetRegion & operator=(const JetRegion &)=delete
The assignment operator is private and must never be called.
ThePEG::JetRegion::ptMax
Energy ptMax() const
Return the maximum pt.
Definition:
JetRegion.h:51
ThePEG::JetRegion::theYRanges
vector< pair< double, double > > theYRanges
The rapidity ranges.
Definition:
JetRegion.h:186
ThePEG::JetRegion::theFuzzy
bool theFuzzy
True if this region is fuzzy.
Definition:
JetRegion.h:213
ThePEG::JetRegion::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::JetRegion::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::JetRegion::JetRegion
JetRegion()
The default constructor.
ThePEG::JetRegion::theLastMomentum
LorentzMomentum theLastMomentum
Return the momentum of the last jet matching this region.
Definition:
JetRegion.h:208
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::JetRegion::theCutWeight
double theCutWeight
The cut weight encountered from the last call to matches()
Definition:
JetRegion.h:218
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:223
ThePEG::JetRegion::yRanges
const vector< pair< double, double > > & yRanges() const
Return the rapidity ranges.
Definition:
JetRegion.h:56
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:63
ThePEG::JetRegion::cutWeight
double cutWeight() const
Return the cut weight encountered from the last call to matches()
Definition:
JetRegion.h:73
ThePEG::JetRegion::ptMin
Energy ptMin() const
Return the minimum pt.
Definition:
JetRegion.h:46
ThePEG::JetRegion::lastNumber
int lastNumber() const
Return the number of the last jet matching this region.
Definition:
JetRegion.h:111
ThePEG::JetRegion::theDidMatch
bool theDidMatch
True, if this region matched a jet in the last call to matches().
Definition:
JetRegion.h:198
ThePEG::JetRegion::describe
virtual void describe() const
Describe the currently active cuts in the log file.
ThePEG::JetRegion::thePtMax
Energy thePtMax
The maximum pt.
Definition:
JetRegion.h:181
ThePEG::JetRegion::lastMomentum
const LorentzMomentum & lastMomentum() const
Return the momentum of the last jet matching this region.
Definition:
JetRegion.h:116
ThePEG::JetRegion::doYRange
string doYRange(string)
Command to insert a rapidity range.
ThePEG::JetRegion::theRapidityCutWidth
double theRapidityCutWidth
The smearing width for the rapidity cut, if fuzzy.
Definition:
JetRegion.h:228
ThePEG::JetRegion::theLastNumber
int theLastNumber
The number of the last jet matching this region.
Definition:
JetRegion.h:203
ThePEG::JetRegion::reset
virtual void reset()
Reset this region to act on a new event.
Definition:
JetRegion.h:106
ThePEG::JetRegion::thePtMin
Energy thePtMin
The minimum pt.
Definition:
JetRegion.h:176
ThePEG::JetRegion::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::LorentzVector< Energy >
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
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6