Physics 410: Computational Physics (Fall 2003)
Please email suggestions or corrections to choptuik@physics.ubc.ca
Instructor: Matthew (Matt) W. Choptuik
Office: Hennings 403  Office Hours: Dropin (appointment preferred for longer meetings).
Office Phone: 8222412  Home Phone: 2229424
Email: choptuik@physics.ubc.ca
Grader: Kevin Lai, Hennings 408,
cwlai@physics.ubc.ca
Course Home Page:
http://laplace.physics.ubc.ca/People/matt/410/
Instructor's Home Page:
http://laplace.physics.ubc.ca/People/matt/index.html
Schedule
 Tuesday/Thursday, 10:0011:20 AM  Hennings 304
Course Links
Course Overview
This course will provide an introduction
to techniques and applications in computational physics. Topics to
be covered include: Unix fundamentals; symbolic & numeric computation
and programming with Maple; scientific programming using Fortran 77/90;
solution of linear systems; basic numerical analysis for continuum
systems; solution of ordinary differential equations.
There will be a significant programming component in virtually all stages of
the course: tutorial sessions with the instructor can
be arranged for those of you desiring additional help with programming.
See below for a concise syllabus and the
Course Topics page for a slightly more
detailed description of course coverage.
Text: Due to the significant diversity in topics to be covered,
there is no required text for the course. For testing purposes,
you will be responsible only for material covered in lectures
and homework assignments. I will distribute some class
notes when appropriate, but you will also be responsible for
taking notes in class. The optional text, Numerical Recipes (2nd edition),
by Press et al is particularly recommended for those of you
who anticipate doing further numerical work. Note, however, that the full text
of the book is available
online.
Also note that there are distinct Fortran 77 and
C versions of the book: choose the one which you feel will suit you
best. (There is also now a second Fortran volume, Numerical
Recipes in Fortran 90.)
See the Suggested References
page for texts and other references pertinent to the course,
and the Course Resources
web page for a collection of online reference/instructional
material.
Grades: Homework and Term Projects
Your mark in this course will be determined on the basis of your
performance on five homework assignments, a term project,
and two testsa midterm and a finalwith the following weighting:
 Midterm: 10%
 Final: 10%
 Homework Assignments: 55%
 Term Projects: 25%
Final marks may be subject to small adjustments based on overall class
performance.
Tests
There will be two onehour tests: one inclass and one in the
final exam period:
 Midterm: Tuesday, October 28, 10:00 AM
 Final: Tuesday, December 9, 3:30 PM, Hennings 202
Note that the Midterm and Final count equally towards your final
grade. In particular, although the Final exam will be scheduled
in a regular examination slot, it will not take much longer
than the midterm to complete.
Except under extremely
extenuating circumstances there will be NO makeup tests
Homework
See the syllabus below for scheduled homework due dates.
Homework will be assigned at least a week before it is due; late
homework may be accepted at the instructor's discretion.
As the course progresses, the Homework Schedule
web page will contain information concerning current and past assignments.
Each homework will contribute roughly equal weight to your final mark
but I will discount your worst mark.
Term Projects
Either individually or in consultation with the
instructor, each student must choose a topic for a term project in
some area of computational physics. A final list of suggested
topics will be posted by Thursday, September 18 and
a onepage outline of your selected project is due Tuesday,
October 14 at the latest. All topics must be approved by the
instructor.
Even if the bulk of the project involves programming,
a term paper describing the project must be prepared in the style
of a technical paper or a scientific essay. You are free to
submit preliminary drafts of your paper to the instructor for
critique; such preassessment will not affect your final grade
on the paper. You are encouraged to use LaTeX (or TeX)
mathematical typesetting software to prepare your papers. Suggested
paper length is 1520 pages double spaced, including figures, graphs
and source code listings (which should generally be included single spaced).
Note that the project need not involve
programming: in particular, a critical essay on the impact of computation on a
particular subfield of physics is a viable option, but in this case
you will have to convince the instructor that you have had adequate coding
experience.
Term projects are due on November 27 (the last class day).
Late projects will be accepted at the instructor's discretion,
but in ALL cases must be submitted well before the final exam.
Computer Access
All students will be provided with an account for use
in the
Physics & Astronomy Computer Lab
currently located in Hennings 205.
You will also be given an account on the
Linux Lab machines, which
you will use for the majority of your homework assignments
and, if you wish, your term projects.
As the course progresses, and if your work requires it, you will also be given
access to the Beowulf Pentium III/Linux cluster,
vn.physics.ubc.ca.
Tutorials
As mentioned above, individual or smallgroup
tutorial sessions may be
arranged at mutually agreeable times for those of you who require
additional help, particularly with the programming aspects of the
course. Although I will try to detect when supplementary instruction
is required, please contact me (email preferred) if and when you
think you could use a session or two.
Other Help
You should also feel free to contact me via
email (preferred) or phone if you
have quick questions, or if you are having difficulty getting
something to work. Perhaps most importantly, you should strive
to develop the ability to make effective use of the available
documentation for the software you are using (online help,
man pages, Web resources, etc.). Online help tends to
be extensive these days and a little time invested in learning
how to extract the information you are looking for
usually pays off.
Syllabus
Tuesday 
Thursday 
September 2
Unix

September 4
Unix

September 9
Unix

September 11
Unix

September 16
Unix

September 18
Maple
[H1 due]

September 23
Maple

September 25
Maple

September 30
Fortran

October 2
Fortran

October 7
Fortran

October 9
Fortran
[H2 due]

October 14
Fortran
[Project outlines due]

October 16
Fortran

October 21
Linear Systems

October 23
Linear Systems
[H3 due]

October 28
MIDTERM

October 30
Linear Systems

November 4
Solution of ODEs

November 6
Solution of ODEs

November 11
REMEMBRANCE DAY [University closed]

November 13
Solution of ODEs

November 18
Solution of ODEs
[H4 due]

November 20
Nonlinear Equations

November 25
Nonlinear Equations

November 27
Nonlinear Equations
[HW5 & Term Projects due]

Syllabus Notes
 Homework assignments
are denoted H1 through H5.
 See Course Topics page for a more
detailed outline of course material.
 Term project outlines are due OCTOBER 14 although earlier
submissions are encouraged
 Term projects are due NOVEMBER 27 (last class day).
Other Important Dates
 Tuesday, September 16: Last day for withdrawal from most
Term 1 courses without withdrawal standing of "W" recorded
on a student's academic record.
 Friday, October 10: Last date for withdrawal from most Winter
Session Term 1 courses with withdrawal standing of "W" recorded
on a student's academic record.
 Monday, October 13: Thanksgiving Day, University closed.
 Tuesday, November 11: Remembrance Day, University closed.
 Friday, November 28: Last day of classes.
 Tuesday, December 2: Examinations begin.
 Thursday, December 16: Examinations end.
See the
UBC 2003/2004
Calendar and
Academic Year /
Full Academic Year
pages for more information