Numerical algorithmic

lsinc1313  2026-2027  Charleroi

Numerical algorithmic
5.00 credits
30.0 h + 30.0 h
Q2

  This learning unit is not open to incoming exchange students!

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 LSINC1101, LINFO1101, or LEPL1401 courses, as well as the basics of the Java language such as taught in the LSINC1402 or LEPL1402 courses.
This course also assumes that the basic notions of algebra and analysis covered by the LSINC1111 or LINFO1111, and LSINC1112  or 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.
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.
Learning outcomes

At the end of this learning unit, the student is able to :

A.A. S1.G1, S1.3 - A.A. S2.2, S2.4 - A.A S6.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:
  • S1.G1, S1.I3
  • S2.2, S2.4
  • S5.1
Students who have successfully completed this course will be able to:
  • model a simple problem using the proper mathematical notation;
  • identify classical numerical methods suitable for solving a simple problem expressed mathematically;
  • choose, on the basis of precise criteria, the most effective method for numerically solving such a problem,
  • implement a numerical resolution of this simple problem;
  • explain the problems related to the numerical resolution of equations and their impacts: rounding errors, convergence, stopping criteria.
 
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 in Python.
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 during the practical sessions. In the event of a second examination session, the continuous assessment grade is retained and incorporated into the final grade using the same weighting (10%). In the event of re-enrollment in the following academic year, the continuous assessment must be completed again.
The continuous assessment is based on the practical sessions, which are weighted equally and result in a single overall grade, communicated after the end of the final session. Failure to comply with the methodological instructions provided by the instructor, particularly regarding the use of online resources, plagiarism, or collaboration between students on an exercise, will result in an overall mark of 0 for the continuous assessment.
In particular, the use of generative AI tools and any form of collaboration is strictly prohibited for the exercises. The distribution or exchange of (fragments of) code between students is not permitted by any means whatsoever (GitHub, Facebook, Discord, etc.), even after the submission deadline for the exercises.
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


Programmes / formations proposant cette unité d'enseignement (UE)

Title of the programme
Sigle
Credits
Prerequisites
Learning outcomes
Bachelor in Computer Science