Instructor: Catherine Beauchemin (cbeau@ryerson.ca, ext.2508, KHS 331) Winter 2013
Office hours: Pre-requisites: To be decided/discussed at first class and posted on Blackboard. MTH 510 or (MTH 501 and MTH 430)
Course Outline
This course covers the basics of scientific programming and introduces students to common computational methods with examples from medical and biological physics. The following topics will be covered: • Number representation and rounding error (2 hours) • Properties and generation of random numbers (3–4 hours) • Monte Carlo methods (6–7 hours) • Solutions to ordinary differential equations (7–8 hours) • Solutions to partial differential equations (9–10 hours) • Differential equations modelling of real systems (3–4 hours) • If time permits: cellular automata, fractals...
Programming language
The language of instruction will be a mixture of Octave/MATLAB and pseudocode, but in the lab and in exams you can use Octave, MATLAB, or python.
Teaching/learning material
No textbook. Lecture notes and scripts are provided by the instructor via Blackboard. MATLAB is installed on all Campus computers. MATLAB is available for download from the CCS website, but you’ll probably encounter licence problems. A better alternative is to download Octave which is free, open-source, available for Linux, Mac, and Windows, and works exactly like MATLAB but without all the licence nightmare. Additional resources • Eaton, JW, et al. GNU Octave Manual (http://www.network-theory.co.uk/octave/manual). • Press, WH, et al. Numerical Recipes in $(Language): The Art of Scientific Computing. • Fausett, LV. Applied Numerical Analysis Using MATLAB. • Sauer, T. Numerical Analysis. • Landau, RH, et al. Computational Physics: Problem Solving with Computers.
Teaching mode
This course consists of 3 h/week of lecture + 3 h/week of mandatory computer labs. The TA(s) will be there for the full duration of the lab