Analyse numérique
213146
29729042
2008-05-19T13:18:58Z
Mro
335458
hom [[convergence]]
{{ébauche|analyse}}
[[Image:FEM car crash1.jpg|thumb|right|300px|Simulation numérique d'un [[crash (aviation)|crash]] de véhicule]]
L’'''analyse numérique''' est une discipline des [[mathématiques]]. Elle s’intéresse tant aux fondements théoriques qu’à la mise en pratique des méthodes permettant de résoudre, par des calculs purement numériques, des problèmes d’[[analyse (mathématiques)|analyse]] mathématique.
Plus formellement, l’'''analyse numérique''' est l’étude des [[Algorithmique|algorithmes]] permettant de résoudre les problèmes de ''mathématiques continues'' (distinguées des [[mathématiques discrètes]]). Cela signifie qu’elle s’occupe principalement de répondre numériquement à des questions à [[Analyse réelle|variable réelle]] ou [[Analyse complexe|complexe]] comme l’[[algèbre linéaire]] numérique sur les champs réels ou complexes, la recherche de solution numérique d’[[équation différentielle|équations différentielles]] et d’autres problèmes liés survenant dans les [[sciences physiques]] et l’[[ingénierie]].
: ''Sa mise en œuvre pratique et ses domaines d’application sont décrits plus complètement dans l’article [[calcul numérique]].''
==Introduction générale==
Certains problèmes de mathématique continue peuvent être résolus de façon exacte par un algorithme. Ces algorithmes sont appelés ''méthodes directes''. Des exemples sont l’[[élimination de Gauss-Jordan]] pour la résolution d’un [[système d'équations linéaires|système d’équations linéaires]] et l’[[algorithme du simplexe]] en [[programmation linéaire]].
Cependant, aucune méthode directe n’est connue pour certains problèmes (de plus, pour une classe de problèmes dits [[NP complet]]s, aucun algorithme de calcul direct en temps polynomial n'est connu à ce jour). Dans de tels cas, il est parfois possible d’utiliser une [[méthode itérative]] pour tenter de déterminer une approximation de la solution. Une telle méthode démarre depuis une valeur devinée ou estimée grossièrement et trouve des approximations successives qui devraient [[convergence numérique|converger]] vers la solution sous certaines conditions. Même quand une méthode directe existe cependant, une méthode itérative peut être préférable car elle est souvent plus efficace et même souvent plus stable (notamment elle permet le plus souvent de corriger des erreurs mineures dans les calculs intermédiaires).
Par ailleurs, certains problèmes continus peuvent parfois être remplacés par un problème discret dont la solution est connue pour approcher celle du problème continu ; ce procédé est appelé ''discrétisation''. Par exemple la solution d’une [[équation différentielle]] est une fonction. Cette fonction peut être représentée de façon approchée par une quantité finie de données, par exemple par sa valeur en un nombre fini de points de son domaine de définition, même si ce domaine est continu.
L’utilisation de l’analyse numérique est grandement facilitée par les [[ordinateurs]]. L’accroissement de la disponibilité et de la puissance des ordinateurs depuis la seconde moitié du {{XXe siècle}} a permis l’application de l’analyse numérique dans de nombreux domaines scientifiques, techniques et économiques, avec souvent des effets révolutionnaires.
===La génération et la propagation des erreurs===
L’étude des erreurs forme une partie importante de l’analyse numérique. Les erreurs introduites dans la solution d’un problème ont plusieurs origines. Les [[erreur d'arrondi|erreurs d’arrondis]] surviennent car il est impossible de représenter en pratique tous les [[nombre réel|nombres réels]] exactement sur une [[machine à états finis]] (ce que sont en fin de compte tous les [[ordinateur]]s numériques). Les erreurs de [[troncature]] sont commises par exemple quand une [[méthode itérative]] est terminée et que la solution approchée obtenue diffère de la solution exacte. De façon similaire, la [[discrétisation]] d’un problème (aussi appelée [[quantification]] dans les applications pratiques de calcul numérique) induit une [[erreur de discrétisation]] ([[erreur de quantification]] dans les applications pratiques) car la solution du problème discret ne coïncide pas exactement avec la solution du problème continu.
Une fois que l’erreur est générée, elle se propagera généralement tout au long du calcul. Cela conduit à la notion de [[stabilité numérique]] : un algorithme est numériquement stable si une erreur, une fois générée, ne croît pas trop durant le calcul (dans une méthode de calcul itératif, une erreur trop grande peut dans certains cas faire diverger l’algorithme qui ne parviendra pas à approcher la solution). Cela n’est possible que si le problème est [[bien conditionné]], ce qui signifie que la solution ne change que d'une faible quantité si les données du problème sont changées d'un montant faible. Ainsi, si un problème est mal conditionné, alors la moindre erreur dans les données provoquera une erreur très importante dans la solution trouvée.
Cependant, un algorithme qui résout un problème bien conditionné peut être ou ne pas être numériquement stable. Tout l’art de l’analyse numérique consiste à trouver un algorithme stable pour résoudre un problème mathématique [[problème bien posé|bien posé]]. Un art apparenté est de trouver des algorithmes stables permettant de résoudre des problèmes mal posés, ce qui requiert généralement la recherche d'un problème bien posé dont la solution est proche du problème mal posé, puis de résoudre à la place ce second problème bien posé.
==Domaines d’études==
Le champ de l’analyse numérique est divisé en différentes disciplines suivant le type de problème à résoudre, et chaque discipline étudie diverses méthodes de résolution des problèmes correspondants.
Parmi les exemples de méthodes d’'''analyse numérique''', en voici quelques-unes utilisées pour [[discrétisation|discrétiser]] un système d'équations : la [[méthode des éléments finis]], la [[méthode des différences finies]], la méthode des [[différences divisées]], la [[méthode des volumes finis]], ...
===Calcul des valeurs de fonctions===
Un des problèmes les plus simples est l’évaluation d’une fonction à un point donné. Mais même l’évaluation d’un polynôme approchant n’est pas aussi évidente qu’il y parait : la [[méthode de Horner]] est souvent plus efficace que la méthode élementaire basée sur les [[coefficient]]s du polynôme développé et la simple somme de ses termes. Généralement, il est important d’estimer à l’avance et de contrôler les erreurs d’arrondis survenant lors de l’utilisation d’opérations arithmétiques en [[virgule flottante]].
===Interpolation, extrapolation et régression===
L’[[interpolation (mathématiques)|interpolation]] tente de résoudre ou d’approcher la solution au problème suivant : étant donné la valeur connue d'une certaine fonction en un certain nombre de points, quelle valeur prend cette fonction en un autre point quelconque situé entre deux points donnés ? Une méthode très simple est d’utiliser l’[[interpolation linéaire]], qui suppose que la fonction inconnue évolue linéairement entre chaque paire de points successifs connus. Cette méthode peut être généralisée en [[interpolation polynomiale]], qui est parfois plus précise (on peut en chiffer la précision si les [[dérivée]]s de la fonction sont connues jusqu'à l'ordre N pour une interpolation à N points) et nécessite de plus petites tables de valeurs connues, mais elle souffre du [[phénomène de Runge]].
D’autres méthodes d’interpolation utilisent des fonctions localisées telles que les [[spline]]s ou la [[compression par ondelettes]].
L’[[extrapolation]] est très similaire à l’interpolation, sauf que cette fois on veut déterminer la valeur d’une fonction en un point situé hors de l’intervalle des points connus. Dans certains cas (par exemple pour l’extrapolation de valeurs de fonctions cycliques, logarithmiques ou exponentielles), il est possible de réduire un problème d’extrapolation dans un domaine de définition très étendu voire infini, à un problème d’interpolation dans le sous-espace fini contenant les points connus.
La [[régression mathématique|régression]] est aussi similaire, mais prend en compte le fait que les données connues sont aussi imprécises. Étant donné certains points, et la mesure de la valeur d’une fonction à ces points (avec une erreur maximale estimée), on veut déterminer la fonction inconnue. La [[méthode des moindres carrés]] est une façon populaire de procéder.
===Résolution d’équations et systèmes d'équations===
Un autre problème fondamental est le calcul des solutions d’une [[équation]] donnée. Deux cas sont communément distingués, suivant que l’équation est [[équation linéaire|linéaire]] ou non.
De nombreux efforts ont été consacrés au développement de méthodes de résolution de [[système d'équations linéaires|systèmes d’équations linéaires]]. Les méthodes standards incluent l’[[élimination de Gauss-Jordan]], et la [[décomposition LU]]. Les méthodes itératives telles que la [[méthode du gradient conjugué]] sont généralement préférées sur les larges systèmes d’équations.
Les [[Algorithme de recherche d'un zéro d'une fonction|algorithmes de recherche de racines d’une fonction]] sont utilisés pour résoudre les équations non linéaires (elles sont nommées ainsi car la racine d’une fonction est un argument pour lequel la fonction retourne zéro). Si la fonction est [[dérivée|différentiable]] et que sa dérivée est connue, alors la [[méthode de Newton]] est un choix populaire. La [[linéarisation]] est une autre technique pour la résolution d’équations non linéaires.
===Optimisation===
{{Article détaillé|Optimisation (mathématiques)}}
Les problèmes d’optimisation recherchent le point auquel une fonction donnée est maximale (ou minimale). Souvent, un tel point doit aussi satisfaire certaines [[contrainte]]s.
Le champ d’application de l’optimisation est lui-même découpé en sous-champs, suivant la forme de la fonction objective et celle de la contrainte. Par exemple, la [[programmation linéaire]] traite du cas où la fonction objective et les contraintes sont toutes linéaires. Une méthode célèbre de programmation linéaire est l’[[algorithme du simplexe]].
La méthode des [[Multiplicateur de Lagrange|multiplicateurs de Lagrange]] peut être utilisée pour réduire les problèmes d’optimisation avec contraintes en problèmes d’optimisation sans contraintes.
===Évaluation des intégrales===
{{Article détaillé2|Calcul numérique d'une intégrale|Calcul numérique d’une intégrale}}
L’intégration numérique, également connue comme [[Calcul numérique d'une intégrale|quadrature numérique]], recherche la valeur d’une [[intégrale]] définie. Les méthodes populaires sont basées sur les [[formules de Newton-Cotes]] (avec par exemple la [[méthode du point médian]] {{en}} ou la [[méthode des trapèzes]]) ou utilisent les [[méthodes de quadrature de Gauss]]. Cependant si la dimension du domaine d’intégration devient large, ces méthodes deviennent aussi prohibitivement onéreuses. Dans cette situation, on peut utiliser une [[méthode de Monte-Carlo]], une [[méthode de quasi-Monte-Carlo]] ou, dans des dimensions modestement larges, la méthode des [[grille incomplète|grilles incomplètes]].
===Équations différentielles===
:''Articles principaux : [[Équation numérique différentielle ordinaire]], [[Équation numérique aux dérivées partielles]].''
L'analyse numérique traite également du calcul (de façon approchée) des solutions d’[[équation différentielle|équations différentielles]], que ce soit des équations différentielles ordinaires, ou des [[équation aux dérivées partielles|équations aux dérivées partielles]].
Les équations aux dérivées partielles sont résolues en discrétisant d’abord l’équation, en l’amenant dans un sous-espace de [[dimension]] finie. Ceci peut être réalisé par une [[méthode des éléments finis]], une [[méthode des différences finies]] ou, particulièrement dans l’ingénierie, une [[méthode des volumes finis]]. La justification théorique de ces méthodes implique souvent des théorèmes de l’[[Analyse fonctionnelle (mathématiques)|analyse fonctionnelle]]. Ceci réduit le problème à la résolution d’une équation algébrique.
==Voir aussi==
<!--
{{wikibooks|Analyse numérique|l’analyse numérique}}
-->
* [[Calcul numérique]]
* [[Methode de la fausse position]] ( Méthode d'interpolation linéaire, false position , regula falsi)
* {{en}} [[:en:List of numerical analysis topics|Liste de sujets sur l’analyse numérique]]
* {{en}} [[:en:List of important publications in mathematics#Numerical analysis|Liste de publications importantes en analyse numérique]]
==Liens externes==
* {{fr}} [http://www.math-linux.com Cours d'analyse numérique] www.math-linux.com
* {{fr}} [http://www.euro-se.fr/exemples.html Exemples d'analyse numérique] www.euro-se.fr
* {{fr}} [http://cel.archives-ouvertes.fr/cel-00092946 Méthodes d'analyse numérique] cours optionnel au DEA de Modélisation Dynamique et Statistique des Systèmes Complexes, une introduction aux méthodes d'analyse numérique très largement utilisées en physique afin de résoudre les équations algébriques ou différentielles.
* {{fr}} [http://www.math-linux.com/spip.php?rubrique10 Résolutions numériques de système linéaire]
* {{en}} [http://www.dmoz.org/Science/Math/Numerical_Analysis/ Numerical analysis DMOZ category]
*{{fr}} [http://www.polymorphe.org/telecharger_275_cours_Analyse_Numerique Cours d'analyse numérique] {{pdf}}
*{{fr}} [http://www.univ-lr.fr/poles/sciences/formations/gc/master-mecanique.html Master Modélisation Numérique en Mécanique], Université de La Rochelle
==Références==
* {{en}} '''Nick Trefethen''', [http://web.comlab.ox.ac.uk/oucl/work/nick.trefethen/defn.ps.gz ''The definition of numerical analysis''], paru dans ''SIAM News'', Novembre 1992.
* {{de}}/{{en}} [http://www-gdz.sub.uni-goettingen.de/cgi-bin/digbib.cgi?PPN362160546 ''Numerische Mathematik''] : copies complètes numérisées en ligne des volumes 1-66, couvrant les années 1959 à 1994, d’un journal bien connu d’analyse numérique.
{{Domaines des mathématiques}}
{{portail mathématiques}}
[[Catégorie:Analyse numérique|*]]
[[cs:Numerická matematika]]
[[de:Numerische Mathematik]]
[[en:Numerical analysis]]
[[es:Análisis numérico]]
[[it:Analisi numerica]]
[[ja:数値解析]]
[[ko:수치 해석]]
[[nl:Numerieke wiskunde]]
[[pl:Metoda numeryczna]]
[[pt:Análise numérica]]
[[ro:Analiză numerică]]
[[ru:Вычислительная математика]]
[[su:Analisis numeris]]
[[sv:Beräkningsvetenskap]]