The lecture is accompanied by hands-on-tutorials which will take place in the CIP-Pool of the ICP, Pfaffenwaldring 27, U 108. They consist of practical exercises at the computer, like small programming tasks, simulations, visualization and data analysis.
The tutorials build on each other, therefore continuous attendance is expected.

Contents

Scope

The course intends to give an overview about modern simulation methods
used in physics today. The stress of the lecture will be to introduce different
approaches to simulate a problem, hence we will not go too to deep into specific details but rather try to cover a broad range of methods. In more detail, the
lecture will consist of:

1. Molecular Dynamics

The first problem that comes to mind when thinking about simulating
physics is solving Newtons equations of motion for some particles with
given interactions. From that perspective, we first introduce the most
common numerical integrators. This approach quickly leads us to
Molecular Dynamics (MD) simulations. Many of the complex problems of
practical importance require us to take a closer look at statistical
properties, ensembles and the macroscopic observables.

The goal is to be able to set up and run real MD simulations for
different ensembles and understand and interpret the output.

2. Partial Differential Equations

Some of the most common physical problems today can be formulated with
Partial Differential Equations (PDEs). We want to think about what kinds
of physical problems can be dealt with PDEs and what methods we
have to solve them numerically.

The goal is to get to know the problems you run into when solving these
simple-looking equations and to get an overview on the methods available.

3. Quantum mechanical systems

It is obvious that solving quantum mechanical systems analytically is not possible and we need numerical help. We want to introduce various methods like (post-)Hartree-Fock, Density Functional Theory, and Car-Parrinello-Molecular dynamics. We also want to examine the possibilities to simulate the quantum chromodynamics PDEs on a lattice (lattice gauge theory).

The goal is to get an overview on the methods to treat quantum
mechanical systems and know about some of the advantages and
disadvantages of each method.

4. Monte Carlo Simulations

Since their invention, the importance of Monte Carlo (MC) sampling has
grown constantly. Nowadays it is applied to a wide class of problems in modern
computational physics. We want to present the general idea and theory
behind MC simulations and show some more properties using simple toy models
like the Ising-model.

Prerequisites

We expect the participants to have basic knowledge in classical and statistical mechanics, thermodynamics, electrodynamics, and partial differential equations, as well as knowledge of a programming language (preferably C or C++).

Prerequisites for the examination

Attendance of the exercise classes

Obtaining 50% of the possible marks in the hand-in exercises

(In German: USL -V )

There will be a final grade for the Module "Simulation Methods" (this module consists of both lectures, Sim I plus Sim II and the exercise of Simulation Methods I) determined at the end of lecture Simulation Methods II.
The grade will be determined in the following way :
There is an oral examination (60 minutes) performed at (or after) the end of the course Simulation Methods II (SS 2012), where the dates are to be settled with the lecturer.

People taking other modules where this course is part of should contact the lecturer for optional other examinations.

Lecture

Date

Topics (subject may change during the course)

20.10.2011

Course Content, Organisation,Introduction

27.10.2011

Equation of Motion and simple Integrators for Classical MD

03.11.2011

Integrators cont., simple Potentials for Liquids

10.11.2011

LJ Units, Simple MD Program

17.11.2011

Stat Mech in a Nutshell, Observables in MD

24.11.2011

Observables in MD, Diffusion, Brownian motion, RDF

01.12.2011

Green-Kubo relations, temperature fluctuations in NVE ensemble

08.12.2011

Thermostats and different ensembles

15.12.2011

Finite differencing techniques, solving PDEs

22.12.2011

Overview over research topics at the ICP

12.01.2012

Introduction to Monte Carlo Methods, Metropolis Alg.

19.01.2012

Phase transitions, critical phenomena

26.01.2012

Finite Size Scaling

02.02.2012

Error Analysis

09.02.2012

Single particle Quantum Mechanics

Tutorials (U 108)

Obtaining extra points

First person who identifies a bug in the code provided by the tutors gets an extra point and one additional extra point if he/she can fix the bug. Same applies to finding a mistake in the worksheets which significantly changes the meaning. We are also thankful for pointing out misprints but these are not awarded extra points.

Scheduling of tutorials

First tutorial is an introductory one and does not contain any graded homework. Starting from the second tutorial, a new worksheet is handed out every second week. The following week is dedicated to working on problems related to the last worksheet. Homework in the form of a report should be sent to the tutors before the next worksheet is handed out. The two-week cycle ends with the discussion of results of the previous worksheet and handing out a new one.

Guidelines for submitting the homework

Homework for the tutorials should be submitted in the form of a report. It has to be submitted via e-mail as a single pdf document or alternatively as a paper printout. Handwritten reports will also be accepted. Source code should always be sent via e-mail. If the code concerns only a few lines, it may be a part of the report. Reports clearly not meeting these requirements may be rejected without evaluation.

Identical pieces of reports annihilate when submitted by different people producing anti-points for both. The amount of anti-points grows exponentially with the similarity. It is fine if you help each other and discuss your results, but each part of the report has to be an original, not a copy from your neighbour.

If you have a technical problem on the CIP pool computers, e.g. a missing program or library or something else which does not allow you to perform a certain task, ask the tutor for assistance. Saying in your report "I was not able to run program XXX, therefore I do not provide answer to Task YY." cannot be awarded any points.

Deadline

Monday morning, two days before the next task is handed out. Reports on paper can be handed in personally in the office.

A delayed submission is penalized -1 point for each day of the delay.

The deadline can be postponed if it is requested by several people more than two days in advance. The tutor will decide to accept or reject the request and will announce it to all students.

In case of special circumstances (illness, accident, ...) contact the tutor immediately via e-mail to agree on an individual deadline.

Text of the report

Has to contain author name, student ID and date.

Should be subdivided into sections, each section being clearly related to one task of the homework.

Must be written in sentences, not points like in a presentation.

All conclusions must be explained and when appropriate, supported by data (plots, tables). In case a derivation is required, all intermediate steps have to be clearly understandable or explained in the text.

For each simulation, it has to be clear, what were the input parameters, so that it can be re-run.

There is no upper or lower size limit on the report. Use common sense.

Figures and plots

Each figure has to have a number and a caption or title saying what is in the figure.

In text, refer to figures by the number or title, so that it is clear which figure you are referring to.

Each plot has to have labels on axes with font size comparable to other text. Plots without labels will not be considered.

Data points should fill a major part of plot area. The point size, x- and y-scales have to be chosen appropriately so that all important features can be seen.

All figures have to be included in the report. Figures sent as separate files will not be considered.

You may optionally provide the data files. If there is a problem in your work, it may help the tutor understand where you made a mistake.

Source files

Remember that someone has to read your code, understand it and check that it is correct.

Provide all files in which you made changes!

Use variables with intuitively understandable names. If not, at least put a comment saying what it means.

If the code is more complex, add comments to it. Especially to parts which may not be easy to read.

We recommend that you indent your code for better readability.

Extra tasks which are not contained in the worksheet

If you have a brilliant idea about an extra task which could be done in addition to what is requested in the worksheet, first ask the tutor to approve it. He will also tell you how many points you can get for it. Extra work which has not been previously approved by the tutor cannot be awarded any points, even if it is excellent.