Analyse numérique

0

L’analyse numérique est l’étude des algorithmes qui utilisent l’ approximation numérique (par opposition aux manipulations symboliques ) pour les problèmes d’ analyse mathématique ( par opposition aux mathématiques discrètes ). L’analyse numérique trouve des applications dans tous les domaines de l’ingénierie et des sciences physiques, et au 21e siècle également dans les sciences de la vie et sociales, la médecine, les affaires et même les arts. La croissance actuelle de la puissance de calcul a permis l’utilisation d’analyses numériques plus complexes, fournissant des modèles mathématiques détaillés et réalistes en science et en ingénierie. Des exemples d’analyse numérique comprennent : les équations différentielles ordinaires telles que trouvées dansla mécanique céleste (prédire les mouvements des planètes, des étoiles et des galaxies), l’algèbre linéaire numérique dans l’analyse des données, [2] [3] [4] et les équations différentielles stochastiques et les chaînes de Markov pour simuler les cellules vivantes en médecine et en biologie.

Tablette d’argile babylonienne YBC 7289 (vers 1800–1600 avant JC) avec annotations. L’approximation de la racine carrée de 2 est de quatre chiffres sexagésimaux , soit environ six chiffres décimaux . 1 + 24/60 + 51/60 2 + 10/60 3 = 1,41421296… [1]

Avant les ordinateurs modernes, les méthodes numériques reposaient souvent sur des formules d’ interpolation manuelles , utilisant des données provenant de grands tableaux imprimés. Depuis le milieu du XXe siècle, les ordinateurs calculent à la place les fonctions requises, mais bon nombre des mêmes formules continuent d’être utilisées dans les algorithmes logiciels. [5]

Le point de vue numérique remonte aux premiers écrits mathématiques. Une tablette de la Yale Babylonian Collection ( YBC 7289 ), donne une approximation numérique sexagésimale de la racine carrée de 2 , la longueur de la diagonale dans un carré unitaire .

L’analyse numérique perpétue cette longue tradition : plutôt que de donner des réponses symboliques exactes traduites en chiffres et applicables uniquement aux mesures du monde réel, des solutions approximatives dans des limites d’erreur spécifiées sont utilisées.

Introduction générale

L’objectif général du domaine de l’analyse numérique est la conception et l’analyse de techniques pour donner des solutions approximatives mais précises à des problèmes difficiles, dont la variété est suggérée par ce qui suit :

  • Les méthodes numériques avancées sont essentielles pour rendre possible la prévision numérique du temps .
  • Le calcul de la trajectoire d’un engin spatial nécessite la résolution numérique précise d’un système d’équations différentielles ordinaires.
  • Les constructeurs automobiles peuvent améliorer la sécurité de leurs véhicules en utilisant des simulations informatiques d’accidents de voiture. De telles simulations consistent essentiellement à résoudre numériquement des équations aux dérivées partielles.
  • Les hedge funds (fonds d’investissement privés) utilisent des outils de tous les domaines de l’analyse numérique pour tenter de calculer la valeur des actions et des dérivés plus précisément que les autres acteurs du marché.
  • Les compagnies aériennes utilisent des algorithmes d’optimisation sophistiqués pour décider des prix des billets, des affectations d’avions et d’équipages et des besoins en carburant. Historiquement, de tels algorithmes ont été développés dans le domaine chevauchant de la recherche opérationnelle .
  • Les compagnies d’assurance utilisent des programmes numériques pour l’analyse actuarielle .

Le reste de cette section décrit plusieurs thèmes importants de l’analyse numérique.

Histoire

Le domaine de l’analyse numérique est antérieur à l’invention des ordinateurs modernes de plusieurs siècles. L’interpolation linéaire était déjà utilisée il y a plus de 2000 ans. De nombreux grands mathématiciens du passé étaient préoccupés par l’analyse numérique [5] , comme en témoignent les noms d’algorithmes importants comme la méthode de Newton , le polynôme d’interpolation de Lagrange , l’élimination gaussienne ou La méthode d’Euler .

Pour faciliter les calculs à la main, de grands livres ont été produits avec des formules et des tableaux de données tels que des points d’interpolation et des coefficients de fonction. En utilisant ces tables, souvent calculées à 16 décimales ou plus pour certaines fonctions, on pourrait rechercher des valeurs à brancher sur les formules données et obtenir de très bonnes estimations numériques de certaines fonctions. Le travail canonique dans le domaine est la publication NIST éditée par Abramowitz et Stegun , un livre de plus de 1000 pages d’un très grand nombre de formules et de fonctions couramment utilisées et leurs valeurs à de nombreux points. Les valeurs des fonctions ne sont plus très utiles lorsqu’un ordinateur est disponible, mais la grande liste de formules peut toujours être très pratique.

La calculatrice mécanique a également été développée comme outil de calcul manuel. Ces calculatrices sont devenues des ordinateurs électroniques dans les années 1940, et on a alors constaté que ces ordinateurs étaient également utiles à des fins administratives. Mais l’invention de l’ordinateur a également influencé le domaine de l’analyse numérique, [5] puisque désormais des calculs plus longs et plus compliqués pouvaient être effectués.

Méthodes directes et itératives

Considérez le problème de la résolution

3 x 3 + 4 = 28

pour la quantité inconnue x .

Méthode directe

3 x 3 + 4 = 28.
Soustraire 4 3 x 3 = 24.
Diviser par 3 x3 = 8 .
Prendre des racines cubiques x = 2.

Pour la méthode itérative, appliquez la méthode de bissection à f ( x ) = 3 x 3 − 24. Les valeurs initiales sont a = 0, b = 3, f ( a ) = −24, f ( b ) = 57.

Méthode itérative

un b milieu f (moyen)
0 3 1.5 −13,875
1.5 3 2.25 10h17…
1.5 2.25 1.875 −4.22…
1.875 2.25 2,0625 2.32…

De ce tableau, on peut conclure que la solution est comprise entre 1,875 et 2,0625. L’algorithme peut renvoyer n’importe quel nombre dans cette plage avec une erreur inférieure à 0,2.

Discrétisation et intégration numérique Schumacher (Ferrari) in practice at USGP 2005.jpg Schumacher (Ferrari) in practice at USGP 2005.jpg

Dans une course de deux heures, la vitesse de la voiture est mesurée à trois instants et enregistrée dans le tableau suivant.

Temps 0:20 1:00 1:40
km/h 140 150 180

Une discrétisation serait de dire que la vitesse de la voiture a été constante de 0h00 à 0h40, puis de 0h40 à 1h20 et enfin de 1h20 à 2h00. Par exemple, la distance totale parcourue au cours des 40 premières minutes est d’environ (2/3h × 140 km/h ) = 93,3 kilomètres . Cela nous permettrait d’estimer la distance totale parcourue comme93,3 km +100 kilomètres +120 kilomètres =313,3 km , qui est un exemple d’ intégration numérique (voir ci-dessous) utilisant une somme de Riemann , car le déplacement est l’ intégrale de la vitesse.

Problème mal conditionné : Soit la fonction f ( x ) = 1/( x − 1) . Notez que f (1.1) = 10 et f (1.001) = 1000 : un changement de x inférieur à 0,1 se transforme en un changement de f ( x ) de près de 1000. Évaluer f ( x ) près de x = 1 est une mauvaise idée. problème conditionné.

Problème bien conditionné : En revanche, évaluer la même fonction f ( x ) = 1/( x − 1) près de x = 10 est un problème bien conditionné. Par exemple, f (10) = 1/9 ≈ 0,111 et f (11) = 0,1 : un changement modeste de x entraîne un changement modeste de f ( x ).

Les méthodes directes calculent la solution d’un problème en un nombre fini d’étapes. Ces méthodes donneraient la réponse précise si elles étaient exécutées en arithmétique à précision infinie . Les exemples incluent l ‘ élimination gaussienne , la méthode de factorisation QR pour résoudre des systèmes d’ équations linéaires et la méthode simplex de programmation linéaire . En pratique, la précision finie est utilisée et le résultat est une approximation de la vraie solution (en supposant la stabilité ).

Contrairement aux méthodes directes, les méthodes itératives ne sont pas censées se terminer en un nombre fini d’étapes. Partant d’une estimation initiale, les méthodes itératives forment des approximations successives qui ne convergent vers la solution exacte qu’à la limite. Un test de convergence, impliquant souvent le résidu , est spécifié afin de décider quand une solution suffisamment précise a (espérons-le) été trouvée. Même en utilisant une arithmétique à précision infinie, ces méthodes n’atteindraient pas la solution en un nombre fini d’étapes (en général). Les exemples incluent la méthode de Newton, la méthode de bissection et l’ Itération de Jacobi . En algèbre matricielle computationnelle, les méthodes itératives sont généralement nécessaires pour les grands problèmes. [6][7] [8] [9]

Les méthodes itératives sont plus courantes que les méthodes directes en analyse numérique. Certaines méthodes sont directes en principe mais sont généralement utilisées comme si elles ne l’étaient pas, par exemple GMRES et la méthode du gradient conjugué . Pour ces méthodes, le nombre d’étapes nécessaires pour obtenir la solution exacte est si grand qu’une approximation est acceptée de la même manière que pour une méthode itérative.

Discrétisation

De plus, les problèmes continus doivent parfois être remplacés par un problème discret dont on sait que la solution se rapproche de celle du problème continu ; ce processus est appelé ‘ discrétisation ‘. Par exemple, la solution d’une équation différentielle est une fonction . Cette fonction doit être représentée par une quantité finie de données, par exemple par sa valeur en un nombre fini de points de son domaine, même si ce domaine est un continuum .

Génération et propagation des erreurs

L’étude des erreurs constitue une partie importante de l’analyse numérique. Il existe plusieurs façons d’introduire une erreur dans la solution du problème.

Arrondi

Les erreurs d’ arrondi surviennent parce qu’il est impossible de représenter exactement tous les nombres réels sur une machine à mémoire finie (ce que sont tous les ordinateurs numériques pratiques ).

Erreur de troncature et de discrétisation

Des erreurs de troncature sont commises lorsqu’une méthode itérative est terminée ou qu’une procédure mathématique est approchée et que la solution approchée diffère de la solution exacte. De même, la discrétisation induit une erreur de discrétisation car la solution du problème discret ne coïncide pas avec la solution du problème continu. Dans l’exemple ci-dessus pour calculer la solution de 3 X 3 + 4 = 28 {displaystyle 3x^{3}+4=28} 3x^{3}+4=28 3x^{3}+4=28, après dix itérations, la racine calculée est d’environ 1,99. Par conséquent, l’erreur de troncature est d’environ 0,01.

Une fois qu’une erreur est générée, elle se propage dans le calcul. Par exemple, l’opération + sur un ordinateur est inexacte. Un calcul du type a + b + c + d + e {displaystyle a+b+c+d+e} {displaystyle a+b+c+d+e} {displaystyle a+b+c+d+e}est encore plus inexact.

Une erreur de troncature est créée lors de l’approximation d’une procédure mathématique. Pour intégrer exactement une fonction, il faut trouver une somme infinie de régions, mais numériquement seule une somme finie de régions peut être trouvée, et donc l’approximation de la solution exacte. De même, pour différencier une fonction, l’élément différentiel s’approche de zéro, mais numériquement seule une valeur non nulle de l’élément différentiel peut être choisie.

Stabilité numérique et problèmes bien posés

La Stabilité numérique est une notion en analyse numérique. Un algorithme est dit « numériquement stable » si une erreur, quelle qu’en soit la cause, n’augmente pas beaucoup au cours du calcul. [10] Cela se produit si le problème est « bien conditionné », ce qui signifie que la solution ne change que d’une petite quantité si les données du problème sont modifiées d’une petite quantité. [10] Au contraire, si un problème est « mal conditionné », alors toute petite erreur dans les données deviendra une grande erreur. [dix]

Le problème d’origine et l’algorithme utilisé pour résoudre ce problème peuvent être « bien conditionnés » ou « mal conditionnés », et toute combinaison est possible.

Ainsi, un algorithme qui résout un problème bien conditionné peut être numériquement stable ou numériquement instable. Un art de l’analyse numérique consiste à trouver un algorithme stable pour résoudre un problème mathématique bien posé. Par exemple, calculer la racine carrée de 2 (qui est approximativement 1,41421) est un problème bien posé. De nombreux algorithmes résolvent ce problème en partant d’une approximation initiale x 0 pour 2 {displaystyle {sqrt {2}}} {sqrt {2}} {sqrt {2}}, par exemple x 0 = 1,4, puis en calculant des suppositions améliorées x 1 , x 2 , etc. Une de ces méthodes est la célèbre Méthode babylonienne , qui est donnée par x k +1 = x k /2 + 1/ x k . Une autre méthode, appelée ‘méthode X’, est donnée par x k +1 = ( x k 2 − 2) 2 + x k . [note 1] Quelques itérations de chaque schéma sont calculées sous forme de tableau ci-dessous, avec des suppositions initiales x 0= 1,4 et x 0 = 1,42.

babylonien babylonien Méthode X Méthode X
x 0 = 1,4 x 0 = 1,42 x 0 = 1,4 x 0 = 1,42
x1 = 1,4142857 x1 = 1,41422535 × 1 = 1,4016 x 1 = 1,42026896
x2 = 1,414213564 x2 = 1,41421356242 x2 = 1,4028614 x2 = 1,42056
x 1000000 = 1,41421… x27 = 7280,2284

Observez que la Méthode babylonienne converge rapidement quelle que soit la supposition initiale, alors que la méthode X converge extrêmement lentement avec la supposition initiale x 0 = 1,4 et diverge pour la supposition initiale x 0 = 1,42. Par conséquent, la Méthode babylonienne est numériquement stable, tandis que la méthode X est numériquement instable.

La Stabilité numérique est affectée par le nombre de chiffres significatifs conservés par la machine. Si une machine est utilisée qui ne conserve que les quatre chiffres décimaux les plus significatifs, un bon exemple de perte de signification peut être donné par les deux fonctions équivalentes f ( x ) = x ( x + 1 − x ) {displaystyle f(x)=xleft({sqrt {x+1}}-{sqrt {x}}right)} {displaystyle f(x)=xleft({sqrt {x+1}}-{sqrt {x}}right)} {displaystyle f(x)=xleft({sqrt {x+1}}-{sqrt {x}}right)}et g ( x ) = x x + 1 + x . {displaystyle g(x)={frac {x}{{sqrt {x+1}}+{sqrt {x}}}}.} {displaystyle g(x)={frac {x}{{sqrt {x+1}}+{sqrt {x}}}}.} {displaystyle g(x)={frac {x}{{sqrt {x+1}}+{sqrt {x}}}}.} Comparer les résultats de f ( 500 ) = 500 ( 501 − 500 ) = 500 ( 22.38 − 22.36 ) = 500 ( 0.02 ) = 10 {displaystyle f(500)=500left({sqrt {501}}-{sqrt {500}}right)=500left(22.38-22.36right)=500(0.02)=10}  f(500)=500 left(sqrt{501}-sqrt{500} right)=500 left(22.38-22.36 right)=500(0.02)=10  f(500)=500 left(sqrt{501}-sqrt{500} right)=500 left(22.38-22.36 right)=500(0.02)=10 et g ( 500 ) = 500 501 + 500 = 500 22.38 + 22.36 = 500 44.74 = 11.17 {displaystyle {begin{alignedat}{3}g(500)&={frac {500}{{sqrt {501}}+{sqrt {500}}}}\&={frac { 500}{22.38+22.36}}\&={frac {500}{44.74}}=11.17end{alignedat}}}  begin{alignat}{3}g(500)&=frac{500}{sqrt{501}+sqrt{500}}\ &=frac{500}{22.38+22.36}\ &=frac{500}{44.74}=11.17 end{alignat}  begin{alignat}{3}g(500)&=frac{500}{sqrt{501}+sqrt{500}}\ &=frac{500}{22.38+22.36}\ &=frac{500}{44.74}=11.17 end{alignat} en comparant les deux résultats ci-dessus, il est clair que la perte de signification (causée ici par l’annulation catastrophique de la soustraction d’approximations aux nombres voisins 501 {displaystyle {sqrt {501}}} {displaystyle {sqrt {501}}} {displaystyle {sqrt {501}}}et 500 {displaystyle {sqrt {500}}} {displaystyle {sqrt {500}}} {displaystyle {sqrt {500}}}, bien que la soustraction soit calculée exactement) a un effet énorme sur les résultats, même si les deux fonctions sont équivalentes, comme indiqué ci-dessous f ( x ) = x ( x + 1 − x ) = x ( x + 1 − x ) x + 1 + x x + 1 + x = x ( x + 1 ) 2 − ( x ) 2 x + 1 + x = x x + 1 − x x + 1 + x = x 1 x + 1 + x = x x + 1 + x = g ( x ) {displaystyle {begin{alignedat}{4}f(x)&=xleft({sqrt {x+1}}-{sqrt {x}}right)\&=xleft( {sqrt {x+1}}-{sqrt {x}}right){frac {{sqrt {x+1}}+{sqrt {x}}}{{sqrt {x+1 }}+{sqrt {x}}}}\&=x{frac {({sqrt {x+1}})^{2}-({sqrt {x}})^{2} }{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {x+1-x}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {1}{{sqrt {x+1}}+{sqrt {x}}}}\&={frac {x}{{ sqrt {x+1}}+{sqrt {x}}}}\&=g(x)end{alignedat}}} {displaystyle {begin{alignedat}{4}f(x)&=xleft({sqrt {x+1}}-{sqrt {x}}right)\&=xleft({sqrt {x+1}}-{sqrt {x}}right){frac {{sqrt {x+1}}+{sqrt {x}}}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {({sqrt {x+1}})^{2}-({sqrt {x}})^{2}}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {x+1-x}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {1}{{sqrt {x+1}}+{sqrt {x}}}}\&={frac {x}{{sqrt {x+1}}+{sqrt {x}}}}\&=g(x)end{alignedat}}} {displaystyle {begin{alignedat}{4}f(x)&=xleft({sqrt {x+1}}-{sqrt {x}}right)\&=xleft({sqrt {x+1}}-{sqrt {x}}right){frac {{sqrt {x+1}}+{sqrt {x}}}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {({sqrt {x+1}})^{2}-({sqrt {x}})^{2}}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {x+1-x}{{sqrt {x+1}}+{sqrt {x}}}}\&=x{frac {1}{{sqrt {x+1}}+{sqrt {x}}}}\&={frac {x}{{sqrt {x+1}}+{sqrt {x}}}}\&=g(x)end{alignedat}}} La valeur souhaitée, calculée avec une précision infinie, est 11,174755…

  • L’exemple est une modification de celui tiré de Mathew; Méthodes numériques utilisant MATLAB, 3e éd.

Domaines d’étude

Le domaine de l’analyse numérique comprend de nombreuses sous-disciplines. Certains des principaux sont:

Calcul des valeurs des fonctions

Interpolation : En observant que la température varie de 20 degrés Celsius à 1h00 à 14 degrés à 3h00, une interpolation linéaire de ces données conclurait qu’elle était de 17 degrés à 2h00 et de 18,5 degrés à 13h30.

Extrapolation : Si le produit intérieur brut d’un pays a augmenté en moyenne de 5 % par an et était de 100 milliards l’an dernier, on peut extrapoler qu’il sera de 105 milliards cette année.

A line through 20 points A line through 20 points

Régression : Dans la régression linéaire, étant donné n points, une ligne est calculée qui passe aussi près que possible de ces n points.

How much for a glass of lemonade? How much for a glass of lemonade?

Optimisation : supposons que la limonade soit vendue sur un stand de limonade , à 1,00 $ le verre, que 197 verres de limonade puissent être vendus par jour, et que pour chaque augmentation de 0,01 $, un verre de limonade en moins soit vendu par jour. Si 1,485 $ pouvait être facturé, le profit serait maximisé, mais en raison de la contrainte de devoir facturer un montant d’un centime entier, facturer 1,48 $ ou 1,49 $ par verre rapportera le revenu maximum de 220,52 $ par jour.

Wind direction in blue, true trajectory in black, Euler method in red Wind direction in blue, true trajectory in black, Euler method in red

Équation différentielle : si 100 ventilateurs sont installés pour souffler de l’air d’un bout à l’autre de la pièce, puis qu’une plume tombe dans le vent, que se passe-t-il ? La plume suivra les courants d’air, ce qui peut être très complexe. Une approximation consiste à mesurer la vitesse à laquelle l’air souffle près de la plume chaque seconde et à faire avancer la plume simulée comme si elle se déplaçait en ligne droite à la même vitesse pendant une seconde, avant de mesurer à nouveau la vitesse du vent. C’est ce qu’on appelle La méthode d’Euler pour résoudre une équation différentielle ordinaire.

Un des problèmes les plus simples est l’évaluation d’une fonction en un point donné. L’approche la plus simple, qui consiste simplement à saisir le nombre dans la formule, n’est parfois pas très efficace. Pour les polynômes, une meilleure approche consiste à utiliser le schéma de Horner , car il réduit le nombre nécessaire de multiplications et d’additions. En règle générale, il est important d’estimer et de contrôler les erreurs d’arrondi résultant de l’utilisation de l’ arithmétique à virgule flottante .

Interpolation, extrapolation et régression

L’ interpolation résout le problème suivant : étant donné la valeur d’une fonction inconnue en un certain nombre de points, quelle valeur a cette fonction en un autre point entre les points donnés ?

L’extrapolation est très similaire à l’interpolation, sauf que maintenant la valeur de la fonction inconnue en un point qui est en dehors des points donnés doit être trouvée. [11]

La régression est également similaire, mais elle tient compte du fait que les données sont imprécises. Étant donné certains points et une mesure de la valeur d’une fonction à ces points (avec une erreur), la fonction inconnue peut être trouvée. La méthode des moindres carrés est un moyen d’y parvenir.

Résolution d’équations et de systèmes d’équations

Un autre problème fondamental est le calcul de la solution d’une équation donnée. On distingue couramment deux cas, selon que l’équation est linéaire ou non. Par exemple, l’équation 2 x + 5 = 3 {displaystyle 2x+5=3} 2x+5=3 2x+5=3est linéaire alors que 2 x 2 + 5 = 3 {displaystyle 2x^{2}+5=3} 2x^2+5=3 2x^2+5=3n’est pas.

Beaucoup d’efforts ont été consacrés au développement de méthodes de résolution de Systèmes d’équations linéaires . Les méthodes directes standard, c’est-à-dire les méthodes qui utilisent une décomposition matricielle sont l’élimination gaussienne , la décomposition LU , la décomposition de Cholesky pour les matrices symétriques (ou hermitiennes ) et définies positives , et la décomposition QR pour les matrices non carrées. Méthodes itératives telles que la méthode de Jacobi, la méthode de Gauss–Seidel , la méthode des sur-relaxations successives et la méthode du gradient conjugué [12]sont généralement préférés pour les grands systèmes. Des méthodes itératives générales peuvent être développées à l’aide d’un découpage matriciel .

Les algorithmes de recherche de racine sont utilisés pour résoudre des équations non linéaires (ils sont ainsi nommés car la racine d’une fonction est un argument pour lequel la fonction donne zéro). Si la fonction est différentiable et que la dérivée est connue, alors la méthode de Newton est un choix populaire. [13] [14] La linéarisation est une autre technique pour résoudre des équations non linéaires.

Résoudre des problèmes de valeur propre ou de valeur singulière

Plusieurs problèmes importants peuvent être formulés en termes de décompositions de valeurs propres ou de décompositions de valeurs singulières . Par exemple, l’ algorithme de compression d’image spectrale [15] est basé sur la décomposition en valeurs singulières. L’outil correspondant en statistique est appelé analyse en composantes principales .

Optimisation

Les problèmes d’optimisation demandent le point auquel une fonction donnée est maximisée (ou minimisée). Souvent, le point doit également satisfaire à certaines contraintes .

Le domaine de l’optimisation est en outre divisé en plusieurs sous-domaines, en fonction de la forme de la Fonction objectif et de la contrainte. Par exemple, la programmation linéaire traite le cas où la Fonction objectif et les contraintes sont linéaires. Une méthode célèbre en programmation linéaire est la méthode du simplexe.

La méthode des Multiplicateurs de Lagrange peut être utilisée pour réduire les problèmes d’optimisation avec contraintes à des problèmes d’optimisation sans contraintes.

Évaluation des intégrales

L’intégration numérique, parfois également connue sous le nom de quadrature numérique , demande la valeur d’une intégrale définie . [16] Les méthodes populaires utilisent l’une des formules de Newton-Cotes (comme la règle du milieu ou la règle de Simpson ) ou la quadrature gaussienne . [17] Ces méthodes reposent sur une stratégie « diviser pour mieux régner », dans laquelle une intégrale sur un ensemble relativement grand est décomposée en intégrales sur des ensembles plus petits. En dimension supérieure, où ces méthodes deviennent prohibitives en termes d’effort de calcul, on peut utiliser des méthodes de Monte Carlo ou quasi-Monte Carlo (voir Intégration de Monte Carlo[18] ), ou, dans des dimensions modestement grandes, la méthode des grilles creuses .

Équations différentielles

L’analyse numérique concerne également le calcul (de manière approximative) de la solution d’équations différentielles, à la fois des équations différentielles ordinaires et des équations aux dérivées partielles. [19]

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. [20] Cela peut être fait par une méthode d’élément fini , [21] [22] [23] une méthode de différence finie , [24] ou (en particulier dans l’ingénierie) une méthode de volume finie . [25] La justification théorique de ces méthodes implique souvent des théorèmes d’ analyse fonctionnelle . Cela réduit le problème à la solution d’une équation algébrique.

Logiciel

Depuis la fin du XXe siècle, la plupart des algorithmes sont implémentés dans une variété de langages de programmation. Le référentiel Netlib contient diverses collections de routines logicielles pour les problèmes numériques, principalement en Fortran et C . Les produits commerciaux mettant en œuvre de nombreux algorithmes numériques différents incluent les bibliothèques IMSL et NAG ; une alternative de logiciel libre est la bibliothèque scientifique GNU .

Au fil des ans, la Royal Statistical Society a publié de nombreux algorithmes dans ses statistiques appliquées (le code de ces fonctions “AS” est ici ); ACM de même, dans ses Transactions on Mathematical Software (le code “TOMS” est ici ). Le Naval Surface Warfare Center a publié à plusieurs reprises sa Library of Mathematics Subroutines (code ici ).

Il existe plusieurs applications de calcul numérique populaires telles que MATLAB , [26] [27] [28] TK Solver , S-PLUS et IDL [29] ainsi que des alternatives libres et open source telles que FreeMat , Scilab , [30] [ 31] GNU Octave (similaire à Matlab) et IT++ (une bibliothèque C++). Il existe également des langages de programmation tels que R [32] (similaire à S-PLUS), Julia , [33] et Python avec des bibliothèques telles que NumPy , SciPy [34][35] [36] et Sympy . Les performances varient considérablement : alors que les opérations vectorielles et matricielles sont généralement rapides, les boucles scalaires peuvent varier en vitesse de plus d’un ordre de grandeur. [37] [38]

De nombreux systèmes d’algèbre informatique tels que Mathematica bénéficient également de la disponibilité de l’arithmétique à précision arbitraire qui peut fournir des résultats plus précis. [39] [40] [41] [42]

De plus, n’importe quel tableur peut être utilisé pour résoudre des problèmes simples liés à l’analyse numérique . Excel , par exemple, a des centaines de fonctions disponibles , y compris pour les matrices, qui peuvent être utilisées en conjonction avec son “solveur” intégré .

Voir également

  • Analyse d’algorithmes
  • Science informatique
  • Physique computationnelle
  • Arithmétique d’intervalle
  • Liste des sujets d’analyse numérique
  • Méthode de linéarisation locale
  • Différenciation numérique
  • Recettes numériques
  • Numériques probabilistes
  • Calcul symbolique-numérique
  • Chiffres validés

Remarques

  1. ^ Ceci est une itération à virgule fixe pour l’équation x = ( x 2 − 2 ) 2 + x = f ( x ) {displaystyle x=(x^{2}-2)^{2}+x=f(x)} x=(x^2-2)^2+x=f(x) x=(x^2-2)^2+x=f(x), dont les solutions incluent 2 {displaystyle {sqrt {2}}} {sqrt {2}} {sqrt {2}}. Les itérations se déplacent toujours vers la droite puisque f ( x ) ≥ x {displaystyle f(x)geq x} f(x)geq x f(x)geq x. Ainsi x 1 = 1.4 < 2 {displaystyle x_{1}=1.4<{sqrt {2}}} x_1=1.4<sqrt{2} x_1=1.4<sqrt{2}converge et x 1 = 1.42 > 2 {displaystyle x_{1}=1.42>{sqrt {2}}} x_1=1.42>sqrt{2} x_1=1.42>sqrt{2}diverge.

Références

Citations

  1. ^ “Photographie, illustration et description de la tablette racine (2) de la collection babylonienne de Yale” . Archivé de l’original le 13 août 2012 . Récupéré le 2 octobre 2006 .
  2. ^ Demmel, JW (1997). Algèbre linéaire numérique appliquée. SIAM .
  3. ^ Ciarlet, PG, Miara, B., & Thomas, JM (1989). Introduction à l’algèbre linéaire numérique et à l’optimisation. La presse de l’Universite de Cambridge.
  4. ^ Trefethen, Lloyd; Bau III, David (1997). Algèbre linéaire numérique (1ère éd.). Philadelphie : SIAM .
  5. ^ un bc Brezinski, C., & Wuytack, L. (2012) . Analyse numérique : développements historiques au XXe siècle. Elsevier.
  6. ^ Saad, Y. (2003). Méthodes itératives pour les systèmes linéaires creux. SIAM.
  7. ^ Hageman, LA, & Young, DM (2012). Méthodes itératives appliquées. Société de messagerie.
  8. ^ Traub, JF (1982). Méthodes itératives pour la résolution d’équations. Société mathématique américaine.
  9. ^ Greenbaum, A. (1997). Méthodes itératives de résolution de systèmes linéaires. SIAM.
  10. ^ un bc Higham , NJ (2002). Précision et stabilité des algorithmes numériques (Vol. 80). SIAM.
  11. ^ Brezinski, C., & Zaglia, M. (2013). Méthodes d’extrapolation : théorie et pratique. Elsevier.
  12. ^ Hestenes, Magnus R.; Stiefel, Eduard (décembre 1952). “Méthodes de gradients conjugués pour résoudre des systèmes linéaires”. Journal de recherche du Bureau national des normes. 49 (6): 409.
  13. ^ Ezquerro Fernández, JA, & Hernández Verón, M. Á. (2017). Méthode de Newton : Une approche mise à jour de la théorie de Kantorovich. Birkhauser.
  14. ^ Peter Deuflhard, Méthodes de Newton pour les problèmes non linéaires. Invariance affine et algorithmes adaptatifs, deuxième édition imprimée. Série Mathématiques computationnelles 35, Springer (2006)
  15. ^ La décomposition de la valeur singulière et ses applications dans la compression d’image Archivé le 4 octobre 2006 à la Wayback Machine
  16. ^ Davis, PJ et Rabinowitz, P. (2007). Méthodes d’intégration numérique. Société de messagerie.
  17. ^ Weisstein, Eric W. “Quadrature gaussienne.” De MathWorld – Une ressource Web Wolfram. mathworld .wolfram .com /GaussianQuadrature .html
  18. ^ Geweke, J. (1995). Simulation Monte Carlo et intégration numérique. Banque fédérale de réserve de Minneapolis, département de recherche.
  19. ^ Iserles, A. (2009). Un premier cours d’analyse numérique des équations différentielles. La presse de l’Universite de Cambridge.
  20. ^ Ames, WF (2014). Méthodes numériques pour les équations aux dérivées partielles. Presse académique.
  21. ^ Johnson, C. (2012). Résolution numérique d’équations aux dérivées partielles par la méthode des éléments finis. Société de messagerie.
  22. ^ Brenner, S., & Scott, R. (2007). La théorie mathématique des méthodes d’éléments finis. Springer Science et médias d’affaires.
  23. ^ Strang, G., & Fix, GJ (1973). Une analyse de la méthode des éléments finis. Englewood Cliffs, NJ : Prentice-hall.
  24. ^ Strikwerda, JC (2004). Schémas aux différences finies et équations aux dérivées partielles. SIAM.
  25. ^ LeVeque, Randall (2002), Méthodes de volume fini pour les problèmes hyperboliques, Cambridge University Press.
  26. ^ Quarteroni, A., Saleri, F., & Gervasio, P. (2006). Calcul scientifique avec MATLAB et Octave. Berlin : Springer.
  27. ^ Gander, W., & Hrebicek, J. (Eds.). (2011). Résoudre des problèmes de calcul scientifique avec Maple et Matlab®. Springer Sciences & Affaires Médias .
  28. ^ Barnes, B., & Fulford, GR (2011). Modélisation mathématique avec études de cas : une approche par équations différentielles avec Maple et MATLAB. Chapman et Hall/CRC.
  29. ^ Gumley, LE (2001). Programmation IDL pratique. Elsevier.
  30. ^ Bunks, C., Chancelier, JP, Delebecque, F., Goursat, M., Nikoukhah, R., & Steer, S. (2012). Ingénierie et calcul scientifique avec Scilab. Springer Sciences & Affaires Médias .
  31. ^ Thanki, RM et Kothari, AM (2019). Traitement d’image numérique avec SCILAB. Edition internationale Springer.
  32. ^ Ihaka, R., & Gentleman, R. (1996). R : un langage d’analyse de données et de graphiques. Journal des statistiques informatiques et graphiques, 5(3), 299-314.
  33. ^ Bezanson, Jeff; Edelman, Alan; Karpinski, Stefan; Shah, Viral B. (1er janvier 2017). “Julia: Une nouvelle approche de l’informatique numérique” . Revue SIAM . 59 (1): 65–98. doi : 10.1137/141000671 . hdl : 1721.1/110125 . ISSN 0036-1445 .
  34. ^ Jones, E., Oliphant, T., & Peterson, P. (2001). SciPy : outils scientifiques open source pour Python.
  35. ^ Bressert, E. (2012). SciPy et NumPy : un aperçu pour les développeurs. “O’Reilly Media, Inc.”.
  36. ^ Blanco-Silva, FJ (2013). Apprendre SciPy pour le calcul numérique et scientifique. Packt Publishing Ltd.
  37. ^ Comparaison de vitesse de divers packages de calcul de nombres Archivé le 5 octobre 2006 sur la Wayback Machine
  38. ^ Comparaison des programmes mathématiques pour l’analyse des données Archivé le 18 mai 2016 aux archives Web portugaises Stefan Steinhaus, ScientificWeb.com
  39. ^ Maeder, RE (1991). Programmation en mathématiques. Addison-Wesley Longman Publishing Co., Inc.
  40. ^ Stephen Wolfram. (1999). Le livre MATHEMATICA®, version 4. Cambridge University Press .
  41. ^ Shaw, WT et Tigg, J. (1993). Mathematica appliqué : commencer, réussir. Addison-Wesley Longman Publishing Co., Inc..
  42. ^ Marasco, A., & Romano, A. (2001). Calcul scientifique avec Mathematica : problèmes mathématiques pour les équations différentielles ordinaires ; avec un cédérom. Springer Sciences & Affaires Médias .

Sources

  • Golub, Gene H. ; Charles F. Van Loan (1986). Calculs matriciels (3e éd.). Presse universitaire Johns Hopkins. ISBN 0-8018-5413-X.
  • En ligneHigham, Nicholas J. (1996). Précision et stabilité des algorithmes numériques . Société de Mathématiques Industrielles et Appliquées. ISBN 0-89871-355-2.
  • Hildebrand, FB (1974). Introduction à l’analyse numérique (2e éd.). McGraw-Hill. ISBN 0-07-028761-9.
  • Chef, Jeffery J. (2004). Analyse numérique et calcul scientifique . Addison Wesley. ISBN 0-201-73499-0.
  • Wilkinson, JH (1965). Le problème des valeurs propres algébriques . Presse Clarendon.
  • Kahan, W. (1972). Une enquête sur l’analyse des erreurs . Proc. Congrès IFIP 71 à Ljubljana. Info. Traitement 71 . Vol. 2. Amsterdam : Édition Hollande du Nord. pp. 1214–39.(exemples de l’importance d’une arithmétique précise).
  • Trefethen, Lloyd N. (2006). “Analyse numérique” , 20 pages. Dans : Timothy Gowers et June Barrow-Green (éditeurs), Princeton Companion of Mathematics , Princeton University Press.

Liens externes

Analyse numériquedans les projets frères de Wikipédia

  • Médias de Commons
  • Citations de Wikiquote
  • Manuels de Wikibooks

Journaux

  • gdz.sub.uni-goettingen , Numerische Mathematik , volumes 1-66, Springer, 1959-1994 (consultable ; les pages sont des images). (en anglais et allemand)
  • Numerische Mathematik , volumes 1–112, Springer, 1959–2009
  • Journal d’analyse numérique , volumes 1-47, SIAM, 1964–2009

Textes en ligne

  • “Analyse numérique” , ​​Encyclopédie des mathématiques , EMS Press , 2001 [1994]
  • Recettes numériques , William H. Press (éditions précédentes téléchargeables gratuitement)
  • Premiers pas en analyse numérique ( archivé ), RJHosking, S.Joe, DCJoyce et JCTurner
  • CSEP (Computational Science Education Project) , US Department of Energy ( archivé 2017-08-01 )
  • Méthodes numériques , ch 3. dans la bibliothèque numérique des fonctions mathématiques
  • Numerical Interpolation, Differentiation and Integration , ch 25. in the Handbook of Mathematical Functions ( Abramowitz and Stegun )

Matériel de cours en ligne

  • Méthodes numériques ( archivées le 28 juillet 2009 à la Wayback Machine ), Université Stuart Dalziel de Cambridge
  • Conférences sur l’analyse numérique , Dennis Deturck et Herbert S. Wilf Université de Pennsylvanie
  • Méthodes numériques , Université John D. Fenton de Karlsruhe
  • Méthodes numériques pour les physiciens , Anthony O’Hare Oxford University
  • Conférences en analyse numérique ( archivées ), Université R. Radok Mahidol
  • Introduction à l’analyse numérique pour l’ingénierie , Henrik Schmidt Massachusetts Institute of Technology
  • Analyse numérique pour l’ingénierie , DW Harder Université de Waterloo
  • Introduction à l’analyse numérique , Université Doron Levy du Maryland
  • Analyse numérique – Méthodes numériques (archivé), John H. Mathews California State University Fullerton
You might also like
Leave A Reply

Your email address will not be published.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More