Numerical Recipes

From Wikipedia, the free encyclopedia

Numerical Recipes is the generic title of an influential series of books on algorithms and numerical analysis, all by William Press, Saul Teukolsky, William Vetterling and Brian Flannery:

Contents

Numerical Recipes in Fortran: The Art of Scientific Computing by William Press, Saul Teukolsky, William Vetterling and Brian Flannery
Numerical Recipes in Fortran: The Art of Scientific Computing by William Press, Saul Teukolsky, William Vetterling and Brian Flannery

The books contain an enormous amount of material on computational methods, and an accompanying disk includes a large amount of computer code and several libraries. The scope is supposed to be "everything up to, but not including, partial differential equations", although the second edition does include a chapter on PDEs that discusses the important concepts in the field and cites the most important papers.

The Numerical Recipes series is notable for its accessibility and generally informal tone. The emphasis is on the understanding of techniques (the authors repeatedly state their suspicion of black-box techniques). They say that the algorithms emphasise clarity and simplicity:[1]

If there is a single dominant theme in this book, it is that practical methods of numerical computation can be simultaneously efficient, clever, and — important — clear. The alternative viewpoint, that efficient computational methods must necessarily be so arcane and complex as to be useful only in "black box" form, we firmly reject.

Some of the topics discussed are: random number generation, sorting, special functions, orthogonal polynomials, optimization techniques, statistical methods, Fourier transforms and wavelet transforms.

The series has attracted a great deal of acclaim and criticism. Acclaim typically focuses on the clear explanations and the wide range of methods presented.

It is inevitable that a book of this scope and importance (the books' sales figures are very high) will attract criticism. The books are especially controversial in the numerical analysis community. Negative criticism has centred on the books' assumed unreliability (the first edition contained some mistakes), the exclusion of some algorithms, the authors' implication that their programs have efficiency and reliability comparable to that of "black-box" libraries (see above), and the fact that the software cannot be freely redistributed in modified (or unmodified) version—it is issued under a non-free licence. A well-known free software library providing many functions similar to those in Numerical Recipes is the GNU Scientific Library.

For example, Whaley et al., 2001, maintain that LAPACK with a highly optimized BLAS library can be an order of magnitude faster than textbook linear-algebra routines such as the Gaussian elimination or LU decomposition code in Numerical Recipes (see e.g. ). (In contrast, the Recipes authors state that the "much of the sophistication of complicated 'linear equation-solving packages' is devoted to the detection and/or correction of [numerical accuracy problems]", although they also mention LAPACK and LINPACK as having "increased efficiency" by minimizing the "number of operations" and "storage" for "very large linear systems".) As another example, Frigo and Johnson (2005) point out that the fast Fourier transform (FFT) code in Numerical Recipes is 3–10 times slower than highly optimized programs on modern computer architectures. (In contrast, the Recipes authors write that tricks such as larger radices for the FFT "can be faster than simpler FFTs by some significant, but not overwhelming, factor, e.g., 20 or 30 percent.")

  1. ^ From the preface to the first edition, which is reprinted in the second edition.

Each book in the Numerical Recipes series communicates much the same information, but focuses on its implementation in a particular computer programming language.

The books, which are published by Cambridge University Press, are now in their second edition, to which this article refers.

  • R. Clint Whaley, Antoine Petitet, and Jack J. Dongarra, "Automated empirical optimization of software and the ATLAS project," Parallel Computing 27, 3-35 (2001).
  • M. Frigo and S. G. Johnson, "The design and implementation of FFTW3," Proc. IEEE 93 (2), 216-231 (2005).

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.