ThePEG
1.8.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Cuts
SimpleDISCut.h
1
// -*- C++ -*-
2
//
3
// SimpleDISCut.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2011 Leif Lonnblad
5
//
6
// ThePEG is licenced under version 2 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),
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
Energy2
maxMinQ2
()
const
;
156
160
Energy2
minMaxQ2
()
const
;
161
165
Energy2
maxMinW2
()
const
;
166
170
Energy2
minMaxW2
()
const
;
171
172
private
:
173
177
Energy2
theMinQ2
;
178
182
Energy2
theMaxQ2
;
183
187
Energy2
theMinW2
;
188
192
Energy2
theMaxW2
;
193
198
bool
chargedCurrent
;
199
200
private
:
201
206
static
ClassDescription<SimpleDISCut>
initSimpleDISCut
;
207
212
SimpleDISCut
&
operator=
(
const
SimpleDISCut
&);
213
214
};
215
216
}
217
218
#include "ThePEG/Utilities/ClassTraits.h"
219
220
namespace
ThePEG {
221
226
template
<>
227
struct
BaseClassTrait<SimpleDISCut,1> {
229
typedef
TwoCutBase
NthBase
;
230
};
231
234
template
<>
235
struct
ClassTraits<SimpleDISCut>
236
:
public
ClassTraitsBase<SimpleDISCut> {
238
static
string
className
() {
return
"ThePEG::SimpleDISCut"
; }
242
static
string
library
() {
return
"SimpleDISCut.so"
; }
243
};
244
247
}
248
249
#endif
/* THEPEG_SimpleDISCut_H */
Generated on Mon Jul 2 2012 16:06:48 for ThePEG by
1.8.1.1