Physics 210: Introduction to Computational Physics (Fall 2009) |
COURSE HOME PAGE (this page): http://laplace.physics.ubc.ca/210/ |
Instructor: Matthew (Matt) W. Choptuik | Other
Personnel (Ben and Jason) |
Office: Hennings 403 | Office Hours: Drop-in (appointment preferred) |
Office Phone: 822-2412 | |
E-mail:
choptuik@physics.ubc.ca
|
Web page: http://laplace.physics.ubc.ca/~matt |
SCHEDULE:
|
COURSE LINKS
|
This
course will provide an introduction
to techniques and applications in computational physics. Topics to
be covered include: Unix fundamentals, including basic shell programming; an introduction to symbolic & numeric computation and programming with Maple; MATLAB and MATLAB programming; various applications from physics There will be a significant programming component in virtually all stages of the course. |
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. 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. |
Your
mark in this course will be
determined on the basis of your
performance on six homework assignments, a term project,
and a presentation on your term project, with the following weighting
|
There will be NO tests or exams in this course. |
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, and as
per the Late Homework Policy described below. 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. |
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 22 and a one-page outline of
your selected project is due Thursday, October 20 at the latest.
You are encouraged to develop your own project ideas, but all project topics must be approved by the instructor. Please note that the one-page precis must be submitted in addition to the final paper, and that the outline will not graded nor otherwise evaluated in the normal case. It serves the purpose of ensuring that every student has selected an appropriate project and is fully cognizant of the major components of work that must be performed for the project to be successfully completed. Even if the bulk of the project involves programming, a 1 paper describing the project must be prepared in the style of a technical paper or a scientific essay (ask now if you are unsure of what that means!), and hardcopy of your paper MUST be submitted to the instructor, in class, in person, or via the instructor's mailbox in the Physics and Astronomy main office. 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, provided that the student can convince the instructor that she/he has sufficient programming expertise and experience for the usual programming requirement to be waived. Term projects are due on December 1 (the last class day). Late projects will be accepted at the instructor's discretion. and as per the Late Work Policy described below. Term project code (including graphical code) must run on the course Linux machines in Hennings 205, and, in particular, cannot be MS-Windows specific. |
From time to time, work may be submitted late, subject to the following conditions:
Note that all messages are to be sent to the instructor, not the TA, and that if you finish the homework on time, no additional action on your part is required. |
All students must understand and abide by the following homework policy: Consultation and collaboration with classmates is permitted. HOWEVER, ALL HOMEWORK SUBMITTED MUST BE YOUR OWN WORK. To be more specific, the following occurrences (not an exhaustive list) WILL be treated as possible cases of academic misconduct. (I assume in the following that cheating is fundamentally a two-person interaction; let X and Y be two students)
The University takes this form of academic misconduct very seriously, and so do I. All strong evidence of cheating is therefore reported to, and dealt with through, the Head of the Department. Unfortunately because there have been instances where there was strong evidence of cheating in previous offerings of this course, all students must now sign-off on a homework policy statement, which ensures that all are aware of the policy and the potential consequences should it be violated. |
All students will be provided with an account for use in the Physics & Astronomy Computer Lab currently located in Hennings 205, and use of the machines in that lab (and also in Hennings 2XX and 2XX as necessary) should suffice for completion of yuour . |
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. |
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. |
Tuesday | Thursday |
---|---|
September
10 Unix |
|
September
15 Unix |
September
17 Unix |
September
22 Unix |
September
24 Maple [H1 due] |
September
29 Maple |
October
1 MATLAB |
October
6 MATLAB |
October
8 MATLAB [H2 due] |
October
13 MATLAB |
October
15 Finite Difference Approximation (FDA) |
October
20 Project Proposal Presentations I |
October
29 Project Proposal Presentations II [H3 due] |
October
27 Particle Dynamics |
October
29 Particle Dynamics |
November
3 Cellular Automata [H4 due] |
November
5 Cellular Automata |
November
10 Data Analysis |
November
12 Solution of linear equations / numerical integration [H4 due] |
November
17 Solution of nonlinear equations [H5 due] |
November
19 Random numbers |
November
24 Random processes |
November
26 Random processes |
December 1 Project Presentations I |
December
3 Project Presentations II [Projects due!!] |
|
|
See the UBC 2009/2010 Calendar and Academic Year [all year] pages for more information |
Maintained by choptuik@physics.ubc.ca. Supported by CIFAR, NSERC, CFI, BCKDF and UBC |