Simulation Methods in Physics I WS 2012
- Lecture (2 SWS) and Tutorials (2 SWS)
- Prof. Dr. Christian Holm (Lecture); Dr. Olaf Lenz and Dr. Jens Smiatek (Tutorials)
- Course language
- Location and Time
- Lecture: Thu, 11:30 - 13:00; ICP, Allmandring 3, Seminarroom 1
- Tutorials: Thu, 14:00 - 15:30 and Fri, 8:00 - 9:30; ICP, Allmandring 3, CIP-Pool
- We expect the participants to have basic knowledge in classical and statistical mechanics, thermodynamics, and partial differential equations, as well as knowledge of a programming language (python or C).
The lecture is accompanied by hands-on-tutorials which will take place in the CIP-Pool of the ICP, Allmandring 3. They consist of practical exercises at the computer, like small programming tasks, simulations, visualization and data analysis. The tutorials build upon each other, therefore continuous attendance is expected.
The first part of 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:
- 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.
- Error Analysis
- Autocorrelation, Jackknifing, Bootstrapping
- 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.
- Short interlude on Quantum Mechanical Systems
- It is obvious that solving quantum mechanical systems analytically is not possible and we need numerical help. We also want to examine the possibilities to simulate the quantum chromodynamics PDEs on a lattice (lattice gauge theory).
|18.10.2012||Course Content, Organisation, Introduction||Slides|
|25.10.2012||MD: Integrators||Lecture Notes|
|08.11.2012||Basics of Stat Mech||Lecture Notes|
- Lecture notes (1.72 MB) - including all lectures until November 8th, 2012
Please note that the lecture notes are currently under development. Errors may be included. If you find errors, please contact Jens Smiatek.
Location and Time
Worksheet 2: Statistical Mechanics and Molecular Dynamics
- Deadline: 27 November 2012, 10:00
- Worksheet 2 (329 KB)
- templates.tar.gz (5 KB) - Archive that contains the files required in some tasks
- latex-template.tex (7 KB) - LaTeX-template for the report
Worksheet 1: Integrators
- Deadline: 13 November 2012, 10:00
- Worksheet 1 (285 KB)
- solar_system.tar.gz (585 bytes) - Archive that contains the files required in some tasks
- cannonball_template.png (114 KB) - Python program template as an image
- latex-template.tex (7 KB) - LaTeX-template for the report
- The tutorials take place in the CIP-Pool on the first floor of the ICP (Room 1.033, Allmandring 3).
- For the tutorials, you will get a personal account for the ICP machines.
- You can do the exercises in the CIP-Pool when it is not occupied by another course. The pool is accessible on all days, except weekends and late evenings.
- If you do the exercises in the CIP-Pool, all required software and tools are available.
- If you want to do the exercises on your own computer, the following tools are required. All of these packages should be readily available from your OS distribution, if it is not Windows.
- The following Python packages:
- A C compiler (e.g. GCC)
- We only have experience with Unix/Linux machines. Although most tools will probably also work on Windows, we cannot guarantee it, and we can also not help you to get it running there.
- The worksheets are to be solved in groups of two or three people. We will not accept hand-in-exercises that only have a single name on it.
- A written report (between 5 and 10 pages) has to be handed in for each worksheet. We recommend to use LaTeX to prepare the report.
- You have two weeks to prepare the report for each worksheet.
- The report has to be sent to the tutor via email.
- Most participants need 50% of the points in the hands-in exercises to be admitted to the oral examination (see [[#Examination|]] for details).
What happens in a tutorial
- The tutorials take place every week.
- You will receive the new worksheet on the days before the tutorial.
- In the first tutorial after you received a worksheet, the solutions of the previous worksheet will be presented (see below) and the new worksheet will be discussed.
- In the second tutorial after you received the worksheet, there is time to work on the exercises and to ask questions for the tutor.
- You will have to hand in the reports on Monday after the second tutorial.
- In the third tutorial after you received the worksheet, the solutions will be discussed:
- The tutor will ask a team to present their solution.
- The tutor will choose one of the members of the team to present each task.
- This means that each team member should be able to present any task.
- At the end of the term, everybody should have presented at least once.
- Use the existing documentation of Python itself! To get help on the command
- Or use the Web browser to read it. Start
pydoc -p 4242
- and visit the page http://localhost:4242
- http://python.org/doc/ - the official Python documentation (including tutorials etc.)
- Byte_of_Python.pdf (546 KB) - the free eBook "A byte of Python" , also available in German
- first of all, try to use
- http://numpy.scipy.org/ - the homepage of NumPy contains a lot of documentation
- Script of the lecture "Physik auf dem Computer" (german) (3.24 MB) - Numerics in Python, using Numpy
Depending on the module that this lecture is part of, there are differences on how to get the credits for the module:
- BSc/MSc Physik, Modul "Simulationsmethoden in der Physik" (36010)
- 60 min of oral examination (PL)
- International MSc Physics, Elective Module "Simulation Techniques in Physics I, II" (240918-005)
- Obtain 50% of the possible points in the hands-in excercises of this lecture as a prerequisite for the examination
- 30 min of oral examination (PL) about the lecture and the excercises
- After the lecture "Simulation Methods in Physics II" in summer term (i.e. Summer 2013)
- Contents: both lectures and the excercises of "Simulation Methods in Physics I"
- BSc/MSc SimTech, Modul "Simulationsmethoden in der Physik für SimTech I" (40520)
- 40 min of oral examination (PL) about the lecture and the excercises
- MSc Chemie, Modul "Simulationsmethoden in der Physik für Chemiker I" (35840)
- The marks for the module are the marks obtained in the excercises (BSL)