Changes

Jump to navigation Jump to search

Interval package

257 bytes removed, 04:23, 11 January 2015
Added library dependency for GNU MPFR
The [https://sourceforge.net/p/octave/interval/ interval package] provides data types and fundamental operations for real valued interval arithmetic based on the common floating-point format “binary64” a. k. a. double-precision. It aims to be standard compliant with the (upcoming) [http://standards.ieee.org/develop/project/1788.html IEEE 1788] and therefore implements the ''set-based'' interval arithmetic flavor. '''Interval arithmetic''' produces mathematically proven numerical results.
Warning: The package has not yet been released. If you want to experience the development version, you may (1) install the (currently deprecated) [http://octave.sourceforge.net/fenv/ fenv package], (2) download a [https://sourceforge.net/p/octave/interval/ci/default/tarball snapshot version of the interval package], (3) install the [http://www.mpfr.org/mpfr-current/#download development library of MPFR] for your system, (4) execute <code>make install</code> in the <code>src/</code> subfolder, (5) navigate to the <code>inst/</code> subfolder and run octave.
== Motivation ==
== What to expect ==
The interval arithmetic provided by this interval package is '''slow''' and several functions compute valid enclosures of exact results, but are '''not accurate'''.
''Why is the interval package slow?''
Great algorithms and optimizations exist for matrix arithmetic in GNU octave. Good interval versions of these still have to be found and implemented.
''Why is the interval package not accurate?''Some basic operations are provided by the C library with best possible accuracydirected rounding and correctly rounded result: plus, i. e.minus, tightest results. Some arithmetic functions are not. Againdivision, this is because interval operations are based on C99 floating-point routinesmultiplication and square root. The latter These are not guaranteed used to be accurate and their results can depend on hardware, system libraries and compilation options. [http://www.gnu.org/software/libc/manual/html_node/Errors-in-Math-Functionsbuild the most basic interval functions.html#Errors-in-Math-Functions]
The most complete and conservative information All other GNU Octave arithmetic functions are not guaranteed to produce accurate results, because they are based on worst-case error boundaries of C99 floating-point routines has been found in a [http://www.lehmangnu.cunyorg/software/libc/manual/html_node/Errors-in-Math-Functions.edu/cgihtml#Errors-in-bin/manMath-cgi?libm+3 man page for a C99 implementation Functions]. Their results depend on SunOS] hardware, system libraries and is assumed to hold for all systems where the compilation options. The interval package is used. Worst-case error estimations are added to handles these functions with the results help of several interval arithmetic operations, which decreases their accuracy but tries to make the results contain the correct answer. Possibly, the accuracy is going to be improved in a future release with the [http://sourceforgewww.netmpfr.org/p/octave/multi-precision/ multi-precision packageGNU MPFR library] or a similar approach. With MPFR it is possible to compute valid and tight enclosure of the correct results.
== Quick start introduction ==
240

edits

Navigation menu