Level of education
Bachelor's degree
ECTS
3 credits
Training structure
Faculty of Science
Hours per week
27h
Description
This module will cover selected methods of numerical physics with applications relevant to the Fundamental Physics track. After reviewing programming with Python 3, we will study numerical algorithms for solving nonlinear equations, ordinary differential equations, and systems of linear equations. A major part of the module will focus on numerical linear algebra and its applications in physics and numerical analysis. Finally, an introduction to computer algebra systems is planned.
Objectives
Deepening of skills in programming and computational physics. Understanding of how selected algorithms work and their limitations; knowing how to implement them in order to solve problems in physics numerically; critical assessment of results.
Teaching hours
- Simulation Tools - Practical WorkPractical Work3 p.m.
- Simulation Tools - CMLecture12 p.m.
Mandatory prerequisites
Procedural programming (ideally with Python). Knowledge of physics, mathematics, and computer science at the L2 level.
Recommended prerequisites*: Good working knowledge of Python 3 and basic skills in scientific programming, "Computer Physics" from L2 or equivalent.
Knowledge assessment
CCI
Syllabus
- Scientific Programming with Python 3: Review and Advanced Topics
- Searching for zeros of functions
- Numerical solution of ordinary differential equations
- Matrix calculations with NumPy
- Methods of numerical linear algebra: Systems of linear equations, matrix decompositions, diagonalization
- Applications: Interpolation, fitting/regression, discretization of differential operators, optimization
- Introduction to symbolic computation
Additional information
CM: 12 p.m.
Practical work: 15 hours