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