CLHEP
2.4.7.1
C++ Class Library for High Energy Physics
CLHEP
GenericFunctions
FunctionConvolution.hh
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id: FunctionConvolution.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3
//------------------------------FunctionConvolution-------------------------//
4
// //
5
// FunctionConvolution: output of the Convolve[f,g] operation //
6
// //
7
// Petar Maksimovic, Joe Boudreau, November 1999 //
8
// //
9
// Warning! This is not a very good convolution algorithm! Does anybody //
10
// out there really know how to perform a reasonable numerical convolution //
11
// ? Wanna help the Generic Functions Project? //
12
// //
13
//--------------------------------------------------------------------------//
14
15
#ifndef FunctionConvolution_h
16
#define FunctionConvolution_h 1
17
#include "
CLHEP/GenericFunctions/AbsFunction.hh
"
18
19
namespace
Genfun
{
20
25
class
FunctionConvolution
:
public
AbsFunction
{
26
27
FUNCTION_OBJECT_DEF
(
FunctionConvolution
)
28
29
public
:
30
31
// Constructor
32
FunctionConvolution
(
const
AbsFunction
*
arg1
,
const
AbsFunction
*
arg2
,
double
x0,
double
x1);
33
34
// Copy Constructor
35
FunctionConvolution
(
const
FunctionConvolution
&
right
);
36
37
// Destructor
38
virtual
~FunctionConvolution
();
39
40
// Retrieve function value
41
virtual
double
operator ()
(
double
argument
)
const override
;
42
virtual
double
operator ()
(
const
Argument
&
argument
)
const override
{
return
operator()
(
argument
[0]);}
43
44
private
:
45
46
// It is illegal to assign a convolution
47
const
FunctionConvolution
& operator=(
const
FunctionConvolution
&
right
);
48
49
// Input functions to convolution
50
const
AbsFunction
*_arg1;
51
const
AbsFunction
*_arg2;
52
double
_x0;
53
double
_x1;
54
55
};
56
}
// namespace Genfun
57
#endif
AbsFunction.hh
FUNCTION_OBJECT_DEF
#define FUNCTION_OBJECT_DEF(classname)
Definition
AbsFunction.hh:143
Genfun::AbsFunction
Definition
AbsFunction.hh:48
Genfun::Argument
Definition
Argument.hh:17
Genfun::DoubleParamToArgAdaptor
Definition
DoubleParamToArgAdaptor.hh:37
Genfun::FunctionConvolution
Definition
FunctionConvolution.hh:25
Genfun::FunctionConvolution::FunctionConvolution
FunctionConvolution(const FunctionConvolution &right)
Genfun::FunctionConvolution::~FunctionConvolution
virtual ~FunctionConvolution()
Genfun::FunctionConvolution::operator()
virtual double operator()(double argument) const override
Genfun::FunctionConvolution::FunctionConvolution
FunctionConvolution(const AbsFunction *arg1, const AbsFunction *arg2, double x0, double x1)
Genfun
Definition
Abs.hh:14
Generated by
1.10.0