approximate-0.2: Approximate discrete values and numbers

Portabilitynon-portable
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Safe HaskellNone

Data.Approximate.Numerics

Description

These functions provide wildly inaccurate but very fast approximations to common transcendental functions.

The algorithms here are based on Martin Ankerl's optimized pow, http://martin.ankerl.com/2007/10/04/optimized-pow-approximation-for-java-and-c-c/ which is in turn based on http://nic.schraudolph.org/pubs/Schraudolph99.pdf

Synopsis

Documentation

class Floating a => Fast a whereSource

Methods

flog :: a -> aSource

Calculate an approximate log.

flog_lb :: a -> aSource

flog_ub :: a -> aSource

fexp :: a -> aSource

Calculate an approximate exp.

fexp_lb :: a -> aSource

fexp_ub :: a -> aSource

fpow :: a -> a -> aSource

Calculate an approximate pow.

fpow_lb :: a -> a -> aSource

fpow_ub :: a -> a -> aSource

Instances

blog :: Floating a => a -> aSource

Borchardt’s Algorithm from “Dead Reckoning: Calculating without instruments”.

This is a remarkably bad approximate logarithm.

flog had better outperform it! It is provided merely for comparison.