GaussQuadIntegration: Non-adaptive Gaussian quadrature for numeric integraton

[ bsd3, library, math ] [ Propose Tags ] [ Report a vulnerability ]

This package provides means for numeric integration with a Gaussian quadrature. Precisely, it incorporates non-adaptive approximation for definite integrals using 128-, 256-, 512- and 1024-point Gaussian quadrature rule. For example, to find the approximation of an integral with a 256-point rule:

╭ a
│   f(x) dx = nIntegrate256 f a b
╯ b
> nIntegrate256 (\x -> x^999) 0 1
9.999999999999887e-4

The type of a function here is not confined only by Double -> Double, indeed one can use any instance of Fractional:

> nIntegrate256 (\x -> x^999 :: Fixed Prec50) 0 1
0.00100000000000000000000000000000000000000000000009

128 and 256 rules are given with the accuracy of 50 digits, 512 --- with 35 digits (roughly quad), all of them were computed by myself. 1024-point rule was taken from the Gauss-Legendre Quadrature C/C++ library by Pavel Holoborodko (http://www.holoborodko.com/pavel/numerical-methods/numerical-integration/) and goes with the accuracy of 25 decimal digits (fixed point).

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1
Dependencies base (>=3 && <6) [details]
License BSD-3-Clause
Author Grigory Sarnitsky <sargrigory@ya.ru>
Maintainer Grigory Sarnitsky <sargrigory@ya.ru>
Category Math
Uploaded by GrigorySarnitsky at 2011-09-15T14:57:26Z
Distributions NixOS:0.1
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 1583 total (6 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]