thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
PDF
WeizsackerWilliamsPDF.h
1
// -*- C++ -*-
2
#ifndef THEPEG_WeizsackerWilliamsPDF_H
3
#define THEPEG_WeizsackerWilliamsPDF_H
4
//
5
// This is the declaration of the WeizsackerWilliamsPDF class.
6
//
7
8
#include "ThePEG/PDF/PDFBase.h"
9
10
namespace
ThePEG
{
11
12
using namespace
ThePEG
;
13
20
class
WeizsackerWilliamsPDF
:
public
PDFBase
{
21
22
public
:
23
27
WeizsackerWilliamsPDF
();
28
35
virtual
bool
canHandleParticle
(
tcPDPtr
particle)
const
;
36
41
virtual
cPDVector
partons
(
tcPDPtr
particle)
const
;
42
49
virtual
double
xfl
(
tcPDPtr
particle,
tcPDPtr
parton,
Energy2
partonScale,
50
double
l,
Energy2
particleScale =
ZERO
)
const
;
51
60
virtual
double
xfvl
(
tcPDPtr
particle,
tcPDPtr
parton,
Energy2
partonScale,
61
double
l,
Energy2
particleScale =
ZERO
)
const
;
62
75
virtual
double
flattenScale
(
tcPDPtr
particle,
tcPDPtr
parton,
76
const
PDFCuts
& cut,
double
l,
double
z,
77
double
& jacobian)
const
;
78
89
virtual
double
flattenL
(
tcPDPtr
particle,
tcPDPtr
parton,
const
PDFCuts
&cut,
90
double
z,
double
& jacobian)
const
;
92
93
public
:
94
101
void
persistentOutput
(
PersistentOStream
& os)
const
;
102
108
void
persistentInput
(
PersistentIStream
& is,
int
version);
110
117
static
void
Init
();
118
119
protected
:
120
127
virtual
IBPtr
clone
()
const
{
return
new_ptr
(*
this
);}
128
133
virtual
IBPtr
fullclone
()
const
{
return
new_ptr
(*
this
);}
135
136
private
:
137
142
static
ClassDescription<WeizsackerWilliamsPDF>
initWeizsackerWilliamsPDF
;
143
148
WeizsackerWilliamsPDF
&
operator=
(
const
WeizsackerWilliamsPDF
&) =
delete
;
149
150
private
:
151
155
Energy2
_q2min
;
156
160
Energy2
_q2max
;
161
165
double
_a
;
166
};
167
168
}
169
170
#include "ThePEG/Utilities/ClassTraits.h"
171
172
namespace
ThePEG
{
173
178
template
<>
179
struct
BaseClassTrait
<
WeizsackerWilliamsPDF
,1> {
181
typedef
PDFBase
NthBase
;
182
};
183
186
template
<>
187
struct
ClassTraits
<
WeizsackerWilliamsPDF
>
188
:
public
ClassTraitsBase
<WeizsackerWilliamsPDF> {
190
static
string
className
() {
return
"ThePEG::WeizsackerWilliamsPDF"
; }
198
static
string
library
() {
return
"WeizsackerWilliamsPDF.so"
; }
199
};
200
203
}
204
205
#endif
/* THEPEG_WeizsackerWilliamsPDF_H */
ThePEG::ClassDescription
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data.
Definition:
ClassDescription.h:333
ThePEG::PDFBase
PDFBase is the base class for implementing parton density functions for particles with sub-structure.
Definition:
PDFBase.h:40
ThePEG::PDFCuts
The PDFCuts class is used to specify cuts on scale and momentum fractions for which a PDFBase object ...
Definition:
PDFCuts.h:27
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::WeizsackerWilliamsPDF
Here is the documentation of the WeizsackerWilliamsPDF class.
Definition:
WeizsackerWilliamsPDF.h:20
ThePEG::WeizsackerWilliamsPDF::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition:
WeizsackerWilliamsPDF.h:133
ThePEG::WeizsackerWilliamsPDF::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::WeizsackerWilliamsPDF::_a
double _a
Parameter for the jacobian mapping of .
Definition:
WeizsackerWilliamsPDF.h:165
ThePEG::WeizsackerWilliamsPDF::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Definition:
WeizsackerWilliamsPDF.h:127
ThePEG::WeizsackerWilliamsPDF::xfvl
virtual double xfvl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale, double l, Energy2 particleScale=ZERO) const
The valence density.
ThePEG::WeizsackerWilliamsPDF::_q2max
Energy2 _q2max
Maximum for the photon.
Definition:
WeizsackerWilliamsPDF.h:160
ThePEG::WeizsackerWilliamsPDF::flattenScale
virtual double flattenScale(tcPDPtr particle, tcPDPtr parton, const PDFCuts &cut, double l, double z, double &jacobian) const
Generate scale (as a fraction of the maximum scale).
ThePEG::WeizsackerWilliamsPDF::WeizsackerWilliamsPDF
WeizsackerWilliamsPDF()
Default constructor.
ThePEG::WeizsackerWilliamsPDF::partons
virtual cPDVector partons(tcPDPtr particle) const
Return the partons which this PDF may extract from the given particle.
ThePEG::WeizsackerWilliamsPDF::flattenL
virtual double flattenL(tcPDPtr particle, tcPDPtr parton, const PDFCuts &cut, double z, double &jacobian) const
Generate a momentum fraction.
ThePEG::WeizsackerWilliamsPDF::_q2min
Energy2 _q2min
Minimum for the photon.
Definition:
WeizsackerWilliamsPDF.h:155
ThePEG::WeizsackerWilliamsPDF::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::WeizsackerWilliamsPDF::initWeizsackerWilliamsPDF
static ClassDescription< WeizsackerWilliamsPDF > initWeizsackerWilliamsPDF
The static object used to initialize the description of this class.
Definition:
WeizsackerWilliamsPDF.h:142
ThePEG::WeizsackerWilliamsPDF::canHandleParticle
virtual bool canHandleParticle(tcPDPtr particle) const
Return true if this PDF can handle the extraction of partons from the given particle.
ThePEG::WeizsackerWilliamsPDF::xfl
virtual double xfl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale, double l, Energy2 particleScale=ZERO) const
The density.
ThePEG::WeizsackerWilliamsPDF::operator=
WeizsackerWilliamsPDF & operator=(const WeizsackerWilliamsPDF &)=delete
The assignment operator is private and must never be called.
ThePEG::WeizsackerWilliamsPDF::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::Pointer::new_ptr
Ptr< T >::pointer new_ptr()
Simple interface to the PtrTraits<Ptr>::create()
Definition:
PtrTraits.h:195
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::ZERO
constexpr ZeroUnit ZERO
ZERO can be used as zero for any unitful quantity.
Definition:
PhysicalQty.h:35
ThePEG::cPDVector
vector< cPDPtr > cPDVector
A vector of pointers to const ParticleData objects.
Definition:
Containers.h:36
ThePEG::BaseClassTrait
BaseClassTraits describes the base classes of the templated class.
Definition:
ClassTraits.h:156
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
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
Definition:
ClassTraits.h:52
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
ThePEG::ClassTraits
The default concrete implementation of ClassTraitsBase.
Definition:
ClassTraits.h:134
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6