Computational Physics, Course 509 - Physics Applications of Computers

Overview

Introductory lecture material

Programming

Basic numerical methods

Methods and Algorithms
Monte Carlo methods
Quantum Monte Carlo methods
Continuous Time Quantum Monte Carlo
Hartree-Fock method
Density functional theory
Molecular Dynamics



  
Left: Simulation of a bacteria growth by DLA method, Right: Molecular dynamics simulation of a small system of atoms Simulation codes is available to download in lecture material.

The goal of this course is to make students aware of what is involved in computational physics, and the large variety of tools which can help us do classical and quantum physics using the computer. Examples will be drawn from various areas of physics. This course has no prerequsites except for familiarity with some programming language. It is designed for the student who wishes to broaden his/her knowledge of applications and develop techniques.

 

Class Time: ARC building (203), 10:20-11:40am on Wednesday, 3:20-4:40pm on Friday

Instructor: Kristjan Haule
Office: Serin E267
email: haule@physics.rutgers.edu
Phone: 445-3881
Office hours: Friday 4:45pm

 

Schedule

Homeworks received

 

Preliminary Course Outline and Tentative List of Topics include

A)Survey of hardware and software of a computer:

  1. Representation of numbers in the computer
  2. Why do we need to be aware of roundoff error
  3. How to use computer hardware more efficiently
  4. Use of debuggers, profilers and memory leakage tools
  5. Where to find useful numerical routines on the web and learn how to use them in solving physics problems
  6. How to use Fortran routines in C++
B) Some basics of high level programming with examples in C++, Perl and Python:
  1. Importance of data abstraction, data encapsulation and data hiding
  2. Concept of templates and their use (functors)
  3. Be aware of 80-20 rule in optimizing code
  4. Modern Scientific Computing using Python, SciPy
Literature:
  1. More Effective C++ by Scott Meyers
  2. C++ Programming language by Bjarne Stroustrup
C) Basic numerical methods:
  1. Numeric integration (source code) solution of homework 7
  2. Interpolation, Splines and Fourier transformation (source code)
  3. Differential equations (source code)
  4. Random numbers and multidimensional integration (source_code)
Literature: Numerical Recipes online from http://www.nrbook.com/b/bookcpdf.php

D) Computational methods and algorithms (Core part of the Course):
  1. Monte Carlo methods and Simulated Annealing
  2. Quantum Monte Carlo methods
  3. Continuous Time Quantum Monte Carlo method
  4. Parallel programming with MPI
  5. Hartree-Fock method
  6. Density functional theory
  7. Molecular dynamics simulation
Literature:
  1. Computational Physics by J.M. Thijssen (The core part of the lectures is build from this book)
  2. Introduction to Computer Simulation Methods by H. Gould, J Tobocnik and W. Christian
  3. Electronic Structure, Basic Theory and Practical Methods by Richard M. Martin(Very good book for the Density functional part of the course)
  4. An Introduction to Computational Physics by Tao Pang
  5. Computational Physics by Rubin H. Landau and Manuel J. Paez(More elementary but good book)

Students with Disabilities

igor win

igor mac

up