thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Cuts
SimpleDISCut.h
1
// -*- C++ -*-
2
//
3
// SimpleDISCut.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG 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 THEPEG_SimpleDISCut_H
10
#define THEPEG_SimpleDISCut_H
11
//
12
// This is the declaration of the SimpleDISCut class.
13
//
14
15
#include "ThePEG/Cuts/TwoCutBase.h"
16
17
namespace
ThePEG
{
18
27
class
SimpleDISCut
:
public
TwoCutBase
{
28
29
public
:
30
34
SimpleDISCut
()
35
:
theMinQ2
(1.0*GeV2),
theMaxQ2
(100.0*GeV2),
theMiny
(0.0),
theMaxy
(1.0),
36
theMinW2
(100.0*GeV2),
theMaxW2
(1000000.0*GeV2),
chargedCurrent
(false) {}
37
38
public
:
39
46
virtual
Energy2
minSij
(
tcPDPtr
pi,
tcPDPtr
pj)
const
;
47
54
virtual
Energy2
minTij
(
tcPDPtr
pi,
tcPDPtr
po)
const
;
55
61
virtual
double
minDeltaR
(
tcPDPtr
pi,
tcPDPtr
pj)
const
;
62
73
virtual
Energy
minKTClus
(
tcPDPtr
pi,
tcPDPtr
pj)
const
;
74
81
virtual
double
minDurham
(
tcPDPtr
pi,
tcPDPtr
pj)
const
;
82
89
virtual
bool
passCuts
(tcCutsPtr parent,
tcPDPtr
pitype,
tcPDPtr
pjtype,
90
LorentzMomentum
pi,
LorentzMomentum
pj,
91
bool
inci =
false
,
bool
incj =
false
)
const
;
93
97
virtual
void
describe
()
const
;
98
99
protected
:
100
105
bool
check
(
long
idi,
long
ido)
const
;
106
107
public
:
108
115
void
persistentOutput
(
PersistentOStream
& os)
const
;
116
122
void
persistentInput
(
PersistentIStream
& is,
int
version);
124
131
static
void
Init
();
132
133
protected
:
134
141
virtual
IBPtr
clone
()
const
;
142
147
virtual
IBPtr
fullclone
()
const
;
149
150
private
:
151
155
double
maxMiny
()
const
;
156
160
double
minMaxy
()
const
;
161
165
Energy2
maxMinQ2
()
const
;
166
170
Energy2
minMaxQ2
()
const
;
171
175
Energy2
maxMinW2
()
const
;
176
180
Energy2
minMaxW2
()
const
;
181
182
private
:
183
187
Energy2
theMinQ2
;
188
192
Energy2
theMaxQ2
;
193
197
double
theMiny
;
198
202
double
theMaxy
;
203
204
205
209
Energy2
theMinW2
;
210
214
Energy2
theMaxW2
;
215
220
bool
chargedCurrent
;
221
222
private
:
223
228
static
ClassDescription<SimpleDISCut>
initSimpleDISCut
;
229
234
SimpleDISCut
&
operator=
(
const
SimpleDISCut
&) =
delete
;
235
236
};
237
238
}
239
240
#include "ThePEG/Utilities/ClassTraits.h"
241
242
namespace
ThePEG
{
243
248
template
<>
249
struct
BaseClassTrait<SimpleDISCut,1> {
251
typedef
TwoCutBase
NthBase
;
252
};
253
256
template
<>
257
struct
ClassTraits<SimpleDISCut>
258
:
public
ClassTraitsBase<SimpleDISCut> {
260
static
string
className
() {
return
"ThePEG::SimpleDISCut"
; }
264
static
string
library
() {
return
"SimpleDISCut.so"
; }
265
};
266
269
}
270
271
#endif
/* THEPEG_SimpleDISCut_H */
ThePEG::ClassDescription
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data.
Definition:
ClassDescription.h:333
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::Pointer::TransientConstRCPtr
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
Definition:
RCPtr.h:696
ThePEG::Qty< 0, 2, 0 >
ThePEG::SimpleDISCut
SimpleDISCut inherits from TwoCutBase and omplements a simple cut on the a scattered lepton,...
Definition:
SimpleDISCut.h:27
ThePEG::SimpleDISCut::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::SimpleDISCut::minMaxQ2
Energy2 minMaxQ2() const
Helper function used by the interface.
ThePEG::SimpleDISCut::passCuts
virtual bool passCuts(tcCutsPtr parent, tcPDPtr pitype, tcPDPtr pjtype, LorentzMomentum pi, LorentzMomentum pj, bool inci=false, bool incj=false) const
Return true if a pair of particles with type pitype and pjtype and momenta pi and pj respectively pas...
ThePEG::SimpleDISCut::minDeltaR
virtual double minDeltaR(tcPDPtr pi, tcPDPtr pj) const
Return the minimum allowed value of of two outgoing partons of type pi and pj.
ThePEG::SimpleDISCut::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::SimpleDISCut::theMaxy
double theMaxy
The maximum .
Definition:
SimpleDISCut.h:202
ThePEG::SimpleDISCut::describe
virtual void describe() const
Describe the currently active cuts in the log file.
ThePEG::SimpleDISCut::operator=
SimpleDISCut & operator=(const SimpleDISCut &)=delete
The assignment operator is private and must never be called.
ThePEG::SimpleDISCut::minMaxW2
Energy2 minMaxW2() const
Helper function used by the interface.
ThePEG::SimpleDISCut::minSij
virtual Energy2 minSij(tcPDPtr pi, tcPDPtr pj) const
Return the minimum allowed squared invariant mass of two outgoing partons of type pi and pj.
ThePEG::SimpleDISCut::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::SimpleDISCut::maxMinQ2
Energy2 maxMinQ2() const
Helper function used by the interface.
ThePEG::SimpleDISCut::maxMiny
double maxMiny() const
Helper function used by the interface.
ThePEG::SimpleDISCut::maxMinW2
Energy2 maxMinW2() const
Helper function used by the interface.
ThePEG::SimpleDISCut::check
bool check(long idi, long ido) const
Check that the types of the incoming and outgoing particle types matches a DIS event.
ThePEG::SimpleDISCut::chargedCurrent
bool chargedCurrent
If true the cut is applied to charged current events, otherwise it is applied to neutral current even...
Definition:
SimpleDISCut.h:220
ThePEG::SimpleDISCut::initSimpleDISCut
static ClassDescription< SimpleDISCut > initSimpleDISCut
The static object used to initialize the description of this class.
Definition:
SimpleDISCut.h:228
ThePEG::SimpleDISCut::theMiny
double theMiny
The minimum .
Definition:
SimpleDISCut.h:197
ThePEG::SimpleDISCut::minTij
virtual Energy2 minTij(tcPDPtr pi, tcPDPtr po) const
Return the minimum allowed value of the negative of the squared invariant mass of an incoming parton ...
ThePEG::SimpleDISCut::minMaxy
double minMaxy() const
Helper function used by the interface.
ThePEG::SimpleDISCut::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::SimpleDISCut::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::SimpleDISCut::minKTClus
virtual Energy minKTClus(tcPDPtr pi, tcPDPtr pj) const
Return the minimum allowed value of the longitudinally invariant -algorithms distance measure.
ThePEG::SimpleDISCut::theMaxQ2
Energy2 theMaxQ2
The maximum .
Definition:
SimpleDISCut.h:192
ThePEG::SimpleDISCut::SimpleDISCut
SimpleDISCut()
The default constructor.
Definition:
SimpleDISCut.h:34
ThePEG::SimpleDISCut::theMinQ2
Energy2 theMinQ2
The minimum .
Definition:
SimpleDISCut.h:187
ThePEG::SimpleDISCut::theMaxW2
Energy2 theMaxW2
The maximum .
Definition:
SimpleDISCut.h:214
ThePEG::SimpleDISCut::minDurham
virtual double minDurham(tcPDPtr pi, tcPDPtr pj) const
Return the minimum allowed value of the Durham -algorithms distance measure.
ThePEG::SimpleDISCut::theMinW2
Energy2 theMinW2
The minimum .
Definition:
SimpleDISCut.h:209
ThePEG::TwoCutBase
This class corresponds to a kinematical cut to be made on a pair of particles in a hard sub-process.
Definition:
TwoCutBase.h:35
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
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