Ce support de cours, rédigé par le Professeur Safae ELHAJBENALI, s'adresse aux étudiants universitaires en génie électrique et informatique. Il introduit les fondements de l'analyse numérique, un domaine essentiel pour traduire des modèles mathématiques complexes en solutions informatiques concrètes.
Le document s'articule autour des thématiques suivantes :
- La gestion des erreurs, les normes matricielles et le conditionnement ;
- Les méthodes de résolution directes (LU, Cholesky) ;
- Les algorithmes itératifs et leurs critères de convergence (Jacobi, Gauss-Seidel).
Cet ouvrage permet de maîtriser les outils nécessaires au traitement numérique de problèmes réels.
Cours d’Analyse Numérique : Fondamentaux et Résolution de Systèmes
Ce cours d'analyse numérique constitue un domaine essentiel des mathématiques appliquées. Il permet de résoudre des problèmes complexes grâce à l'informatique. Ce chapitre pose les bases de cette discipline en définissant son champ d'action, son interaction avec les ordinateurs et les concepts fondamentaux de normes matricielles et de gestion des erreurs.
1. Introduction et définitions
1.1 Qu’est-ce que l’analyse numérique ?
L’analyse numérique est une branche des mathématiques appliquées née de la fondation en 1947 de l'« Institute of Numerical Analysis » à l’Université de Californie de Los Angeles. Son objectif est de donner une réponse numérique à des problèmes qui n’ont pas de solution analytique (une solution exacte calculée par des formules symboliques, sans approximation) ou de concevoir et d’étudier des méthodes de résolution de certains problèmes mathématiques, en général issus de la modélisation de problèmes réels, et dont on cherche à calculer la solution à l’aide d’un ordinateur.
Exemple 1.1 : Calculer l’intégrale I = ∫ f(x) dx, lorsque la fonction f n'a pas de primitive simple. Grâce à l'analyse numérique, on peut obtenir une valeur approchée de I.
L’analyse numérique se distingue des méthodes analytiques (résolues à la main) en fournissant des résultats approchés. Elle est fondamentale pour traiter des problèmes issus de la modélisation de phénomènes réels, où une solution exacte est souvent impossible ou trop complexe à obtenir. Elle permet d’évaluer et de développer les processus de résolution à partir de données numériques accessibles par l’expérience.
1.2 Analyse numérique et ordinateur
Les applications des mathématiques s’étendent à tous les secteurs d’activité grâce aux ordinateurs et à leur rapidité de calcul. L’ordinateur est un outil incontournable pour simuler et modéliser les systèmes. Il existe souvent plusieurs façons d’approcher un problème pour le résoudre, ce qui nécessite l’utilisation d’algorithmes.
Définition 1.1 : On appelle algorithme un processus ou une méthode numérique pour la résolution d’un problème à partir de données accessibles. Le processus suit généralement ce schéma : Données d’entrée → algorithme → Données de sortie.
Définition 1.2 : Un organigramme est une représentation schématique de toutes les possibilités pour résoudre un problème considéré, c'est-à-dire une succession de calculs et de décisions traduisant le processus de résolution.
Conditions d'un bon algorithme :
- Rapidité : Réduire au maximum le nombre des opérations menant au résultat.
- Précision : Gérer toutes les erreurs commises lors du calcul (modélisation, données, représentation informatique ou troncature).
- Souplesse : L’algorithme doit être facilement transposable à des problèmes différents.
1.3 Difficultés liées à l’outil informatique
Un nombre réel est considéré comme connu numériquement si l'on connaît un certain nombre de chiffres de son développement décimal et la précision associée. Les opérations algébriques sur ordinateur sont des approximations des opérations mathématiques réelles.
Exemple : L'associativité
Considérons u = (x + y) - x et v = y + (x - x). Algébriquement, u = v. Cependant, en informatique, si x = 1 et y = 10-17, la précision limitée peut mener à u = 0 (car y est négligé face à x) alors que v = 10-17. La mémoire de l’ordinateur étant finie, elle utilise une représentation binaire qui ne peut pas stocker exactement des nombres avec une infinité de chiffres après la virgule comme 1/3 ou √2.
1.4 Les erreurs en analyse numérique
Les erreurs sont classées en deux grands groupes : les erreurs de modélisation et les erreurs numériques.
- Erreurs de modèle : Dues à l'idéalisation des systèmes (ex: considérer une planète comme parfaitement sphérique).
- Erreurs d’entrée : Dues à l'imprécision des mesures physiques (π, gravité g, etc.).
- Erreurs d’algorithme : Dues aux opérations arithmétiques et à la précision de la machine.
- Erreurs de sortie : Résultantes de l'accumulation des erreurs précédentes.
Mesure de l'erreur : L’erreur absolue est ∆x = |x - x̃| et l’erreur relative est ∆xrel = |x - x̃| / |x|. En pratique, comme la valeur exacte x est inconnue, on cherche à majorer ces erreurs par des estimations.
2. Résolution des systèmes linéaires A x = b
2.1 Problématique et méthodes directes
Pour un système de n équations à n inconnues, on a unicité de la solution si la matrice A est inversible (det(A) ≠ 0). Bien que la formule de Cramer existe, son coût computationnel est prohibitif : pour un système 50x50, le calcul prendrait des milliards d'années même avec un ordinateur ultra-rapide.
Les méthodes directes (comme la factorisation LU) fournissent la solution en un nombre fini d'étapes. La factorisation LU consiste à décomposer la matrice A en un produit d'une matrice triangulaire inférieure L et d'une matrice triangulaire supérieure U.
2.2 Méthodes itératives
Ces méthodes sont privilégiées pour les matrices creuses (contenant beaucoup de zéros). On construit une suite de vecteurs {xk} qui converge vers la solution exacte x. Le système est transformé sous la forme d'un point fixe : x = Bx + c.
Critères de convergence : Une méthode itérative converge si et seulement si le rayon spectral ρ(B) (la plus grande valeur propre en module de la matrice d'itération B) est strictement inférieur à 1.
2.3 Algorithmes classiques
- Méthode de Jacobi : Décompose la matrice A en utilisant sa diagonale pour définir l'itération.
- Méthode de Gauss-Seidel : Utilise les nouvelles composantes du vecteur dès qu'elles sont calculées pour accélérer la convergence.
- Méthode de Relaxation : Introduit un paramètre ω (compris entre 0 et 2) pour optimiser la vitesse de convergence. Pour une matrice symétrique définie positive, la convergence est assurée si 0 < ω < 2.
Questions Fréquemment Posées (FAQ)
Qu'est-ce que l'analyse numérique ?
L'analyse numérique est une branche des mathématiques appliquées qui conçoit et étudie des méthodes algorithmiques pour obtenir des solutions numériques approchées à des problèmes n'ayant pas de solution analytique exacte ou étant trop complexes à résoudre manuellement.
Pourquoi privilégier les méthodes itératives pour les grandes matrices ?
Les méthodes itératives sont plus efficaces pour les grandes matrices creuses car elles nécessitent moins de mémoire et moins d'opérations par étape que les méthodes directes. Elles permettent d'obtenir une approximation suffisante de la solution beaucoup plus rapidement.
Quelle est la différence entre l'erreur absolue et l'erreur relative ?
L'erreur absolue mesure l'écart brut entre la valeur exacte et la valeur approchée, tandis que l'erreur relative rapporte cet écart à la taille de la valeur exacte, permettant ainsi d'évaluer la précision réelle d'un calcul indépendamment de l'échelle des nombres.