Spring Semester 2016-2017

TUE 12:30-13:20 KK LG107

FRI 12:30-14:20 KK LG107

**Course Instructor**

Prof. Jian Wang

The use of computers in physics, as well as most other branches of
science and engineering, has increased many times along with the rapid
development of faster and cheaper hardware. This course aims to give the
student a thorough grounding in the main computational techniques used in
modern physics. It is particularly important in this course that the students
should *learn by doing.* The course is therefore designed such that a
significant fraction of the students' time is spent actually programming
specific physical problems rather than learning abstract techniques. The course
will cover the following problems:

Introductory Computational Physics and Computer Algebra

Integration and
Differentiation

Interpolation and
Extrapolation

Ordinary differential equations, such as those of classical
mechanics.

Partial differential equations, such as the Maxwell's
equations, the Diffusion equation, and the Schrodinger equation.

Matrix methods, such as systems of equations and eigenvalue
problems applied to Poisson's equation and electronic structure calculations.

Monte Carlo and other simulation methods, such as the
Metropolis algorithm and molecular dynamics.

Several Physics Projects

This
is **neither** a short course in computing science **nor** in
programming. It focuses specifically on methods for solving physics problems.
Students will be expected to be familiar with basic programming. There is no
requirement that the practical work be done using MATLAB, but anyone wishing to use some other programming
language or computer should consult the lecturer beforehand. This is to make sure there is both help
available from demonstrators and that it will be possible to assess the work satisfactorily.

1. Assignment: 20%

2. Project: 40%

3. Two-hour written exam: 40%

- Introduction
- Integration and Differentiation
- Interpolation and Extrapolation
- Matrix Methods
- Differential Equations
- Monte Carlo Calculation
- Metropolis Algorithm

- Introduction for Matlab
- Integration and Differentiation
- Integration
- Differentiation
- Interpolation
- Pade Approximation
- DFT
- Newton Method

- rectangular_rule.m
- trapezoidal_rule.m
- Simpsons_rule.m
- Monte_Carlo.m
- Differentiation.m
- Neville.m
- calculate_UandD_v01.m
- Pade.m
- DFT.m
- Newton_method.m
- diff_1ord.m

Samuel S. M. Wong, "Computational Methods in Physics & Engineering"

Nicholas J. Giordano and Nisao Nakanishi, Computational Physics