Accuracy and Reliability
in Scientific Computing
The cover figure is discussed on pages 211 - 213,
compare Figures
10.8 and
10.9.
This is a companion website to the book,
which has been published by SIAM
July 2005, in the Software, Environments, and Tools series.
The book can be purchased from
SIAM
and from many internet book shops.
The book is also available as an E-book from SIAM.
A review of the book by David H. Bailey is available.
Almost the full book
is now freely available from Google Books.
The book and this website are produced by the
IFIP WG 2.5 project group 68, consisting of
Ronald Boisvert,
Françoise Chaitin-Chatelin,
Ronald Cools,
Craig Douglas,
Bo Einarsson,
Wayne Enright,
Patrick Gaffney,
Ian Gladwell,
William Gropp,
Hans Petter Langtangen,
Jim Pool,
Siegfried Rump,
Brian Smith,
Van Snyder,
Michael Thuné,
Mladen Vouk,
Wolfgang Walter
(members of WG 2.5),
Kenneth W. Dritz,
Sven Hammarling,
Roldan Pozo,
Elisabeth Traviesas-Cassan,
G. William Walster, and
Brian Wichmann.
It is edited by Bo Einarsson.
Numerical software is central to our computerized society.
It is used to design airplanes and bridges, to operate manufacturing lines,
to control power plants and refineries, to analyze
future options for financial markets,
to determine genomes,
to provide the understanding necessary for the treatment for cancer.
Because of the high stakes involved, it is
essential that the software be accurate,
reliable, and robust.
The objective of this project is to investigate some of the difficulties
related to scientific computing, such as accuracy requirements and rounding,
and to explain how to obtain accurate and reliable results.
We have identified the need for two
types of information:
- How to use existing tools and packages
in an effective way (not only producing reliable answers but also
how users can increase their confidence in the validity of the results).
- How to develop robust and reliable software (that can then
be used effectively by knowledgeable users).
It is essential to understand the potential difficulties that can arise
and affect the accuracy and reliability of scientific computations.
This web site contains additional material to the book.
Contents in HTML.
Preface in PDF and
PostScript.
Errata
BibTeX info
Part I, PITFALLS IN NUMERICAL COMPUTATION
Chapter 1, What Can Go Wrong in Scientific Computing?
by Bo Einarsson, Linköping, Sweden.
Section 1.4, What Really Went Wrong in
Applied Scientific Computing!
Chapter 2, Assessment of Accuracy and Reliability
by Ronald F. Boisvert, Gaithersburg, Maryland,
Ronald Cools, Leuven, Belgium, and
Bo Einarsson, Linköping, Sweden.
Color pictures
Test problems
FLAME:
Formal Linear Algebra Methods Environment
The NIST Reference on Constants, Units, and Uncertainty
Chapter 3, Approximating Integrals, Estimating Errors and Giving the Wrong Solution for a Deceptively Easy Problem
by Ronald Cools, Leuven, Belgium.
Black-and-white and color pictures
A set of Matlab m-files are available
here.
Chapter 4, An Introduction to the Quality of Computed Solutions
by Sven Hammarling, Oxford, England.
A summary of this chapter together with a
link to an alternate version is available.
Black-and-white and color pictures
Addendum
Chapter 5, Qualitative Computing
by Françoise Chaitin-Chatelin, Elisabeth Traviesas-Cassan, Toulouse, France.
Color pictures
Pseudospectra gateway
Part II, DIAGNOSTIC TOOLS
An informal introduction
Chapter 6, PRECISE and the Quality of Reliable Numerical Software
by Françoise Chaitin-Chatelin, Elisabeth Traviesas-Cassan, Toulouse, France.
PRECISE Fortran Toolbox
Chapter 7, Tools for the Verification of Approximate Solutions
by Wayne H. Enright, Toronto, Ontario.
Black-and-white pictures
Black-and-white tables
A link to this chapter is available in
Recent Research publications of Wayne Enright.
Part III, TECHNOLOGY FOR IMPROVING THE ACCURACY AND RELIABILITY
Chapter 8, General methods for implementing reliable and correct software
ACM
Digital Library
ACM
Collected Algorithms
Netlib, a repository of mathematical software, papers, and databases
Scientific Computing in Object-Oriented Languages
Numerical Computing Resources on the Internet
Mathtools, Link Exchange for the Technical Computing Community
Some Remarks about Random Testing
Ada, by Brian Wichmann, Woking, England, and
Kenneth W. Dritz, Argonne, Illinois.
Ada Home: The Web Site for Ada
C, by Craig C. Douglas, Lexington, Kentucky, and
Hans Petter Langtangen, Oslo, Norway.
C Developer Resources
C++, by Craig C. Douglas, Lexington, Kentucky, and
Hans Petter Langtangen, Oslo, Norway.
C++ Threads Web Site
Newmat C++ Matrix Library
TNT, Template Numerical Toolkit
Code Cogs, A New Open Source Scientific Library / Database in C++
Fortran, by Van Snyder, Pasadena, California.
The official home of Fortran Standards
Fortran Standard links
Some Fortran links not
in the book
Java, by Ronald F. Boisvert and Roldan Pozo,
Gaithersburg, Maryland.
Color pictures
Java Grande Forum
Java Grande Forum Numerics Working Group
FindBugs - A Bug Pattern Detector for Java
Python, by Craig C. Douglas, Lexington, Kentucky, and
Hans Petter Langtangen, Oslo, Norway.
Python
Numerical Python
Scientific tools for Python
Python Scripting
for Computational Science
Fortran to Python Interface Generator
SWIG for mixed Python-C/C++ code
Chapter 9, The Use and Implementation of Interval Data Types
by G. William Walster, Mountain View, California.
Fortran Code Example,
from section 9.5, pp. 191-193
Interval Computations website
MuPAD
Maplesoft
Sun Fortran 95 Interval Arithmetic Programming Reference
Sun C++ Interval Arithmetic Programming Reference
Intel Math Kernel Library
Proposal to Add Interval Arithmetic to the C++ Standard Library.
Introduction to Interval Analysis, book 2009 by
Ramon E. Moore, R. Baker Kearfott, and Michael J. Cloud
Chapter 10, Computer-Assisted Proofs and Self-Validating Methods
by Siegfrid M. Rump, Hamburg, Germany.
A
link to this chapter is available in
Publications - Siegfried M. Rump
Color pictures
INTLAB Announcement
INTLAB - INTerval LABoratory
Mersenne primes
GIMPS The Great
Internet Mersenne Prime Search
Chapter 11, Hardware Assisted Algorithms
by Craig C. Douglas, Lexington, Kentucky, and
Hans Petter Langtangen, Oslo, Norway.
Pictures
Valgrind, a system for debugging and profiling x86-Linux programs
PAPI Performance Application Programming Interface
HPCToolkit
Chapter 12, Accurate and Reliable Use of Parallel Computing
by William D. Gropp, Argonne, Illinois.
Black-and-white picture
Open Grid Forum
Chapter 13, Software Reliability Engineering of Numerical Systems
by Mladen A. Vouk, Raleigh, North Carolina.
Black-and-white and color pictures
Suggestions are most
welcome to bo.einarsson@liu.se.
IFIP WG 2.5 Project 68 on "Accuracy and Reliability
in Scientific Computing".
Last modified: December 2, 2018
This website is sponsored by the National Supercomputer Centre in Linköping, Sweden.
bo.g.einarsson@gmail.com