polynomials-bernstein-1.1.2: A solver for systems of polynomial equations in bernstein form

Safe HaskellNone
LanguageHaskell98

Algebra.Polynomials.Numerical

Contents

Description

This module contains the definition of the main arithmetic tools used in Metafont'.

Synopsis

Raw operations

fromIntegral# :: Integral x => x -> (#Double, Double#) #

Converts an Integral value into an interval.

plus :: Double -> Double -> Double -> Double -> (#Double, Double#) #

Interval addition

minus :: Double -> Double -> Double -> Double -> (#Double, Double#) #

Interval substraction

over :: Double -> Double -> Double -> Double -> (#Double, Double#) #

Interval division

times :: Double -> Double -> Double -> Double -> (#Double, Double#) #

Interval multiplication

cos# :: Double -> Double -> (#Double, Double#) #

Interval cosine

sin# :: Double -> Double -> (#Double, Double#) #

Interval sine

The Interval type

data Interval #

The interval type (most of its operations are calls to the raw functions)

Constructors

Interval 

Fields

Instances

Eq Interval # 
Floating Interval # 
Fractional Interval # 
Num Interval # 
Show Interval # 
Unbox Interval # 
Vector Vector Interval # 
MVector MVector Interval # 
data Vector Interval # 
data MVector s Interval # 

class Intervalize a where #

Two common operations on types defined with intervals.

Minimal complete definition

intervalize, intersects

interval :: Double -> Interval #

Converts an optimal IEEE-754 representation of a number into an optimal interval containing this number.

intersectsd :: Interval -> Interval -> Bool #

Intersection of two Intervals.

union :: Interval -> Interval -> Interval #

Union of two intersecting intervals (undefined behaviour if they do not intersect).