Access Keys:
Skip to content (Access Key - 0)

How to access the Numerical Recipes library

Context

The numerical subroutines from the book "Numerical Recipes" by William Press, et al. are installed on Athena. There are approximately 200 routines, which cover a large range of subjects. The source code for the routines are available, and the book documents and explains the mathematics behind the routines.

Steps

Both C and Fortran versions are available in the "recipes" locker. The source code is in the directory /mit/recipes/src

To use the libraries from your C program, you'd type:

	attach recipes
	cc filename `athdir /mit/recipes lib`

To use the libraries from your Fortran program, you'd type:

	attach recipes
	add -f gnu
	g77 -o file file.f -L`athdir /mit/recipes lib` -lrecipes_f	

The layout of the recipes locker is as follows:
The src directory has 2 subdirectories, one for C and one for fortran:
src/recipes_c-ansi : The Ansi-C version
src/recipes_c-kr : The K&R C version
src/recipes_f : The fortran version

Each of these subdirectories contain the source for Numerical Recipes and the source for the demo/example programs.

  • The NR sources are in
    src/recipes_{c,f}/recipes
  • The demo/example sources are in
    src/recipes_{c,f}/demo/src

Due to a conflict with libm.a, there were 2 changes made in the Numerical Recipes "C" sources:

  1. erf has been renamed erf_nr
  2. erfc has been renamed erfc_nr

IS&T Contributions

Documentation and information provided by IS&T staff members


Last Modified:

April 20, 2011

Get Help

Request help
from the Help Desk
Report a security incident
to the Security Team
Labels:
olc-fortran olc-fortran Delete
fortran fortran Delete
numerical numerical Delete
recipe recipe Delete
library library Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
Feedback
This product/service is:
Easy to use
Average
Difficult to use

This article is:
Helpful
Inaccurate
Obsolete
Adaptavist Theme Builder (4.2.3) Powered by Atlassian Confluence 3.5.13, the Enterprise Wiki