One DimensionalRomberg Integration
Keywords: one dimensionalromberg integration integrate Romberg syntax description include r f b n p e float example source code

| Prev | Next |  |  |  |  |  |

One DimensionalRomberg Integration
Syntax
`# include <cppad/utility/romberg_one.hpp>
` `r = RombergOne(F, a, b, n, e)`
Description
Returns the Romberg integration estimate r for a one dimensional integral r = ∫ a b F ( x ) d x + O [( b - a ) / 2 n -1 ] 2 ( p + 1 )
Include
The file `cppad/romberg_one.hpp` is included by `cppad/cppad.hpp` but it can also be included separately with out the rest of the `CppAD` routines.
r
The return value `r` has prototype `
Float r
` It is the estimate computed by `RombergOne` for the integral above.
F
The object `F` can be of any type, but it must support the operation `
F(x)
` The argument `x` to `F` has prototype `
const Float &x
` The return value of `F` is a `Float` object (see description of Float below).
a
The argument `a` has prototype `
const Float &a
` It specifies the lower limit for the integration.
b
The argument `b` has prototype `
const Float &b
` It specifies the upper limit for the integration.
n
The argument `n` has prototype `
size_t n
` A total number of 2 n -1 + 1 evaluations of `F(x)` are used to estimate the integral.
p
The argument `p` has prototype `
size_t p
` It must be less than or equal n and determines the accuracy order in the approximation for the integral that is returned by `RombergOne`. To be specific r = ∫ a b F ( x ) d x + O [( b - a ) / 2 n -1 ] 2 ( p + 1 )
e
The argument `e` has prototype `
Float &e
` The input value of `e` does not matter and its output value is an approximation for the error in the integral estimates; i.e., e ≈ |r - ∫ a b F ( x ) d x |
Float
The type `Float` must satisfy the conditions for a NumericType type. The routine CheckNumericType will generate an error message if this is not the case. In addition, if `x` and `y` are `Float` objects, `
x < y
` returns the `bool` value true if `x` is less than `y` and false otherwise.
Example
The file romberg_one.cpp contains an example and test a test of using this routine. It returns true if it succeeds and false otherwise.
Source Code
The source code for this routine is in the file `cppad/romberg_one.hpp`.

Input File: cppad/utility/romberg_one.hpp