Matlab Information
We will use Matlab for most of the computing that we do in this course.
Matlab is by far the best environment for experimentation in numerical
computing. Although by itself it is not the most efficient choice
for large-scale computing, it can be used to call compiled C and Fortran
routines and experiment with the results. Matlab is a product of
The Mathworks
You can order your own copy of
Matlab for $99 (students only)
or you can use Matlab on the Courant Sparcstation network (dial in from
home using a PPP connection.)
Try out
A Free Matlab Online Tutorial or
Another Tuturial
or look for others by a web
search.
Local Matlab Documentation
An outdated but still useful
Introductory Matlab Primer (3rd and last edition, postscript file)
There are many books on Matlab, but probably the best is the brand new
Matlab Guide, by Higham and Higham
C Information
C is the lingua franca of computing.
You will learn how to call the BLAS from C and how to call
C routines from Matlab using the MEX interface.
Even if you are not a C programmer,
this is a good time to learn a little C.
a HREF="programs/info.html"> More information.
Fortran Information
Fortran is traditionally the language of numerical computing and is no
longer the dinosaur it used to be. It's still widely used in scientific
applications. Fortran 90
supports vector operations and dynamic allocation and looks a lot like Matlab.
But the updated versions of Fortran 77 are fine for most purposes,
especially when using the BLAS. Fortran routines can be called from Matlab
using the MEX interface. More information.
You don't need to use Fortran in this course, but it's an alternative
to using C.
Java Information
Java is becoming a popular choice for numerical computing, but the strict
language requirements make it difficult to get good performance.
See Java Numerics for more information.
Java methods can be called directly from Matlab, without the complications
of the MEX interface, but the Java interface is still under development
while the MEX interface has stabilized and is well documented.
You don't need to use Java in this course, but it's an alternative
to using C.