Computational Astrophysics

Spring 2005
For basic course information, surf here.
Graduate students can take this course as ASTR688C.

Material on this website is Copyright © 2005 by Derek C. Richardson and must not be reproduced without my express permission.

What's New?

05/20: PS#6 & 7 solutions posted. Have a great summer!
05/10: Special office hours tomorrow (Wed): 10 am - 12:15 pm.
05/06: Problem Set #5 solutions posted.
05/03: Problem Set #7 (bonus) posted.
05/03: Final outline posted.


The complete syllabus is available in HTML, PDF, or Postscript format.
Some useful excerpts:

Lectures:Tuesday, Thursday 12h30-13h45, CSS 1113
Recommended Text:Press et al., Numerical Recipes (any edition)
Professor:Dr. Derek C. Richardson
Office:CSS 1249
Office Hours:W 11h00-12h00 or by appointment

Note: The syllabus documents are unchanged from the start of classes.
Check this page for any syllabus updates.

Course Outline

DateLectureReading (NRiC)

#1Jan 27Introduction to the course--
#2Feb 01Computer architecture, part 1--
#3Feb 03Computer architecture, part 2--
#4Feb 08Introduction to UNIXtutorial
#5Feb 10Introduction to C1.1-1.2, tutorial
#6Feb 15Introduction to visualizationtutorial
#7Feb 17Data representation1.3
#8Feb 22Linear algebra, part 1 (Gauss-Jordan elimination)2.0-2.3
#9Feb 24Linear algebra, part 2 (LU & SVD decomposition)2.4-2.6
#10Mar 01[DCR away] Root finding in 1-D9.0-9.1, 9.4, 9.6
#11Mar 03Root finding in multi-D, and numerical differentiation5.7
#12Mar 08Statistics and the K-S test14.0-14.3
#13Mar 10Least-squares fitting15.0-15.2, 15.4-15.5
#14Mar 15Random numbers and cryptography7.0-7.2
#15Mar 17Numerical integration7.6, 4.0-4.4, 4.6
--Mar 22no class (Spring break)--
--Mar 24no class (Spring break)--
#16Mar 29Integration of ODEs, part 1 (IVPs)16.0-16.1
#17Mar 31Integration of ODEs, part 2 (leapfrog)--
#18Apr 05Integration of ODEs, part 3 (stiff ODEs & 2-pt BVPs)16.6, 17.0
#19Apr 07N-body techniques, part 1--
#20Apr 12N-body techniques, part 2 (PP)--
#21Apr 14N-body techniques, part 3 (PM)19.0, 19.4-19.6
#22Apr 19N-body techniques, part 4 (tree)--
--Apr 21[DCR away] Integration of PDEs, part 1 (ell & hyp)19.0-19.1
--Apr 26[DCR away] Guest lecture! Peter Teuben, N-body codes--
#23Apr 28Integration of PDEs, part 1 (ell & hyp)19.0-19.1
#24May 03Integration of PDEs, part 2 (hyp & par)19.2
#25May 05Fluid dynamics, part 1 (eqns)--
#26May 10Fluid dynamics, part 2 (methods)19.3
#27May 12Miscellaneous topics--

There is no final exam for this course.


No.DateProblem SetSolutionsExtras
#3Mar 3Mar 18 (5 pm)HTML/PDF/PSHTML/PDF/PSdata
#6Apr 14May 12HTML/PDF/PSHTML/PDF/PSmovie
#7May 3May 20 (3:30 pm)HTML/PDF/PSHTML/PDF/PSmovie

PS7 is an OPTIONAL problem set for up to 10 bonus marks

Term Project
Assigned Mar 8, due May 5: HTML/PDF/PS



Old Class Notes

    These notes were part of the "first edition" of this course (ASTR688N) in Spring 2001.

Class Survey

Survey [PDF/PS] and Results [PDF/PS]

Useful Links

Join our Yahoo! group! (students only)

Check out the UMD Astronomy Computing Wiki!

(In the listings below, a "W" link indicates a Wikipedia entry on the topic is available.)

Online Tutorials

Free Software

General Stuff

  • Doubts about NR? Read their response to critics.
  • IEEE 754 format for floating point numbers.
    • And here's some code I wrote (float.c) to display floats in binary format.
    • Try this code (paranoia.c) if you don't think your computer is doing math properly.
  • CPU Performance:
  • All kinds of neat code.
  • The Gnu Scientific Library is an alternative to Numerical Recipes. Linux operating systems often include GSL. To use it, follow these steps:
    1. In your C source file, #include ‹gsl/gsl_*.h›, where * is based on the name of the GSL function you want to use (consult the website for a list of functions).
    2. Call the needed function(s) in your code.
    3. Add -lgsl -lgslcblas -lm to the end of your compile line.
  • Handy random number generator resources.
  • HotBits: genuine random numbers generated by radioactive decay.
  • Online computational courses:
    1. Physics 594 (University of Tennessee).
    2. Computational Physics (University of Vienna).
    3. Particle-mesh Techniques (GSFC Summer School).
  • N-body resources:
    1. MODEST/MANYBODY (includes a link to NEMO).
    2. The N-body Shop (University of Washington).
  • Fluid dynamics resources:
    1. CFD Online.
    2. Zeus & Athena.
  • Useful animation links:
  • FFT demo for sm.

  • Last modified: May 20, 2005 DCR