Necessary Permissions for Redistributing Numerical Recipes
(Revised September 17, 2005)
We have several levels of permissions. The simplest is if you are
simply using individual Recipes bound into independently executable
software that you develop, and not separable from that software by a
user. In such cases the user must not be able to use a Recipe as part
of a program library or as a separately invokable entity in a
"mix-and-match" workbench, indeed will normally not be aware that they
are being used in the program.
- For noncommercial or personal use, there is no fee for this
level of permission, nor is any advance permission required.
- For commercial use, we require that you provide us with advance
written notification, including a description of the nature of your
use, and that the executable software contain an appropriate
embedded copyright notice (see below for wording). The notice
need not, and should not, be displayed to the user. (Your Numerical
Recipes license contains the complete terms.)
More complex levels of permission are not necessarily available
under all circumstances, but they can frequently be obtained, for
specialized OEM products, on a case by case basis.
The first higher level of permission is if you want to make available
to your users a subset of Recipes in object, or individually callable,
form, but not including source code. We consider such requests on a
case-by-case basis, with permission more likely when they are for
fewer than 20 Recipes used in this manner.
- In most cases of
specialized software, we charge only a nominal flat fee per Recipe for
each use (unlimited number of copies).
- The copyright notice is required, as above, and we also request
that the printed manual contain words to the effect "the procedures
[your procedure identifiers] are based on routines in Numerical
Recipes: The Art of Scientific Computing, published by Cambridge
University Press, and are used by permission."
Finally, there is the case where our source code, or source code based
in copyright on our code, is to be made available to users. We
consider these requests on a case-by-case basis, but the success
rate of these requests is not high.
- In general, we will not license the use of more than 20 Recipes in
this manner for a fixed fee.
- Note that permission to redistribute will not, in any case,
include permission to put any Numerical Recipes source code on
computer bulletin boards, ftp areas, Web pages, or other publicly
accessible archives.
- If permission is
given, you will need to include a notice similar to the sample below
as a comment in each routine that is based on a Numerical Recipes
routine.
- Proposals to translate substantial numbers of the Numerical
Recipes into other computer languages, or embed them in language-like
software, workbenches or spreadsheets, are negotiated on an individual
basis.
A special case is that we allow, without fee, reproduction of up to
five Recipes in any textbook, in printed form only, provided that
advance permission is obtained, and that the appropriate copyright
notice and permission acknowledgment (similar to the sample below) is
included.
At any permission level, if you use the Numerical Recipes in software
of your own, you are bound by the Disclaimer of Warranty that we
distribute with all forms of our software, including its specific
disclaimer of merchantability or fitness for any purpose.
In addition, permissions for the use of Numerical Recipes software routines
in your distributed software are contingent upon your agreement
that no joint venture, partnership, employment, or agency
relationship exists between you and Numerical Recipes Software,
Cambridge University Press, or the authors of "Numerical Recipes"
as a result of your use of the software; and your agreement to hold
harmless and indemnify Numerical Recipes Software, Cambridge
University Press, and the authors of "Numerical Recipes" against
any claim by a user of your product that such a business
relationship exists.
EXACT WORDING OF REQUIRED COPYRIGHT NOTICES:
First Edition FORTRAN:
"Copyright (C) 1986 Numerical Recipes Software"
First Edition C:
"Copyright (C) 1987, 1988 Numerical Recipes Software"
Second Edition FORTRAN:
"Copyright (C) 1986, 1992 Numerical Recipes Software"
Second Edition C:
"Copyright (C) 1987-1992 Numerical Recipes Software"
SAMPLE WORDING FOR PERMISSIONS ACKNOWLEDGMENT (applies only where
sourced code permission has been explicitly granted; typically this
wording will appear as a comment in the source code text):
This routine, NAME OF YOUR ROUTINE, is based on the routine(s) NAME
OF NR ROUTINE(S) from the book Numerical Recipes in C/FORTRAN CHOOSE
ONE (Cambridge University Press), Copyright (C) DATES FROM ABOVE
LIST by Numerical Recipes Software. Used by permission. Use of this
routine other than as an integral part of NAME OR DESCRIPTION OF
YOUR TOP LEVEL PROGRAM requires an additional license from Numerical
Recipes Software. Further distribution in any form is prohibited.
WHERE TO WRITE FOR PERMISSIONS:
Numerical Recipes Software
P.O. Box 380243
Cambridge, MA 02238-0243
FAX: 781-863-1739
Email: contact us
through our web contact page.