Provide basic knowledge and technique to advance research in physics using computes as tools. First, teach a programming language to use computers as calculators.
Through practical programming experiences, provide appropriate programming manners. Then, provide basic techniques of numerical solution of differential equations, simulations, and data analysis, which are major roles of computers in modern physics researches.
This course will provide opportunities to learn various methods of computational physics, which is a major research technique besides experimental and theoretical physics.
Students will acquire knowledge and experience that can be applied to solve problems through practical training of programming.
Programming languages, numerical integrations, numerical solutions of differential equations, data analysis, Monte-Carlo simulations.
✔ Specialist skills | Intercultural skills | Communication skills | ✔ Critical thinking skills | ✔ Practical and/or problem-solving skills |
1/3 of class will be a lecture on basic concepts and required knowledge including explanations on important points. 2/3 will be adopted to practical programming.
Course schedule | Required learning | |
---|---|---|
Class 1 | First step with TSUBAME | Logon to TSUBME and start setup |
Class 2 | Introduction to UNIX and C language | Write a program in C and execute it |
Class 3 | First programming for deduction of pi | Calculate pi by a series expansion of arctangent |
Class 4 | Ideas for better conversion of numerical calculations | Find a better series expansion method to calculate pi |
Class 5 | Numerical solutions of differential equations I Euler methods | Solve a differential equation by Euler method |
Class 6 | Numerical solutions of differential equations II Modified Euler | Change the method to modified Euler method |
Class 7 | Numerical solutions of differential equations III Runge-Kutta | Solve a 2nd order differential equation by Runge-Kutta method |
Class 8 | Application of numerical solutions to quantum mechanics I | Solve a matrix problem with BLAS package |
Class 9 | Application of numerical solutions to quantum mechanics II | Write a program to calculate wave function for arbitrary potential function. |
Class 10 | Precision of numerical calculations and errors | Study errors in numerical calculations |
Class 11 | Monte-Carlo simulations I random numbers | Calculate an area by using random numbers |
Class 12 | Monte-Carlo simulations II visualization | Write a program for visualization with PGPlot. |
Class 13 | Monte-Carlo simulations III Metropolis method | Write a program for Ising model using Metropolis method |
Class 14 | Monte-Carlo simulations IV Physical quantities | Measure physical quantities by the Ising model. |
Class 15 | Data analysis | Make a fit to data and deduce peak position, width and intensity |
Textbook distributed by the instructor.
Not specified.
By monthly report.
No prerequisites.