IT++ Logo

Numerical Integration
[Basic and Miscellaneous Math Functions]


Detailed Description

Numerical integration routines.


Functions

double itpp::quad (double(*f)(double), double a, double b, double tol)
double itpp::quadl (double(*f)(double), double a, double b, double tol)


Function Documentation

double itpp::quad ( double(*)(double)  f,
double  a,
double  b,
double  tol = std::numeric_limits< double >::epsilon() 
)

1-dimensional numerical Simpson quadrature integration

Calculate the 1-dimensional integral

\[ \int_a^b f(x) dx \]

Uses an adaptive Simpson quadrature method. See [Gander] for more details. The integrand is specified as a function

 double
    f(double) 
.

Example:

    #include "itpp/itbase.h"

    double f(const double x)
    {
      return x*log(x);
    }

    int main()
    {
      double res = quad( f, 1.5, 3.5);
      cout << "res = " << res << endl;

      return 0;
    }

References:

[Gander] Gander, W. and W. Gautschi, "Adaptive Quadrature - Revisited", BIT, Vol. 40, 2000, pp. 84-101. This document is also available at http://www.inf.ethz.ch/personal/gander.

Definition at line 68 of file integration.cpp.

References itpp::sum().

double itpp::quadl ( double(*)(double)  f,
double  a,
double  b,
double  tol = std::numeric_limits< double >::epsilon() 
)

1-dimensional numerical adaptive Lobatto quadrature integration

Calculate the 1-dimensional integral

\[ \int_a^b f(x) dx \]

Uses an adaptive Lobatto quadrature method. See [Gander] for more details. The integrand is specified as a function

 double
    f(double) 
.

Example:

    #include "itpp/itbase.h"

    double f(const double x)
    {
      return x*log(x);
    }

    int main()
    {
      double res = quadl( f, 1.5, 3.5);
      cout << "res = " << res << endl;

      return 0;
    }

References:

[Gander] Gander, W. and W. Gautschi, "Adaptive Quadrature - Revisited", BIT, Vol. 40, 2000, pp. 84-101. This document is also available at http:// www.inf.ethz.ch/personal/gander.

Definition at line 125 of file integration.cpp.

References std::abs(), itpp::sign(), and itpp::sqrt().

SourceForge Logo

Generated on Sun Sep 14 18:52:29 2008 for IT++ by Doxygen 1.5.6