APFEL 4.8.0
A PDF evolution library in C++
Loading...
Searching...
No Matches
expression.h
Go to the documentation of this file.
1//
2// APFEL++ 2017
3//
4// Author: Valerio Bertone: valerio.bertone@cern.ch
5//
6
7#pragma once
8
9namespace apfel
10{
17 {
18 public:
19 virtual ~Expression() = default;
20
26
30 Expression(double const& eta = 1);
32
39
43 virtual double Regular(double const&) const { return 0; }
44
49 virtual double Singular(double const&) const { return 0; }
50
55 virtual double Local(double const&) const { return 0; }
56
63 virtual double LocalPP(double const&) const { return 0; }
64
70 virtual double SingularPV(double const&) const { return 0; }
71
77 virtual double LocalPV(double const&) const { return 0; }
79
84 void SetExternalVariable(double const& extvar) const { _extvar = extvar; }
85
90 double eta() const { return _eta; }
91
92 protected:
93 double mutable _extvar;
94 double const _eta;
95 };
96
103
107 class Identity: public Expression
108 {
109 public:
111 double Local(double const&) const { return 1; }
112 };
113
118 class Null: public Expression
119 {
120 public:
122 };
124}
The Expression class encapsulates in a proper form a given analytic expression in such a way that it ...
Definition expression.h:17
virtual double LocalPV(double const &) const
Virtual local term for principal-valued integrals a la DGLAP with singularity in the interval (0,...
Definition expression.h:77
double _extvar
External kinematic variable.
Definition expression.h:93
virtual double Local(double const &) const
Virtual local term.
Definition expression.h:55
virtual double SingularPV(double const &) const
Virtual singular term for principal-valued integrals in the DGLAP region (i.e. with pole in x in the ...
Definition expression.h:70
virtual ~Expression()=default
Expression(double const &eta=1)
The "Expression" constructor.
double eta() const
Function that returns the value of the scaling parameter eta.
Definition expression.h:90
virtual double LocalPP(double const &) const
Virtual local term for principal-valued integrals a la ERBL with singularity at x = 1,...
Definition expression.h:63
virtual double Singular(double const &) const
Virtual singular term.
Definition expression.h:49
double const _eta
Scaling parameter.
Definition expression.h:94
virtual double Regular(double const &) const
Virtual regular term.
Definition expression.h:43
void SetExternalVariable(double const &extvar) const
Function that sets the value of a possible external variable.
Definition expression.h:84
Derived class from Expression to implement the Identity operator (delta function).
Definition expression.h:108
Identity()
Definition expression.h:110
double Local(double const &) const
Virtual local term.
Definition expression.h:111
Derived class from Expression to implement the Null operator (zero).
Definition expression.h:119
Null()
Definition expression.h:121
Namespace for all APFEL++ functions and classes.
Definition alphaqcd.h:14