Last update: October 2006
Optimized only for Firefox 3 on CRT!
Simple Error Arithmetic in f95
Bugs and problems
Problems with the algorithm
See the theory page for theoretical limitations.
Package limitations
- The Best Scalar Approximant (BSA) calculations are
wrong, at least when implementing non-monotonic
functions. What about multiplication?
- Since elemental functions can't stop the program or
call a procedure that stops it, exception handling
is now horrible. Hope to fix it soon.
- The package was tested only with the Sun Fortran 95
compiler, actually:
Sun WorkShop 6 update 2 Fortran 95 6.2 2001/05/15
it may have problems with other compilers.
Please report problems to the email address revealed
with "make note".
It seems this ancient compiler doesn't support
creating mod files in another dir (the -moddir=path
option). Copying the mods to another directory and
using the -Mpath to tell the compiler where they are
will cause a warning when compiling.
- We don't do proper outbound rounding -
An error analysis package should also take account of
floating point rounding errors. The best way is to use
interval arithmetic and switch the CPU rounding mode
up to compute upper bounds and down for lower bounds.
In SEA we replace interval endpoints by the nearest
outbound real numbers. This is a poor replacement as
the actual rounding error may be larger (or smaller).
There are software tricks to limit the rounding error
and hopefully they will be implemented in the future.
- Only the most important overloadings were implemented.
Operations involving integers or default real numbers
(except with assignments) and some intrinsic functions
are not supported, on purpose. Having to write explicit
type constructors for integer and reals is actually a
good feature.
- Checking input variables is not complete yet, so bad
input may produce inaccurate results. Input checking
is now being implemented.
- The IO library have now only one input buffer so you
can read only one input file.
- No attempt was made to code for efficiency and speed
was willingly sacrificed for clarity/elegance.