Physics 410: Computational Physics (Fall 2003)
Please e-mail suggestions or corrections to choptuik@physics.ubc.ca
Instructor: Matthew (Matt) W. Choptuik
Office: Hennings 403 --- Office Hours: Drop-in (appointment preferred for longer meetings).
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
- Tuesday/Thursday, 10:00-11: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
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:
- 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 one-hour tests: one in-class 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 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 18 and
a one-page 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 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 (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 sub-field 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 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 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