statistics-0.10.2.0: A library of statistical types, data, and functions

Portability | portable
Stability | experimental
Maintainer | bos@serpentine.com
Safe Haskell | None

Statistics.Math.RootFinding

Contents

- References

Description

Haskell functions for finding the roots of mathematical functions.

Synopsis

- data Root a
  - = NotBracketed
  - | SearchFailed
  - | Root a
- fromRoot :: a -> Root a -> a
- ridders :: Double -> (Double, Double) -> (Double -> Double) -> Root Double

# Documentation

data Root a

The result of searching for a root of a mathematical function.

Constructors

NotBracketed | The function does not have opposite signs when evaluated at the lower and upper bounds of the search.
SearchFailed | The search failed to converge to within the given error tolerance after the given number of iterations.
Root a | A root was successfully found.

Instances

Monad Root |
Functor Root |
Typeable1 Root |
MonadPlus Root |
Applicative Root |
Alternative Root |
Eq a => Eq (Root a) |
Read a => Read (Root a) |
Show a => Show (Root a) |

fromRoot

Arguments

:: a | Default value.
-> Root a | Result of search for a root.
-> a |

Returns either the result of a search for a root, or the default value if the search failed.

ridders

Arguments

:: Double | Absolute error tolerance.
-> (Double, Double) | Lower and upper bounds for the search.
-> (Double -> Double) | Function to find the roots of.
-> Root Double |

Use the method of Ridders to compute a root of a function.

The function must have opposite signs when evaluated at the lower and upper bounds of the search (i.e. the root must be bracketed).

# References

- Ridders, C.F.J. (1979) A new algorithm for computing a single root of a real continuous function. IEEE Transactions on Circuits and Systems 26:979–980.