naginterfaces.library.quad.dim1_fin_osc_vec¶
- naginterfaces.library.quad.dim1_fin_osc_vec(f, a, b, epsabs, epsrel, key=6, lw=800, liw=None, data=None)[source]¶
dim1_fin_osc_vec
is an adaptive integrator, especially suited to oscillating, nonsingular integrands, which calculates an approximation to the integral of a function over a finite interval :Deprecated since version 27.1.0.0:
dim1_fin_osc_vec
will be removed in naginterfaces 31.3.0.0. Please usedim1_fin_osc_fn()
instead. See also the Replacement Calls document.For full information please refer to the NAG Library document for d01au
https://support.nag.com/numeric/nl/nagdoc_30.3/flhtml/d01/d01auf.html
- Parameters
- fcallable fv = f(x, data=None)
must return the values of the integrand at a set of points.
- Parameters
- xfloat, ndarray, shape
The points at which the integrand must be evaluated.
- dataarbitrary, optional, modifiable in place
User-communication data for callback functions.
- Returns
- fvfloat, array-like, shape
must contain the value of at the point , for .
- afloat
, the lower limit of integration.
- bfloat
, the upper limit of integration. It is not necessary that .
- epsabsfloat
The absolute accuracy required. If is negative, the absolute value is used. See Accuracy.
- epsrelfloat
The relative accuracy required. If is negative, the absolute value is used. See Accuracy.
- keyint, optional
Indicates which integration rule is to be used.
For the Gauss -point and Kronrod -point rule.
For the Gauss -point and Kronrod -point rule.
For the Gauss -point and Kronrod -point rule.
For the Gauss -point and Kronrod -point rule.
For the Gauss -point and Kronrod -point rule.
For the Gauss -point and Kronrod -point rule.
- lwint, optional
The value of (together with that of ) imposes a bound on the number of sub-intervals into which the interval of integration may be divided by the function. The number of sub-intervals cannot exceed . The more difficult the integrand, the larger should be.
- liwNone or int, optional
Note: if this argument is None then a default value will be used, determined as follows: .
The number of sub-intervals into which the interval of integration may be divided cannot exceed .
- dataarbitrary, optional
User-communication data for callback functions.
- Returns
- resultfloat
The approximation to the integral .
- abserrfloat
An estimate of the modulus of the absolute error, which should be an upper bound for .
- wfloat, ndarray, shape
Details of the computation see Further Comments for more information.
- iwint, ndarray, shape
contains the actual number of sub-intervals used. The rest of the array is used as workspace.
- Raises
- NagValueError
- (errno )
On entry, .
Constraint: and .
- (errno )
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: .
- Warns
- NagAlgorithmicWarning
- (errno )
The maximum number of subdivisions () has been reached: , and .
- (errno )
Round-off error prevents the requested tolerance from being achieved: and .
- (errno )
Extremely bad integrand behaviour occurs around the sub-interval .
- Notes
No equivalent traditional C interface for this routine exists in the NAG Library.
dim1_fin_osc_vec
is based on the QUADPACK routine QAG (see Piessens et al. (1983)). It is an adaptive function, offering a choice of six Gauss–Kronrod rules. A global acceptance criterion (as defined by Malcolm and Simpson (1976)) is used. The local error estimation is described in Piessens et al. (1983).Because
dim1_fin_osc_vec
is based on integration rules of high order, it is especially suitable for nonsingular oscillating integrands.dim1_fin_osc_vec
requires a function to evaluate the integrand at an array of different points and is, therefore, amenable to parallel execution. Otherwise this algorithm with is identical to that used bydim1_fin_osc()
.
- References
Malcolm, M A and Simpson, R B, 1976, Local versus global strategies for adaptive quadrature, ACM Trans. Math. Software (1), 129–146
Piessens, R, 1973, An algorithm for automatic integration, Angew. Inf. (15), 399–401
Piessens, R, de Doncker–Kapenga, E, Überhuber, C and Kahaner, D, 1983, QUADPACK, A Subroutine Package for Automatic Integration, Springer–Verlag