Teacher(s)
Language
French
Prerequisites
This course assumes that you have acquired the basic notions of programming (instructions, variables, loops, conditions, etc.) and the programming methodology in Python as taught in the LINFO1101 or LEPL1401 courses, as well as the basics of the Java language such as taught in the LEPL1402 course. This course also assumes that the basic notions of algebra and analysis covered by the LINFO1111 and LINFO1112 courses have been acquired.
The prerequisite(s) for this Teaching Unit (Unité d’enseignement – UE) for the programmes/courses that offer this Teaching Unit are specified at the end of this sheet.
The prerequisite(s) for this Teaching Unit (Unité d’enseignement – UE) for the programmes/courses that offer this Teaching Unit are specified at the end of this sheet.
Main themes
- Representation of floating point numbers
- rounding error problem and error propagation (discussion for the methods below).
- Notion of convergence and stopping criteria of iterative methods
- Representation of matrices, efficient multiplication of matrices
- Resolution of linear systems, including iterative methods
- Interpolations and regressions
- Numerical integration, numerical differentiation
- Resolution of ordinary differential equations: problems with initial value
- Resolution of nonlinear equations (function roots), application to simple one-dimensional optimization problems (including notion of minimum / maximum local or global)
Since the course is intended for IT professionals, the emphasis will be on practical implementation of these methods.
Applications and examples will be taken preferably in the other courses of the program SINF1BA (economics, electronic basics for computer science, for example). Otherwise, they will be taken in other domains (mechanical, for example) but the teacher will take care to introduce the relevant concepts.
Learning outcomes
At the end of this learning unit, the student is able to : | |
1 | Given the learning outcomes of the "Bachelor in Computer science" program, this course contributes to the development, acquisition and evaluation of the following learning outcomes:
|
Content
The philosophy of the course is to introduce numerical methods by describing and, above all, implementing concepts from algebra and mathematical analysis courses. The aim is to develop algorithms while observing the limits of implementing a mathematical concept: data representation (numbers, etc.) and error handling (calculation, stability, propagation, etc.).
Teaching methods
By presentation of the concept and by implementation.
Evaluation methods
The examination will be a written, on-site test with open-ended questions. It will cover all the material from the lectures and practical sessions. The examination grade will contribute 90% to the final evaluation, while the remaining 10% will come from continuous work and attendance during the practical sessions. The grade for continuous work and attendance is retained throughout the academic year and will not be re-evaluated during the second exam session.
Online resources
Teaching materials
- "Numerical Methods in Engineering with Python 3" de Jaan Kiusalaas (ISBN-13: 978-1107033856)
- "Numerical Algorithms" de Justin Solomon (ISBN-13: 978-1482251883)
- Slides on Moodle
Faculty or entity