Physics 410: Computational Physics (Fall 2002)



Instructor: Matthew (Matt) W. Choptuik
Office: Hennings 403 --- Office Hours: Drop-in (appointment preferred)
Office Phone: 822-2412 --- Home Phone: 222-9424
E-mail: 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

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 on-line. 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 on-line 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 tests---a mid-term and a final---with the following weighting: Final marks may be subject to small adjustments based on overall class performance.

Tests

There will be two one-hour tests: one in-class and one in the final exam period: 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 mid-term 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 19 and a one-page outline of your selected project is due Tuesday, October 15 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 pre-assessment 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 15-20 pages double spaced, including figures, graphs and source code listings. Note that the project need not involve programming: for example, a critical essay on the impact of computation on a particular sub-field of physics is a viable option. Term projects are due on November 28 (the last class day). Late projects will be accepted at the instructor's discretion.

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 small-group 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 (e-mail preferred) if and when you think you could use a session or two.

Other Help

You should also feel free to contact me via e-mail (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 (on-line help, man pages, Web resources, etc.). On-line 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 3
Unix
September 5
Unix
September 10
Unix
September 12
Unix
September 17
Unix
September 19
(Class Cancelled) [H1 due]
September 24
Maple
September 26
Maple
October 1
Maple
October 3
Fortran
October 8
Fortran
October 10
Fortran [H2 due]
October 15
Fortran [Project outlines due]
October 17
Fortran
October 22
Fortran [H3 due]
October 24
Linear Systems
October 29
MIDTERM
October 31
Linear Systems
November 5
Linear Systems
November 7
Solution of ODEs
November 12
Solution of ODEs
November 14
Solution of ODEs [H4 due]
November 19
Solution of ODEs
November 21
Nonlinear Equations
November 26
Nonlinear Equations
November 28
Nonlinear Equations [HW5 & Term Projects due]


Syllabus Notes


Other Important Dates

See the UBC 2002/2003 Calendar and Academic Year pages for more information