This module aims to apply the student’s programming abilities to the solution of problems of physical interest using numerical and computational tools. Different types of computational problems of physical interest are introduced. The module emphasises the process of approaching a problem from the computational viewpoint by first understanding the physics of the problem, manipulating the mathematics of the problem, determining how aspects of the problem may be best estimated numerically and then constructing the programmatic approach to the solution. Examples from many topics in physics are used as the basis for the course.
Students will implement algorithms to numerically solve some of the following problems:
Numerical Integration, primitive formulas, composite formulas, errors and corrections, Romberg integration;
Ordinary Differential Equations, Runge-Kutta Methods, Oscillator and Pendulum problems, Finite elements;
Monte Carlo Integration, Monte Carlo Simulations, random walk, diffusion, Ising model;
Partial Differential Equations, Finite difference equations, steady state heat equation;
Implementations of theory elements from other courses at this level such as quantum mechanical wells, solid state phonon dispersions, calculation of transition probabilities and oscillator strengths in the band structure, magnetism models, fluid flow etc.
A combination of techniques will be employed as appropriate to each element of the module content including lectures, discussion, problem-solving sessions, self learning and computational application.
|Module Content & Assessment