F6060 Programming, exam

Faculty of Science
Spring 2023
Extent and Intensity
0/0/0. 2 credit(s). Type of Completion: zk (examination).
Teacher(s)
doc. Mgr. Jiří Chaloupka, Ph.D. (lecturer)
prof. Mgr. Dominik Munzar, Dr. (lecturer)
Guaranteed by
doc. Mgr. Jiří Chaloupka, Ph.D.
Department of Condensed Matter Physics – Physics Section – Faculty of Science
Contact Person: prof. Mgr. Dominik Munzar, Dr.
Supplier department: Department of Condensed Matter Physics – Physics Section – Faculty of Science
Prerequisites
Knowledge of programming using one of the high-level programming languages (Python, C, C++, Java, Ruby, Fortran)
Course Enrolment Limitations
The course is offered to students of any study field.
Course objectives
basic programming competences for students of physics
Learning outcomes
By passing the exam the student proves:
- the ability to solve simple physical problems that require computer programming
- basic proficiency in a programming language suitable to perform numerical simulations (the recommended ones are: Python, C, C++, Java, Fortran)
- active knowledge of software platforms used to edit the program codes and to compile/run them (students are free to choose the respective software according to their preferences)
- the ability to correctly interpret a description of a numerical algorithm to solve a physical problem
- the ability to express the corresponding algorithm in a programming language of student's choice and to debug the resulting code
Syllabus
  • Sample areas of exam problems:
  • - partial summations of infinite series (to achieve prescribed accuracy)
  • - physical problems involving a solution of transcendental equations (using a simple method outlined in the problem assignment, such as bisection or Newton's method)
  • - physical problems involving an evaluation of a definite integral (using some simple fixed-node quadrature rule given in the assignment)
  • - studies of dynamical systems utilizing (a set of) ordinary diferential equations (solved by a simple method described in the assignment, for instance by Euler's method)
  • - linear fitting of data (steps involved: loading the data file, construction of a linear set of equations for the model coefficients, solving the linear set)
  • - statistical analysis of a substantial amount of data (analysis of a large data file or a set of data files, evaluation of statistical quantifiers, construction of a histogram etc.)
  • - trivial Monte Carlo simulations (example: step-wise algorithm where a decision based on a random number is made at each step)
Literature
  • KINDER, Jesse M. and Philip Charles NELSON. A student's guide to Python for physical modeling. Princeton: Princeton University Press, 2015, xiii, 139. ISBN 9780691170503. info
Teaching methods
Preparation for the exam by homework using sample exam assignments.
Assessment methods
At the practical exam, the student is required to write, within the given time limit, a computer program solving a selected problem. List of possible problem topics is provided in advance. A correct functioning of the program is required to pass the exam.
Language of instruction
Czech
Further Comments
Study Materials
Teacher's information
https://www.physics.muni.cz/~chaloupka/F6060/
The course is also listed under the following terms Spring 2020, Spring 2021, Spring 2022, Spring 2024, Spring 2025.
  • Enrolment Statistics (Spring 2023, recent)
  • Permalink: https://is.muni.cz/course/sci/spring2023/F6060