Topics in Computational Physics
Simon Catterall, smc@physics.syr.edu

Topics to be covered include the following:
  • Discrete quantum field theory = problem in equilibrium statistical mechanics. Example: 2D scalar field theory on the lattice
  • Partition function as a probability distribution
  • Markov processes, master equations as a way of realizing such distributions. Stochastic estimation of observables -- the Monte Carlo method
  • Simple metropolis algorithm -- the all purpose workhorse 
  • Introduction to phase transitions and critical phenomena. Finite size scaling.
  • Heatbath and overrelaxation -- more efficient (local) algorithms
  • Cluster techniques to tackle critical slowing down
  • Classical dynamics and Langevin methods for continuous systems. Hybrid method -- application to non-local systems such as relativistic fermions. Fourier acceleration.
  • Simple error analysis and fitting techniques
  • Techniques for solving large sparse linear problems
  • Elementary ideas about the RG. Introduction to MCRG.
  • Other physics topics: lattice gauge theories, spin systems, random systems
In each case I shall try to include a self-contained introduction to the physics problem/system,
an explanation of the algorithm used and a code (C++) that can be used to implement
that algorithm. Small scale working demonstrations of such codes
will be used throughout to illustrate computational issues. Some familiarity with
C/C++ will be assumed although a student with minimal programming skills should
be able to learn more advanced programming concepts as the course progresses.
I may set (small) homework exercises during the semester but will additionally
require students to undertake a substantial computational project in the last 1/3 of
the semester.

I will try to post lecture notes as we go.
Entire lecture note set for course

Expect to give a presentation on your project the last Tuesday class

Topics for Project
Lectures
Homeworks
Tar gzipped C++ scalar field simulation1 code
C code to bin MC data for errors
Tar gzipped C++ scalar field simulation2 code
C code to compute errors on 2 pt function
C code to fit 2 pt function to cosh
C++ function to perform cluster updates on scalar field model
C++ function to implement HMC update on scalar field model
DT C code (D=4) with U(1) gauge fields. Look at gauge.h for info on data structures.