The GaussQuadIntegration package
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).
Properties
| Version | 0.1 |
|---|---|
| Dependencies | base (≥3 & <6) |
| License | BSD3 |
| Author | Grigory Sarnitsky <sargrigory@ya.ru> |
| Maintainer | Grigory Sarnitsky <sargrigory@ya.ru> |
| Stability | Experimental |
| Category | Math |
| Upload date | Thu Sep 15 14:57:26 UTC 2011 |
| Uploaded by | GrigorySarnitsky |
| Built on | ghc-7.2 |
Modules
Downloads
- GaussQuadIntegration-0.1.tar.gz (Cabal source package)
- package description (included in the package)