FYS3150 – Computational Physics
Schedule, syllabus and examination date
This course gives an introduction to numerical methods for solving problems in physics and chemistry, i.e. methods for solving ordinary and partial differential equations, matrix operations and eigenvalue problems, numerical integration, Monte Carlo methods, and modeling. The course also covers a short and hands-on introduction to programming in C++ and version control with git, and provides training in how to write a scientific report.
After having completed the course:
- you master basic C++ programming for numerical applications, as well as the use of git for version control.
- you have basic knowledge of optimization and parallelization of code.
- you can apply a number of numerical methods for eigenvalue problems and matrix operations, ordinary and partial differential equations, integration, and simulation of stochastic systems. Among the methods covered are LU decomposition, the Verlet algorithm, Runge-Kutta methods, the Crank-Nicolson method, Gaussian quadrature, Monte Carlo methods, Markov chains, and the Metropolis algorithm.
- you can account for the strengths and weaknesses of the above numerical methods.
- you have knowledge of applications of numerical methods in different scientific fields.
- you can communicate numerical work through writing a scientific report.
Admission to the course
Students who are admitted to study programmes at UiO must each semester register which courses and exams they wish to sign up for in Studentweb.
Special admission requirements
In addition to fulfilling the Higher Education Entrance Qualification, applicants have to meet the following special admission requirements:
- Mathematics R1 (or Mathematics S1 and S2) + R2
And in addition one of these:
- Physics (1+2)
- Chemistry (1+2)
- Biology (1+2)
- Information technology (1+2)
- Geosciences (1+2)
- Technology and theories of research (1+2)
The special admission requirements may also be covered by equivalent studies from Norwegian upper secondary school or by other equivalent studies (in Norwegian).
Recommended previous knowledge
- INF1000 – Introduction to object-oriented programming (continued) or IN1000 – Introduction to Object-oriented Programming
- INF1100 – Introduction to programming with scientific applications (continued)
- IN1900 – Introduction to Programming with Scientific Applications
- FYS-MEK1110 – Mechanics
- MAT1100 – Calculus
- MAT1110 – Calculus and Linear Algebra
- MAT1120 – Linear Algebra
- 10 credits overlap with FYS4150 – Computational Physics.
The course extends over a full semester with 6 hours of teaching per week:
- 4 hours of lectures
- 2 hours of computer lab sessions
This course includes two mandatory assignments that must be approved before the final exam.
- Three home exams which counts 1/3 towards the finale grade.
This course has mandatory assignments that must be approved before you can sit the finale exam.
It will also be counted as one of the three attempts to sit the exam for this course, if you sit the exam for one of the following courses: FYS4150 – Computational Physics
Language of examination
Subjects taught in English will only offer the exam paper in English. You may write your examination paper in Norwegian, Swedish, Danish or English.
Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.
Resit an examination
Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester.
Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.