Types in MathNet.Numerics

Type Integrate

Namespace MathNet.Numerics

Public Static Functions

doubleDoubleExponential(Func<double, double> f, double intervalBegin, double intervalEnd, double targetAbsoluteError)

Approximation of the definite integral of an analytic smooth function by double-exponential quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity.
Parameters
`Func<double, double>` f

The analytic smooth function to integrate.

`double` intervalBegin

Where the interval starts.

`double` intervalEnd

Where the interval stops.

`double` targetAbsoluteError

The expected relative accuracy of the approximation.

Return
`double`

Approximation of the finite integral in the given interval.

doubleGaussKronrod(Func<double, double> f, double intervalBegin, double intervalEnd, double targetRelativeError, int maximumDepth, int order)

Approximation of the definite integral of an analytic smooth function by Gauss-Kronrod quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity.
Parameters
`Func<double, double>` f

The analytic smooth function to integrate.

`double` intervalBegin

Where the interval starts.

`double` intervalEnd

Where the interval stops.

`double` targetRelativeError

The expected relative accuracy of the approximation.

`int` maximumDepth

The maximum number of interval splittings permitted before stopping.

`int` order

The number of Gauss-Kronrod points. Pre-computed for 15, 21, 31, 41, 51 and 61 points.

Return
`double`

Approximation of the finite integral in the given interval.

doubleGaussLegendre(Func<double, double> f, double intervalBegin, double intervalEnd, int order)

Approximation of the definite integral of an analytic smooth function by Gauss-Legendre quadrature. When either or both limits are infinite, the integrand is assumed rapidly decayed to zero as x -> infinity.
Parameters
`Func<double, double>` f

The analytic smooth function to integrate.

`double` intervalBegin

Where the interval starts.

`double` intervalEnd

Where the interval stops.

`int` order

Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly.

Return
`double`

Approximation of the finite integral in the given interval.

doubleOnClosedInterval(Func<double, double> f, double intervalBegin, double intervalEnd, double targetAbsoluteError)

Approximation of the definite integral of an analytic smooth function on a closed interval.
Parameters
`Func<double, double>` f

The analytic smooth function to integrate.

`double` intervalBegin

Where the interval starts, inclusive and finite.

`double` intervalEnd

Where the interval stops, inclusive and finite.

`double` targetAbsoluteError

The expected relative accuracy of the approximation.

Return
`double`

Approximation of the finite integral in the given interval.

doubleOnClosedInterval(Func<double, double> f, double intervalBegin, double intervalEnd)

Approximation of the definite integral of an analytic smooth function on a closed interval.
Parameters
`Func<double, double>` f

The analytic smooth function to integrate.

`double` intervalBegin

Where the interval starts, inclusive and finite.

`double` intervalEnd

Where the interval stops, inclusive and finite.

Return
`double`

Approximation of the finite integral in the given interval.

doubleOnRectangle(Func<double, double, double> f, double invervalBeginA, double invervalEndA, double invervalBeginB, double invervalEndB, int order)

Approximates a 2-dimensional definite integral using an Nth order Gauss-Legendre rule over the rectangle [a,b] x [c,d].
Parameters
`Func<double, double, double>` f

The 2-dimensional analytic smooth function to integrate.

`double` invervalBeginA

Where the interval starts for the first (inside) integral, exclusive and finite.

`double` invervalEndA

Where the interval ends for the first (inside) integral, exclusive and finite.

`double` invervalBeginB

Where the interval starts for the second (outside) integral, exclusive and finite.

`double` invervalEndB

Where the interval ends for the second (outside) integral, exclusive and finite.

`int` order

Defines an Nth order Gauss-Legendre rule. The order also defines the number of abscissas and weights for the rule. Precomputed Gauss-Legendre abscissas/weights for orders 2-20, 32, 64, 96, 100, 128, 256, 512, 1024 are used, otherwise they're calculated on the fly.

Return
`double`

Approximation of the finite integral in the given interval.

doubleOnRectangle(Func<double, double, double> f, double invervalBeginA, double invervalEndA, double invervalBeginB, double invervalEndB)

Approximates a 2-dimensional definite integral using an Nth order Gauss-Legendre rule over the rectangle [a,b] x [c,d].
Parameters
`Func<double, double, double>` f

The 2-dimensional analytic smooth function to integrate.

`double` invervalBeginA

Where the interval starts for the first (inside) integral, exclusive and finite.

`double` invervalEndA

Where the interval ends for the first (inside) integral, exclusive and finite.

`double` invervalBeginB

Where the interval starts for the second (outside) integral, exclusive and finite.

`double` invervalEndB

Where the interval ends for the second (outside) integral, exclusive and finite.

Return
`double`

Approximation of the finite integral in the given interval.