## Details of PH3105 (Autumn 2019)

 Level: 3 Type: Laboratory Credits: 4.0

Course CodeCourse NameInstructor(s)
PH3105 Computational Physics Anandamohan Ghosh

Preamble
This course provides an introduction to some of the widely used methods of computational physics. In addition to giving the students a basic working knowledge of particular numerical techniques, the course aims to make them comfortable with scientific computing in general, so that they will be prepared to tackle other computational problems as well that they may encounter in the future.

Syllabus
(1) Introduction to the programming language (e.g. C, C++, Fortran, Matlab etc. or
any combination of above). The introduction is accompanied by examples in the
following general areas. (a) Sorting Algorithms -- selection sort, Quick sort etc.
(b) Solution of equation -- Newton's method, Secant method etc. (c) Simple
numerical integratons -- Trapezoidal rule, simpson 1/3 rule etc. and any other
basic numerical techniques, that are useful for the later part of the course.

(2) Classical mechanics (2nd order ODE, initial value problems). Euler mthod,
Modified-Euler (predictor-corrector) method, Runge-Kutta method, Leapfrog method,
Verlet method, Velocity Verlet method, each with and without velocity dependent
drag terms. Examples from (but not limited to) harmonic oscillator with damping,
forced one, anharmonic pieces addred, realistic projectile motion with air drag,
realistic planetary orbit calculation etc. Simplectic integration, taking

(3) Quantum Mechanics (2nd order ODE, boundary value and eigenvalue problems).
Shooting method and Numerov's method, examples of bound states calculation for 1D
wells of regular and unusual shapes (those do not admit analytical solutions)
quantum harmonic oscillators. Eigenvalue problem in matrix form (finite
dimensional basis), and exact (Lanczos) diagonalization, Variational calculation
with orthogonal basis states. Time-dependent Schrodinger equation, wave equation
etc.

(4) Statistical Mechanics (Stochastic and Monte Carlo Methods). Uniform random
number generation, Randon walk and diffusion, Monte Carlo Integration -- advantage
in higher dimension, error analysis. Importance sampling and detailed balance.
Generation of random numbers from a Gaussian distribution-- Box Miller method,
using central limit theorem, Sampling points from arbitrary distributions --
Metropolis sampling and examples.

Prerequisite
Prior credit of course CS1101 is helpful but not essential. Basic
knowledge of the Unix (or Linux) operating system (including use of a text editor)
and some understanding of elementary computer programming will be assumed, however,
extensive prior programming skills are not necessary. A brief introduction to the
particular programming language used will be given at the beginning. The physics
knowledge expected will be at the level typically achieved after the first two year
of undergraduation. Reviews of the relevant physics will be integrated with the
discussions of numerical algorithms.

References
(g) Long List of References:
(1) Computational Physics, N. J. Giordano and H. Nakanishi, Pearson Prentice Hall
(2006)
(2) Introduction to Computational Physics, Pao Tang, Cambridge University Press
(3) Computational Physics, S. E. Koonin and D. C. Meredith, Addison-Wesley
Publishing Company
(4) Numerical Recipe.
(5) Computational Physics, J. M. Thijssen, Cambridge University Press

(h) Short List of References:
(1) Computational Physics, N. J. Giordano, Prentice Hall
(2) Numerical Recipe.

#### Course Credit Options

Sl. No.ProgrammeSemester NoCourse Choice
1 IP 1 Core
2 IP 3 Not Allowed
3 IP 5 Not Allowed
4 MR 1 Core
5 MR 3 Not Allowed
6 MS 5 Core
7 RS 1 Elective
8 RS 2 Elective