Syllabus and course goals

Grading policy

Lecture notes on topics

Full lecture notes for the whole course (these have not yet been proofread for the sections beyond what we have covered in class)

Notes on a lecture by lecture basis

Notes from week 1: Motivations for learning computational physics

Notes on using Linux and plotting

Notes on approaching computational problems

Notes on pointers and arrays

Notes on Fourier analysis and libraries

Notes on root finding

Notes on round-off errors and numerical integration

Notes on differential equations

Notes on Monte Carlo methods

Notes on fitting data

Sample data set to be fitted in class

Unknown data set 1

Unknown data set 2

Unknown data set 3

Assignments for the course

Assignment 1: simple plotting with gnuplot

plotdata_intro , the file you should plot in the first assignment

Assignment 2: simple algorithm development

Essay assignment description

Calculator assignment

Pulsar assignment

Note: to compile with gsl, you need to add two more flags that were not in the notes, because the gsl libraries' location has been moved since I wrote the notes:

-I /home/tmacc/gsl/include -L /home/tmacc/gsl/lib

Test data for fake pulsar assignment

Newton's method assignment

Integration assignment

Differential equation assignment

Monte Carlo assignment

Modelling assignment

Final project

Final project assignment

Sample programs for the course

helloworld.cc

compute_sines.cc

read_numbers.cc

dot_product.cc

test_gsl.cc

fake_pulsar.cc

fake_pulsar_streamio.cc

read_numbers_stream.cc

sum_1_n.cc

solve_quadratic.cc

pendulum.cc

pendulum_rk4.cc

Other useful information

Sample LaTeX file with notes for the differential equations lecture

The C++ Resources Network, a good place to look up information about syntax for C++ programming

The GNU Scientific Library, a repository of well-tested functions for C++ programmers that implement a wide range of numerical algorithms of use to scientists

Numerical Recipes Web site, links to a free online version of the Numerical Recipes book, which is a good place to learn the basics of numerical analysis