[PDF] [PDF] Calcul Scientifique: Cours, exercices corrigés et illustrations en

Cours, exercices corrigés et illustrations environnements de programmation MATLAB 1 MATLAB est une marque déposée de TheMathWorks Inc , 24 Prime



Previous PDF Next PDF





[PDF] Calcul Scientifique: Cours, exercices corrigés et illustrations en

Cours, exercices corrigés et illustrations environnements de programmation MATLAB 1 MATLAB est une marque déposée de TheMathWorks Inc , 24 Prime



[PDF] a Matlab Exercice 1 - ENSTA Paris

Corrigé 1 : Introduction `a Matlab Exercice 1 Soient les vecteurs colonnes et la matrice suivants u1 = ⎛ ⎝ 1 2 3



[PDF] Série TP N=˚1 Introduction à Matlab 1 Exercice(Quelques

Ecrire un programme MATLAB qui permet de retourner la transposé A' d'une matrice A (2*3) saisie par l'utilisateur En calculant ses éléments Solution function T= 



[PDF] TP dintroduction à Matlab - DMA/ENS

Ce TP a pour but de vous familiariser avec l'usage de Matlab Matlab est programmation de haut niveau doublé d'un environnement de travail Exercice 1



[PDF] Exercices et problèmes dAnalyse numérique avec Matlab

Corrigés des exercices Ce choix de faire de la théorie avant de commencer la programmation est Matlab à un programmation à l'aide de boucles



[PDF] Corrigé des exercices de familiarisation avec Matlab

Corrigé des exercices de familiarisation avec Matlab Exercice 1 : Soit la série de nombres {17 8 12 15 6 11 9 18 16 10 13 19} pour commencer dans un 



[PDF] Correction exercices formation Matlab - GIPSA-Lab

Correction exercices formation Matlab Coriandre Vilain Janvier 2014 EX 1 : N = 100 ; Sn = sum([1 :N]) ; Sn = 5050 Verif = N*(N+1)/2 ; verif = 5050 OK



[PDF] Exercice Chapitre 1– Prise en main du logiciel Matlab MATLAB est

MATLAB est un langage de calcul scientifique de haut niveau et un Entre chaque exercice, il est conseillé de lancer les commandes clear et close all Les fichiers de fonction sont à utiliser comme en programmation impérative classique



[PDF] Initiation et travaux pratiques en Matlab - XyMaths

e) Utiliser la fonction graphique rotate3d, pour retrouver les courbes 2D de (c) `a partir de la représentation 3D Exercice 4 : Initiation `a la programmation sous 



[PDF] III Principes de programmation - Corrigé - UNIL

Cours MATLAB UNIL-FGSE – Hiver 2009-2010 III Principes Compléter le programme à l'aide de la structure if – else – end pour générer un Exercice : • créer sous forme de vecteur les coordonnées en x et z et rassembler-les sous une

[PDF] exercices corrigés proportionnalité 4ème pdf

[PDF] exercices corrigés propriétés colligatives

[PDF] exercices corrigés propriétés mécaniques des matériaux pdf

[PDF] exercices corrigés rapidité de modulation

[PDF] exercices corrigés rapprochement bancaire pdf

[PDF] exercices corrigés rdm charges réparties

[PDF] exercices corrigés redressement non commandé pdf

[PDF] exercices corrigés résistance des matériaux

[PDF] exercices corrigés sage comptabilité

[PDF] exercices corrigés sage comptabilité 100 pdf

[PDF] exercices corrigés sage saari comptabilité 100

[PDF] exercices corrigés saponification

[PDF] exercices corrigés sciences industrielles mpsi pdf

[PDF] exercices corrigés sciences industrielles pcsi pdf

[PDF] exercices corrigés seconde chromatographie

À la mémoire de

Fausto Saleri

Alfio Quarteroni·Fausto Saleri·Paola Gervasio

Calcul Scientifique

Cours,exercices corrig´eset illustrations

en MATLAB et Octave

Deuxi`eme ´edition

Alfio QuarteroniFausto Saleri

MOX ... Dipartimento di Matematica MOX ... Dipartimento di Matematica

Politecnicodi Milano etPolitecnicodi Milano

Ecole PolytechniqueFédérale

de Lausanne

Paola Gervasio

Dipartimento di Matematica

Facolt`a di Ingegneria

Universit`a degli Studi di Brescia

Les simulations numériques reproduites sur la couverture ont été réalisées par Carlo DAngelo et PaoloZunino

Traduit par :

Jean-Frédéric Gerbeau

INRIA... Rocquencourt

Traduction de louvrage italien :

Calcolo Scientifico - Esercizi e problemi risolti con MATLAB e Octave

A.Quarteroni,F.Saleri...4edizione

© Springer-Verlag Italia 2008

ISBN 978-88-470-1675-0

DOI 10.1007/978-88-470-1676-7

Springer Milan Dordrecht Berlin Heidelberg NewYork

© Springer-Verlag Italia 2010

Cet ouvrage est soumis au copyright. Tous droits réservés, notamment la reproduction et la

représentation, la traduction, la réimpression, lexposé, la reproduction des illustrations et des

tableaux, la transmission par voie denregistrement sonore ou visuel, la reproduction par mi- crofilm ou tout autre moyen ainsi que la conservation des banques de données. La loi sur le

copyright nautorise une reproduction intégrale ou partielle que dans certains cas,et enprincipe

moyennant lespaiements desdroits.Toute représentation,reproduction,contrefa¸con ou conser-

vation dans une banque de données par quelque procédé que ce soit est sanctionnée par la loi

pénale sur le copyright. Lutilisation dans cet ouvrage de désignations, dénominations commerciales, marques de fa-

brique,etc.meme sans spécification ne signifie pas que ces termessoient libresde la législation

surlesmarquesdefabriqueet laprotection desmarquesetquilpuissent etreutiliséspar chacun.

987654321

Maquette de couverture : Simona Colombo,Milano

Mise en page : PTP-Berlin,Protago TEX-Production GmbH,Germany (www.ptp-berlin.eu) Impriméen Italie: Grafiche Porpora,Segrate (Mi) Springer-Verlag Italia S.r.l.,Via Decembrio 28,I-20137Milano Springer-Verlag Italia est membre de Springer Science+Business Media

Préface

Préface de la première édition

Ce livre constitue une introduction au Calcul Scienti“que. Son objectif est de présenter des méthodes numériques permettant de résoudre avec un ordinateur des problèmes mathématiques qui ne peuvent être traités simplement avec une feuille et un stylo. Les questions classiques du Calcul Scienti“que sont abordées : la re- cherche des zéros ou le calcul dintégrales de fonctions continues, la réso- lution de systèmes linéaires, lapproximation de fonctions par des poly- nômes, la résolution approchée déquations diérentielles. En préambule à tous ces aspects, nous présentons au Chapitre 1 la manière dont les ordinateurs stockent et manipulent les nombres réels, les complexes ainsi que les vecteurs et les matrices. A“n de rendre notre présentation plus concrète, nous adoptons les environnements de programmationMATLAB ?1 et Octave. Rappelons quOctave est une réimplémentation dune partie deMATLABqui in- clut en particulier de nombreuses fonctionalités numériques deMAT- LABet est distribué gratuitement sous licence GNU GPL. Dans ce livre, nous introduisons progressivement les principales commandes et instructions de ces langages de programmation. Ceux-ci sont alors uti- lisés pour implémenter les divers algorithmes présentés, ce qui permet de véri“er, par la pratique, des propriétés théoriques comme la stabilité, la précision et la complexité. La résolution de divers problèmes, souvent motivés par des applications concrètes, fait lobjet de nombreux exemples et exercices. Tout au long du livre, nous utiliserons souvent lexpression com- mandeMATLABŽ : dans ce contexte,MATLABdoit être compris

1. MATLAB est une marque déposée de TheMathWorks Inc., 24 Prime

Park Way, Natick, MA 01760, USA. Tel : 001+508-647-7000, Fax : 001+508-

647-7001.

VI Préface

comme un langage, qui est partagé par les programmesMATLABet Octave. Un e?ort particulier a été fait pour que les programmes pré- sentés soient compatibles avec les deux logiciels. Les quelques fois où ce nest pas le cas, une brève explication est proposée à la “n de la section correspondante. Divers symboles graphiques ont été utilisés pour rendre la lecture plus agréable. Nous reportons dans la marge la commandeMATLAB (ou Octave) en regard de la ligne où elle apparaît pour la première fois.

Le symbole

indique un exercice, et le symboleest utilisé pour attirer lattentiondu lecteur sur un point critique ou sur le comportement surprenant dun algorithme. Les formules mathématiques importantes sont encadrées. En“n, le symbole signale un tableau résumant les concepts et les conclusions qui viennent dêtre présentés. A la “n de chaque chapitre, une section présente des aspects plus avancés et fournit des indications bibliographiques qui permettront au lecteur dapprofondir les connaissances acquises. Nous ferons assez souvent référence au livre [QSS07] où de nom- breuses questions abordées dans cet ouvrage sont traitées à un niveau plus avancé et où des résultats théoriques sont démontrés. Pour une des- cription plus complète deMATLABnous renvoyons à [HH05]. Tous les programmes présentés dans ce livre peuvent être téléchargés à ladresse web suivante : http://mox.polimi.it/qs. Aucun pré-requis particulier nest nécessaire à lexception de connais- sances de base en analyse. Au cours du premier chapitre, nous rappelons les principaux résultats danalyse et de géométrie qui seront utilisés par la suite. Les sujets les moins élémentaires ... ceux qui ne sont pas néces- saires en première lecture ... sont signalés par le symbole Nous exprimons nos remerciements à Francesca Bonadei de Sprin- ger pour son aimable collaboration tout au long de ce projet, à Paola Causin pour nous avoir proposé de nombreux problèmes, à Christophe Prudhomme, John W. Earon et David Bateman pour nous avoir aidé dans lutilisation dOctave, et au projet Poseidon de lEcole Polytech- nique Fédérale de Lausanne. En“n, nous exprimons notre reconnaissance à Jean-Frédéric Gerbeau pour sa traduction soigneuse et critique, ainsi que pour ses nombreuses et précieuses suggestions. Milan et Lausanne, juillet 2006 Al“o Quarteroni, Fausto Saleri

Préface de la deuxième éditionPour cette deuxième édition, lensemble de louvrage a été revu. De nom-breuses améliorations ont été apportées à tous les chapitres, tant dansle style que dans le contenu. En particulier, les chapitres concernantlapproximation des problèmes aux limites et des problèmes aux valeursinitiales ont été considérablement enrichis.

Nous rappelons au lecteur que tous les programmes du livre peuvent être téléchargés sur internet à ladresse suivante : http://mox.polimi.it/qs En“n, nous souhaitons réitérer nos remerciements à Jean-Frédéric

Gerbeau pour sa précieuse collaboration.

Lausanne, Milan et Brescia, mai 2010Al“o Quarteroni

Paola Gervasio

Table des matières

1 Ce quon ne peut ignorer.............................1

1.1 LesenvironnementsMATLABetOctave .............. 1

1.2 Nombresréels...................................... 3

1.2.1 Commentlesreprésenter ...................... 3

1.2.2 Comment calculer avec des nombres à virgule

"ottante..................................... 6

1.3 Nombrescomplexes................................. 8

1.4 Matrices .......................................... 10

1.4.1 Vecteurs .................................... 15

1.5 Fonctionsréelles.................................... 17

1.5.1 Leszéros.................................... 19

1.5.2 Polynômes................................... 21

1.5.3 Intégrationetdérivation ...................... 23

1.6 Lerreurnestpasseulementhumaine ................. 25

1.6.1 Parlonsdecoûts ............................. 29

1.7 Le langage MATLAB . . ............................. 31

1.7.1 InstructionsMATLAB........................ 33

1.7.2 ProgrammerenMATLAB..................... 35

1.7.3 Exemples de diérences entre les langages

MATLABetOctave.......................... 38

1.8 Cequonnevousapasdit........................... 39

1.9 Exercices.......................................... 39

2 Equations non linéaires...............................43

2.1 Quelquesproblèmestypes ........................... 43

2.2 Méthodededichotomie(oubisection)................. 46

2.3 MéthodedeNewton ................................ 49

2.3.1 TestsdarrêtpourlesitérationsdeNewton ...... 52

2.3.2 Méthode de Newton pour des systèmes déquations 54

X Table des matières

2.4 Méthodedepoint“xe............................... 56

2.4.1 Testdarrêtdesitérationsdepoint“xe.......... 62

2.5 Accélération par la méthode dAitken ................. 63

2.6 Polynômes......................................... 67

2.7 Cequonnevousapasdit........................... 72

2.8 Exercices.......................................... 74

3 Approximation de fonctions et de données............77

3.1 Quelquesproblèmestypes ........................... 77

3.2 ApproximationparpolynômesdeTaylor .............. 79

3.3 Interpolation....................................... 80

3.3.1 PolynômedinterpolationdeLagrange .......... 81

3.3.2 Stabilité de linterpolation polynomiale.......... 86

3.3.3 InterpolationauxnoeudsdeChebyshev ......... 87

3.3.4 InterpolationtrigonométriqueetFFT........... 90

3.4 Interpolationlinéaireparmorceaux................... 95

3.5 Approximationparfonctionssplines .................. 96

3.6 Laméthodedesmoindrescarrés......................100

3.7 Cequonnevousapasdit...........................105

3.8 Exercices..........................................106

4 Intégration et diérentiation numérique..............109

4.1 Quelquesproblèmestypes ...........................109

4.2 Approximationdesdérivées..........................111

4.3 Intégrationnumérique...............................113

4.3.1 Formule du point milieu .. .....................114

4.3.2 Formuledutrapèze...........................116

4.3.3 FormuledeSimpson ..........................117

4.4 Quadraturesinterpolatoires..........................119

4.5 FormuledeSimpsonadaptative ......................123

4.6 Cequonnevousapasdit...........................127

4.7 Exercices..........................................128

5 Systèmes linéaires....................................131

5.1 Quelquesproblèmestypes ...........................131

5.2 Systèmeslinéairesetcomplexité......................136

5.3 FactorisationLU ...................................137

5.4 Méthodedupivot ..................................147

5.5 Quelle est la précision de la solution dun système

linéaire? ..........................................149

5.6 Comment résoudre un système tridiagonal .............153

5.7 Systèmessur-déterminés.............................154

5.8 Ce qui se cache sous la commandeMATLAB\........157

Table des matières XI

5.9 Méthodesitératives.................................159

5.9.1 Commentconstruireuneméthodeitérative ......161

5.10 MéthodedeRichardsonetdugradient ................165

5.11 Méthodedugradientconjugué .......................169

5.12 Quanddoit-onarrêteruneméthodeitérative?..........172

5.13 Pour“nir:méthodedirecteouitérative?..............174

5.14 Cequonnevousapasdit...........................180

5.15 Exercices..........................................180

6 Valeurs propres et vecteurs propres...................185

6.1 Quelquesproblèmestypes ...........................186

6.2 Méthodedelapuissance.............................188

6.2.1 Analysedeconvergence .......................191

6.3 Généralisationdelaméthodedelapuissance...........192

6.4 Commentcalculerledécalage........................195

6.5 Calculdetouteslesvaleurspropres...................198

6.6 Cequonnevousapasdit...........................201

6.7 Exercices..........................................202

7 Equations diérentielles ordinaires....................205

7.1 Quelquesproblèmestypes ...........................205

7.2 LeproblèmedeCauchy .............................208

7.3 MéthodesdEuler...................................209

7.3.1 Analysedeconvergence .......................212

7.4 MéthodedeCrank-Nicolson..........................216

7.5 Zéro-stabilité . .....................................218

7.6 Stabilité sur des intervalles non bornés................221

7.6.1 Région de stabilité absolue....................223

7.6.2 La stabilité absolue contrôle les perturbations . . . . 224

7.7 Méthodesdordreélevé..............................232

7.8 Méthodesprédicteur-correcteur.......................238

7.9 Systèmesdéquationsdi?érentielles ...................241

7.10 Quelquesexemples..................................247

7.10.1 Le pendule sphérique .........................247

7.10.2 Leproblèmeàtroiscorps......................250

7.10.3 Desproblèmesraides .........................253

7.11 Cequonnevousapasdit...........................257

7.12 Exercices..........................................257

8 Approximation numérique des problèmes aux limites.261

8.1 Quelquesproblèmestypes ...........................262

8.2 Approximationdeproblèmesauxlimites ..............264

8.2.1 Approximation par di?érences “nies du problème

XII Table des matières

8.2.2 Approximation par di?érences “nies dun

8.2.3 Approximation par éléments “nis du problème

8.2.4 Approximation par di?érences “nies du problème

8.2.5 Consistance et convergence de la discrétisation

8.2.6 Approximation par di?érences “nies de léquation

delachaleurmonodimensionnelle ..............280

8.2.7 Approximation par éléments “nis de léquation

delachaleurmonodimensionnelle ..............285

8.3 Equations hyperboliques : un problème dadvection

8.3.1 Discrétisation par di?érences “nies de léquation

8.3.2 Analyse des schémas aux di?érences “nies pour

léquationdadvectionscalaire .................291

8.3.3 Eléments “nis pour léquation dadvection scalaire 297

8.4 Equationdesondes.................................299

8.4.1 Approximation par di?érences “nies de léquation

8.5 Cequonnevousapasdit...........................305

8.6 Exercices..........................................306

9 Solutions des exercices................................309

9.1 Chapitre1.........................................309

9.2 Chapitre2.........................................312

9.3 Chapitre3.........................................318

9.4 Chapitre4.........................................322

9.5 Chapitre5.........................................326

9.6 Chapitre6.........................................333

9.7 Chapitre7.........................................336

9.8 Chapitre8.........................................346

Index des programmes MATLAB et Octave

Tous les programmes de cet ouvrage peuvent être téléchargés à ladresse suivante : http://mox.polimi.it/qs

2.1bisection: méthode de dichotomie......................... 48

2.2newton: méthode de Newton............................. 53

2.3newtonsys: méthode de Newton pour des systèmes non

linéaires............................................... 55

2.4aitken: méthode dAitken................................ 65

2.5horner: algorithme de division synthétique.................. 69

3.1cubicspline: spline dinterpolation cubique.................. 98

4.1midpointc: formule de quadrature composite du point milieu. . 116

4.2simpsonc: formule de quadrature composite de Simpson......118

4.3simpadpt: formule de Simpson adaptative..................126

5.1lugauss: factorisation de Gauss...........................143

5.2itermeth: méthode itérative générale......................163

6.1eigpower: méthode de la puissance........................189

6.2invshift: méthode de la puissance inverse avec décalage.......193

6.3gershcircles: disques de Gershgorin........................195

6.4qrbasic: méthode des itérations QR.......................199

7.1feuler: méthode dEuler explicite..........................211

7.2beuler: méthode dEuler implicite.........................211

7.3cranknic: méthode de Crank-Nicolson.....................217

7.4predcor: méthode prédicteur-correcteur....................239

7.5feonestep: un pas de la méthode dEuler explicite...........240

7.6beonestep: un pas de la méthode dEuler implicite...........240

7.8newmark: méthode de Newmark..........................246

7.9fvinc: terme de force pour le problème du pendule sphérique. . . 250

XIV Index des programmes MATLAB et Octave

7.10threebody: second membre pour le système du problème à

trois corps.............................................252

8.1bvp: approximation dun problème aux limites

monodimensionnel par la méthode des diérences

8.2poissonfd: approximation du problème de Poisson avec

données de Dirichlet par la méthode des diérences “nies à cinq points.............................................276

8.3heattheta:?-schéma pour léquation de la chaleur dans un

domaine monodimensionnel...............................282

8.4newmarkwave: méthode de Newmark pour léquation des

9.1gausslegendre: formule de quadrature composite de

Gauss-Legendre, avecn=1...............................323

9.2rk2: méthode de Heun (ou RK2)..........................339

9.3rk3: schéma de Runge-Kutta explicite dordre 3.............341

9.4neumann: approximation dun problème aux limites de

9.5hyper: schémas de Lax-Friedrichs, Lax-Wendro et décentré. . . 351

1Ce quon ne peut ignorer

Ce livre fait appel à des notions de mathématiques élémentaires que le lecteur connaît déjà probablement, mais quil na plus nécessairement à lesprit. Nous pro“terons donc de ce chapitre dintroduction pour rap- peler, avec un point de vue adapté au calcul scienti“que, des éléments danalyse, dalgèbre linéaire et de géométrie. Nous introduirons égale- ment des concepts nouveaux, propres au calcul scienti“que, que nous illustrerons à laide deMATLAB(

MATrixLABoratory), un environne-

ment de programmation et de visualisation. Nous utiliserons aussi GNU Octave (en abrégé Octave) qui est un logiciel libre distribué sous licence GNU GPL. Octave est un interpréteur de haut niveau, compatible la plupart du temps avecMATLABet possédant la majeure partie de ses fonctionnalités numériques. Dans la Section 1.1, nous proposerons une introduction rapide à MATLABet Octave, et nous présenterons des éléments de program- mation dans la Section 1.7. Nous renvoyons le lecteur intéressé à [HH05, Pal08] et [EBH08] pour une description complète des langages deMATLABet Octave.

1.1 Les environnements MATLAB et Octave

MATLABet Octave sont des environnements intégrés pour le Calcul Scienti“que et la visualisation. Ils sont écrits principalement en langage

C et C++.

MATLABest distribué par la sociétéThe MathWorks(voir le site www.mathworks.com). Son nom vient deMATrix LABoratory,carila été initialement développé pour le calcul matriciel. Octave, aussi connu sous le nom de GNU Octave (voir le site www.octave.org ), est un logiciel distribué gratuitement. Vous pouvez le redistribuer et/ou le modi“er selon les termes de la licence GNUGe- neral Public License(GPL) publiée par laFree Software Foundation. Quarteroni, A., Saleri, F., Gervasio, P.: Calcul Scientifique c ?Springer-Verlag Italia 2010

2 1 Ce quon ne peut ignorer

Il existe des di?érences entreMATLABet Octave, au niveau des en- vironnements, des langages de programmation ou destoolboxes(collec- tions de fonctions dédiées à un usage spéci“que). Cependant, leur niveau de ce livre indi?éremment avec lun ou lautre. Quand ce nest pas le cas ... parce que les commandes nont pas la même syntaxe, parce quelles fonctionnent di?éremment ou encore parce quelles nexistent pas dans lun des deux programmes ... nous lindiquons dans une note en “n de section et expliquons comment procéder. Nous utiliserons souvent dans la suite lexpression commandeMAT-quotesdbs_dbs14.pdfusesText_20