Information about Numerical Recipes
Note: This is an obsolete page that applies to the older
Numerical Recipes Second Edition. For more up to date information,
visit our home page and click on the
signposts that say "Links to further information".
General information
Did you already look at "Quick Answers to the Most Common Questions"
on our Home Page?
"Numerical Recipes: The Art of Scientific Computing" is the title of a
series of books developed by Numerical Recipes Software and published by
Cambridge University Press.
"Numerical Recipes" also refers to the copyrighted computer software
that is in those books, and also sold separately, and is the trademark
for that software. "NR" and "nr.com" are also trademarks of Numerical
Recipes software.
The books and software are available in a variety of computer
languages, notably C++, C, and Fortran (77 and 90), but also versions
in other computer languages.
The C++, C, and Fortran versions contain about 350 separate routines for
scientific computing.
These documents give further information:
Licensing and purchasing information
Here's what you need to use Numerical Recipes on your computer:
-
You'll need a copy of the main Numerical Recipes book (in Fortran,
C++, or C) since it functions as the manual and user's guide for the
software. The books are in many libraries and bookstores, or you can
use our links to order them on-line from either
Cambridge University Press
or Amazon.com.
- You'll also need to purchase the software. Although the programs
are printed in the book, the book is intended as a text and reference
book, for reading purposes only. The software is sold separately,
"unbundled" from the book. (This helps us keep down the price of the
book.) You can download and immediately purchase the software
directly from our On-Line Store, or
else purchase a CDROM or diskette
published by Cambridge University.
- When you purchase the software, as above, you get a single-screen
license. This lets you use the Numerical Recipes source code on a
single computer screen (of the type of computer specified by the
product that you buy) for each copy of the software purchased. If you
or your organization want to use the routines on multiple screens, you
can either purchase a multiple-screen license (easily done at the On-Line Store) or else consider the economies
of scale of a site or organizational license.
If you have a question about licensing that is not covered by the
above, nor by the documents linked-to below, write to us
through our web contact page.
These documents give further information:
Information on redistributing Numerical Recipes
We receive a range of requests regarding redistribution permissions,
and we try to apply a consistent and straightforward policy
in answering these requests. Here are the most common cases:
- You want to distribute an executable (.exe) file that has some
Numerical Recipes routines bound inside. The NR routines are not
separable from the executable file, and they are not visible to the
user of the executable as separately invokable entities. (In
particular, your executable is not a wrapper for the NR
routines to be used in a workbench or mix-and-match environment.)
- For noncommercial use, we grant automatic permission for this kind of
redistribution. For commercial use, you must contact us for permission,
which will generally be granted without any fee.
- You want to distribute, noncommercially and free on the
internet, an application that uses NR routines. You need to
distribute source code, so that your application can be recompiled on
different machines. Can you include Numerical Recipes routines as
part of that source code, including a notice that they are only
allowed to be used with your application?
- Sorry, no. We never give permission for Numerical Recipes
source code to be posted on any public server, or distributed with any
freeware or shareware package. If you encounter such a distribution,
we'd be grateful if you'd tell us about it. There are good freely
redistributable numerical libraries on Netlib that can be used, instead of
Numerical Recipes, in such cases. The Numerical Recipes Multi-Language Code CDROM includes the
entire freely redistributable SLATEC library, for this kind of use.
- You want to translate some (or all) the Numerical Recipes
routines to a different computer language, and then redistribute the
resulting translations.
- If you are a licensed NR user, you can make any personal use
you want on a licensed screen, including translating NR to another
computer language. However, you can't redistribute the translations
in any manner, since they are "derivative works" and still subject to
our copyright. If you'd like your translations to be included, with
attribution to you, in the next version of the
Numerical Recipes Multi-Language Code CDROM,
we're usually happy to oblige; but, alas, we are not able to
offer you any financial compensation for this contribution. (The
CDROM now has Modula 2, BASIC, and Lisp versions contributed in this
manner.)
- If you have a question about redistribution that is not answered
by the above three examples, or by the documents linked-to below,
write to us
through our web contact page.
These documents give further information:
NR in Other Computer Languages
C++, C, and Fortran (both 77 and 90) are the supported languages for the
current (Second) edition of Numerical Recipes. However, there are
authorized versions of Numerical Recipes in other languages, generally
based on an earlier edition, that are in widespread use.
The following table shows current availability (insofar as known to us)
and contact information for these products. Follow the links in the table to
further information, including ordering information.