PHYS 3437 - Computational Methods in Physics
Index to lecture notes
PHYS 3437 notes will appear here as the course is being taught.
Lecture 1 (ppt):
Course outline,
supplemental information. Computer architecture 101
Lecture 2 (ppt):
Storing information digitally. Integer representations, floating point
arithmetic.
Lecture 3 (ppt):
Short discussion about projects. More on floating point
arithmetic and problems you may encounter.
Lecture 4 (ppt):
Introduction to Unix shells and useful commands. 10,000 ft view of
programming.
Lecture 5 (ppt):
Functions and roots. Roots for polynomials. Bracketing & Bisection,
Newton-Raphson, hybrid NR-bisection, Secant Method.
Lecture 6 (ppt):
A global bracket finding strategy. Muller-Brent. Example of root finding
from quantum mechanics.
Lecture 7 (ppt):
Introduction to interpolation. Difference between interpolation and
fitting to data.
Interpolation polynomials in Lagrange form. Hermite interpolation.
Introduction
to cubic splines.
Lecture 8 (ppt):
Finish cubic splines. Numerical approximations to derivatives.
Richardson Extrapolation.
Lecture 9 (ppt):
LU decomposition for solving general matrices. General polynomial least
squares fitting. Least squares function fitting and Hilbert matrices.
Orthogonal polynomials and uses in fitting.
Lecture 10 (ppt):
Numerical integration. Simple Newton-Cotes formulas (trapezoid &
Simpson's Rule). Romberg Integration. Gaussian quadrature.
Lecture 11 (ppt):
Problems that can be encountered in numerical integration. Change of variables,
removal of singularities. Dealing with improper integrals. Multidimensional int
egration.
Lecture 12 (ppt):
Introduction to ODE solvers. Euler method, including Modified and Improved variants.
Classical Runge-Kutta with adaptive step size from Richardson Extrapolation.
Lecture 13 (ppt):
Issues with the adaptive step size procedure. Separating 2nd order ODEs into coupled
first order system. Separating nth order ODEs into n coupled first order systems.
Algorithm to integrate nth order systems.
Lecture 14 (ppt):
Introduction to Monte Carlo methods. Numerical integration techniques,
rejection method, importance sampling.
Lecture 15 (ppt):
MC methods applied to molecular motion in gases - the random walk.
Simulation method & how to choose points randomly on a sphere. Short
overview of random number generators, advice for quick and dirty
generators and what to use if you want really "good" random numbers.
Lecture 16 (ppt):
Introduction to parallel programming. Different types of parallel
computers. When is parallel computing useful? Brief introduction to
OpenMP.
Lecture 17 (ppt):
More details on parallel programming. Dealing with data dependencies and
race conditions. Useful OpenMP commands reviewed.
Lecture 18 (ppt):
Introduction to visualization. Preattentive processing of information.
How now to present information. Effectiveness of different colour maps.
Getting started with Opendx.
Lecture 19 (ppt):
More on Opendx. Loading in data and using the default viewer.
Visualization of 3d volumes, surface rendering versus volume rendering.
How transfer functions highlight different parts of a data volume.
Making
movies.