IT++
4.3.1
Toggle main menu visibility
itpp
base
math
integration.cpp
Go to the documentation of this file.
1
28
29
#include <
itpp/base/math/integration.h
>
30
32
namespace
itpp
33
{
34
35
//wrapper to convert double(*f)(double) to function object
36
class
Integrand_Wrapper
37
{
38
typedef
double(*Ftn)(double);
39
Ftn _f;
40
public
:
41
explicit
Integrand_Wrapper(Ftn f): _f(f) {}
42
double
operator()(
double
x)
const
{
return
_f(x);}
43
};
44
45
46
template
double
quad
(Integrand_Wrapper,
double
,
double
,
double
);
47
template
double
quadl
(Integrand_Wrapper,
double
,
double
,
double
);
48
49
//--------------------- quad() ----------------------------------------
50
double
quad
(
double
(*f)(
double
),
double
a,
double
b,
51
double
tol)
52
{
53
return
quad
(Integrand_Wrapper(f), a, b, tol);
54
}
55
56
//--------------------- quadl() ----------------------------------------
57
double
quadl
(
double
(*f)(
double
),
double
a,
double
b,
double
tol)
58
{
59
return
quadl
(Integrand_Wrapper(f), a, b, tol);
60
}
61
62
63
}
// namespace itpp
64
66
67
integration.h
Definition of numerical integration.
itpp
itpp namespace
Definition
itmex.h:37
itpp::quadl
double quadl(Ftn f, double a, double b, double tol=std::numeric_limits< double >::epsilon())
Definition
integration.h:264
itpp::quad
double quad(Ftn f, double a, double b, double tol=std::numeric_limits< double >::epsilon())
Definition
integration.h:162
Generated by
1.17.0