Académique Documents
Professionnel Documents
Culture Documents
Fortin
Analyse
numrique
pour ingnieurs
Quatrime dition
Extrait de la publication
Andr
Fortin
Professeur
lUniversit
Laval
Analyse
numrique
pour ingnieurs
Quatrime dition
Presses internationales
P o ly t e c h n i q u e
Analyse numrique pour ingnieurs, quatrime dition
Andr Fortin
Pour connatre nos distributeurs et nos points de vente, veuillez consulter notre site Web
ladresse suivante : www.polymtl.ca/pub
Courriel des Presses internationales Polytechnique : pip@polymtl.ca
On ne peut reproduire ni diffuser aucune partie du prsent ouvrage, sous quelque forme
ou par quelque procd que ce soit, sans avoir obtenu au pralable lautorisation crite
de lditeur.
Extrait de la publication
mon pouse Marie
et mes ls Michel
et Jean-Philippe
v
vi Avant-propos
Andr Fortin
Extrait de la publication
Table des matires
1 Analyse derreurs 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Erreurs de modlisation . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Reprsentation des nombres sur ordinateur . . . . . . . . . . . . 7
1.3.1 Reprsentation des entiers signs . . . . . . . . . . . . . 9
1.3.2 Reprsentation des nombres rels . . . . . . . . . . . . . 11
1.3.3 Erreurs dues la reprsentation . . . . . . . . . . . . . 12
1.4 Norme IEEE-754 . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.1 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.4.2 Nombres non normaliss . . . . . . . . . . . . . . . . . . 17
1.5 Arithmtique ottante . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.1 Oprations lmentaires . . . . . . . . . . . . . . . . . . 19
1.5.2 Oprations risques . . . . . . . . . . . . . . . . . . . . . 22
1.5.3 valuation des polynmes . . . . . . . . . . . . . . . . . 26
1.6 Erreurs de troncature . . . . . . . . . . . . . . . . . . . . . . . . 27
1.6.1 Dveloppement de Taylor en une variable . . . . . . . . 28
1.6.2 Dveloppement de Taylor en plusieurs variables . . . . . 34
1.6.3 Propagation derreurs dans le cas gnral . . . . . . . . 35
1.7 valuation de la fonction ex . . . . . . . . . . . . . . . . . . . . 38
1.8 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
vii
viii Table des matires
5 Interpolation 207
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
5.2 Matrice de Vandermonde . . . . . . . . . . . . . . . . . . . . . . 209
5.3 Interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . 210
5.4 Polynme de Newton . . . . . . . . . . . . . . . . . . . . . . . . 214
5.5 Erreur dinterpolation . . . . . . . . . . . . . . . . . . . . . . . 221
5.6 Splines cubiques . . . . . . . . . . . . . . . . . . . . . . . . . . 229
5.6.1 Courbes de la forme y = f (x) . . . . . . . . . . . . . . . 230
5.6.2 Splines paramtres . . . . . . . . . . . . . . . . . . . . 238
5.7 Krigeage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
5.7.1 Eet ppite . . . . . . . . . . . . . . . . . . . . . . . . . 249
5.7.2 Courbes paramtres . . . . . . . . . . . . . . . . . . . . 253
Extrait de la publication
Table des matires ix
Analyse derreurs
1.1 Introduction
Les cours traditionnels de mathmatiques nous familiarisent avec des tho-
ries et des mthodes qui permettent de rsoudre de faon analytique un cer-
tain nombre de problmes. Cest le cas notamment des techniques dintgra-
tion et de rsolution dquations algbriques ou direntielles. Bien que lon
puisse proposer plusieurs mthodes pour rsoudre un problme donn, celles-ci
conduisent un mme rsultat, normalement exempt derreur.
Cest ici que lanalyse numrique se distingue des autres champs plus clas-
siques des mathmatiques. En eet, pour un problme donn, il est possible
dutiliser plusieurs techniques de rsolution qui rsultent en dirents algo-
rithmes. 1 Ces algorithmes dpendent de certains paramtres qui inuent sur
la prcision du rsultat. De plus, on utilise en cours de calcul des approxima-
tions plus ou moins prcises. Par exemple, on peut remplacer une drive par
une dirence nie de faon transformer une quation direntielle en une
quation algbrique. Le rsultat nal et son ordre de prcision dpendent des
choix que lon fait.
Une partie importante de lanalyse numrique consiste donc contenir les
eets des erreurs ainsi introduites, qui proviennent de trois sources principales :
les erreurs de modlisation ;
les erreurs de reprsentation sur ordinateur ;
les erreurs de troncature.
Les erreurs de modlisation, comme leur nom lindique, proviennent de
ltape de mathmatisation du phnomne physique auquel on sintresse.
Cette tape consiste faire ressortir les causes les plus dterminantes du ph-
nomne observ et les mettre sous forme dquations (direntielles le plus
souvent). Si le phnomne observ est trs complexe, il faut simplier et n-
gliger ses composantes qui paraissent moins importantes ou qui rendent la
rsolution numrique trop dicile. Cest ce que lon appelle les erreurs de mo-
dlisation.
La deuxime catgorie derreurs est lie lutilisation de lordinateur. En
eet, la reprsentation sur ordinateur (gnralement binaire) des nombres
e
1. Le mot algorithme vient du mathmaticien arabe Al-Khuwarizm (VIII sicle aprs
J.-C.) qui fut lun des premiers utiliser une squence de calculs simples pour rsoudre
certaines quations quadratiques. Il est lun des pionniers de lal-jabr (lalgbre).
2 Chapitre 1
introduit souvent des erreurs. Mme inmes au dpart, ces erreurs peuvent
saccumuler lorsquon eectue un trs grand nombre doprations. Par exemple,
la fraction 31 na pas de reprsentation binaire nie, pas plus quelle ne possde
de reprsentation dcimale nie. On ne pourra donc pas reprsenter exactement
cette fraction, ce qui introduit une erreur. Ces erreurs se propagent au l des
calculs et peuvent compromettre la prcision des rsultats.
Enn, les erreurs de troncature proviennent principalement de lutilisation
du dveloppement de Taylor, qui permet par exemple de remplacer une qua-
tion direntielle par une quation algbrique. Le dveloppement de Taylor est
le principal outil mathmatique du numricien. Il est primordial den matriser
lnonc et ses consquences.
Ce chapitre traite donc principalement derreurs numriques, et non des
invitables erreurs de programmation qui font, hlas, partie du quotidien du
numricien. Il devrait permettre au lecteur de mieux grer les erreurs au sein
des processus numriques an dtre en mesure de mieux interprter les rsul-
tats. Introduisons dabord un peu de terminologie qui nous permettra ven-
tuellement de quantier les erreurs.
Dnition 1.1
Soit x, un nombre, et x , une approximation de ce nombre. Lerreur absolue
est dnie par :
x = |x x | (1.1)
Dnition 1.2
Soit x, un nombre, et x , une approximation de ce nombre. Lerreur relative
est dnie par :
|x x | x x
Er (x ) = = (1.2)
|x| |x| |x |
De plus, en multipliant par 100 %, on obtient lerreur relative en pourcentage.
Dnition 1.3
Si lerreur absolue vrie :
x 0,5 10m
Remarque 1.4
En pratique, on cherchera dterminer une borne pour x aussi petite que
possible et donc la valeur de m la plus petite possible.
Exemple 1.5
22
On obtient une approximation de (x = ) au moyen de la quantit 7
(x = 22
7 = 3,142 857 ). On en conclut que :
22
x = = 0,001 26 0,126 102
7
Puisque lerreur absolue est plus petite que 0,5 102 , le chire des centimes
est signicatif et on a en tout 3 chires signicatifs (3,14).
4 Chapitre 1
Exemple 1.6
Si lon retient 3,1416 comme approximation de , on a :
Exemple 1.7
On a mesur le poids dune personne et trouv 90,567 kg. On vous assure
que lappareil utilis est susamment prcis pour que tous les chires fournis
soient signicatifs. En vertu de la remarque prcdente, puisque le dernier
chire signicatif correspond aux millimes (milligrammes), cela signie que :
x 0,5 103 kg
Extrait de la publication
Analyse derreurs 5
(t)
l
Exemple 1.8
Le problme du pendule est connu depuis trs longtemps (voir par exemple
Simmons, rf. [33]). Une masse m est suspendue une corde de longueur l
(g. 1.1). Au temps t = 0, on suppose que langle (0) entre la corde et la
verticale est 0 et que sa vitesse angulaire (0) est 0 . Les forces en prsence
sont, dune part, la gravit agissant sur la masse et la corde et, dautre part,
la friction de lair agissant sur tout le systme.
Suivant la deuxime loi de Newton, la force due lacclration tangentielle
ml (t) est quilibre par la composante tangentielle de lacclration gravita-
tionnelle mg sin((t)) et par la force de friction Ff qui soppose au mouvement.
On a alors :
ml (t) = mg sin((t)) Ff
Pour connatre comment se comporte la force de friction Ff en fonction de (t),
il faut recourir des mesures exprimentales, qui dmontrent que la friction
est peu prs proportionnelle la vitesse l (t) avec un coecient de propor-
tionnalit cf . Il est important de remarquer que cette loi est approximative et
que le coecient cf est obtenu avec une prcision limite. Tout cela entrane
des erreurs de modlisation.
On obtient une quation direntielle du second ordre :
cf (t) g sin((t))
(t) =
m l (1.4)
(0) = 0
(0) = 0
Lquation direntielle 1.4 est non linaire et lon dmontre quelle ne possde
pas de solution analytique simple.
Une brve analyse montre quil est raisonnable de ngliger la friction de
lair, car les vitesses de mouvement sont faibles. Il sagit encore dune erreur de
modlisation, qui parat acceptable cette tape de lanalyse. Si les rsultats
se rvlent insatisfaisants, il faudra revenir en arrire et identier, parmi les
Chapitre 2
2.1 Introduction
Le numricien est souvent confront la rsolution dquations algbriques
de la forme :
f (x) = 0 (2.1)
et ce, dans toutes sortes de contextes. Introduisons ds maintenant la termi-
nologie qui nous sera utile pour traiter ce problme.
Dnition 2.1
Une valeur de x solution de f (x) = 0 est appele une racine ou un zro de
la fonction f (x) et est note r.
10
-2
-2 -1,5 -1 -0,5 0 0,5 1 1,5 2
x1 xm x2
0,5
-0,5
-1
-1,5
-2
0 0,2 0,4 0,6 0,8 1 1,2 1,4 1,6 1,8 2
x1 xm x2
1
0,8
0,6
0,4
0,2
0
-0,2
-0,4
-0,6
-0,8
0 0,2 0,4 0,6 0,8 1
x1 xm x2
0,2
0,1
0
-0,1
-0,2
-0,3
-0,4
-0,5
-0,6
-0,7
0,5 0,6 0,7 0,8 0,9 1
x1 xm x2
Lexpression :
|x2 x1 |
2|xm |
est une approximation de lerreur relative. En eet, ltape 3 de lalgorithme
de la bissection, la racine recherche est soit dans lintervalle [x1 , xm ] ou dans
lintervalle [xm , x2 ], qui sont tous deux de longueur (x2 x1 )/2, ce qui constitue
une borne suprieure de lerreur absolue. En divisant par xm , on obtient une
approximation assez able de lerreur relative.
Remarque 2.3
Dans lalgorithme prcdent, il faut prendre garde au cas o la racine recherche
est 0. Il y a alors risque de division par 0 au cours de lvaluation de lerreur
relative. Ce cas est toutefois rare en pratique.
Remarque 2.4
Il est parfois utile dintroduire un critre darrt sur la valeur de f (x), qui doit
tendre galement vers 0.
Exemple 2.5
La fonction f (x) = x3 + x2 3x 3 possde un zro dans lintervalle [1 , 2].
En eet :
f (1) f (2) = 4,0 3,0 = 12,0 < 0
On a alors xm = 1,5 et f (1,5) = 1,875. Lintervalle [1,5 , 2] possde encore
un changement de signe, ce qui nest pas le cas pour lintervalle [1 , 1,5]. Le
nouvel intervalle de travail est donc [1,5 , 2], dont le point milieu est xm = 1,75.
Puisque f (1,75) = 0,171 87, on prendra lintervalle [1,5 , 1,75] et ainsi de suite.
Le tableau suivant rsume les rsultats.
Extrait de la publication
quations non linaires 53
Exemple 2.6
Dans lexemple prcdent, L = 2,0 1,0. Si lon veut une erreur absolue plus
petite que 0,5 102 , ce qui revient sassurer que le chire des centimes est
signicatif, il faut eectuer au moins :
( )
1,0
ln 0,5102
= 7,64 itrations
ln 2
On fera donc 8 itrations pour sassurer de cette prcision. On peut aisment
vrier quaprs 8 itrations lerreur maximale lie xm est de 0,003 906 25 et
que la vritable erreur est 0,001 582.
Exemple 2.7
On souhaite calculer 2 avec une calculatrice dote seulement des 4 oprations
lmentaires. Cela revient rsoudre :
x2 2 = 0
Cette fonction prsente un changement de signe dans lintervalle [1 , 2]. Lal-
gorithme de la bissection donne les rsultats suivants.
Systmes dquations
algbriques
3.1 Introduction
Les systmes dquations algbriques jouent un rle trs important en in-
gnierie. On peut classer ces systmes en deux grandes familles : les systmes
linaires et les systmes non linaires.
Ici encore, les progrs de linformatique et de lanalyse numrique per-
mettent daborder des problmes de taille prodigieuse. On rsout couramment
aujourdhui des systmes de plusieurs centaines de milliers dinconnues. On
rencontre ces applications en mcanique des uides et dans lanalyse de struc-
tures complexes. On peut par exemple calculer lcoulement de lair autour
dun avion ou lcoulement de leau dans une turbine hydraulique complte.
On peut galement analyser la rsistance de la carlingue dun avion di-
rentes contraintes extrieures et en vrier numriquement la solidit.
Ces calculs complexes requirent des mthodes volues comme les m-
thodes dlments nis (voir Reddy, rf. [31]). On obtient gnralement des
systmes dquations non linaires de taille considrable, quon doit rsoudre
laide de mthodes ecaces qui minimisent le temps de calcul et lespace-
mmoire requis.
Dans ce chapitre, nous allons aborder les principales mthodes de rsolution
des systmes linaires, savoir la mthode dlimination de Gauss et la dcom-
position LU . Leet des erreurs dues larithmtique ottante sera galement
tudi et nous introduirons le concept de conditionnement dune matrice.
Par la suite, nous verrons comment rsoudre les systmes non linaires
au moyen dune suite de systmes linaires. Cest ce que nous appelons la
linarisation du problme.
Ax = b (3.2)
o A est la matrice :
a11 a12 a13 a1n
a21 a22 a23 a2n
a31 a32 a33 a3n
.. .. .. ..
. . .
..
. .
an1 an2 an3 ann
x = A1b
Exemple 3.2
Considrons le systme linaire suivant :
2x1 + 3x2 = 8
3x1 + 4x2 = 11
Extrait de la publication
Systmes dquations algbriques 97
8 3x2
x1 =
2
que lon substitue dans la deuxime quation :
( )
8 3x2
3 + 4x2 = 11
2
ou encore :
9x2
12 + 4x2 = 12 0,5x2 = 11
2
On dduit alors facilement que x2 = 2 et par la suite que x1 = 1.
Exemple 3.3
Le systme suivant :
1 0 0 x1 2
0 2 0 x2 = 2
0 0 3 x3 9
Dnition 3.4
Une matrice est dite triangulaire infrieure (ou suprieure) si tous les aij (ou
tous les aji ) sont nuls pour i < j. Une matrice triangulaire infrieure a la
forme type :
a11 0 0 0 0
a21 a22 0 0 0
a31 a32 a33 0 0
..
.. .. .. .. ..
.
. . . . .
a 0
n1 1 an1 2 an1 3 an1 n
an1 an2 an3 an n1 ann
Exemple 3.5
La descente triangulaire du systme :
3 0 0 x1 9
1 2 0 x2 = 7
3 2 1 x3 14
b1 9
x1 = = =3
a11 3
b2 a21 x1 7 (1)(3)
x2 = = =2
a22 2
Systmes dquations algbriques 99
x1 = b1 /a11
( )
i1
(3.3)
bi aik xk
k=1
xi = pour i = 2, 3, , n
aii
Pour la remonte triangulaire, on a :
xn = bn /ann
( )
n
bi aik xk (3.4)
k=i+1
xi = pour i = n 1, n 2, , 2, 1
aii
Remarque 3.6
Les quations 3.3 et 3.4 sont valides si les aii sont tous non nuls. Dans le cas
contraire, la matrice A nest pas inversible et, donc, le systme Ax = b na pas
une solution unique. On se souvient en eet que le dterminant dune matrice
triangulaire infrieure (ou suprieure) est :
n
dt Atriangulaire = aii (3.5)
i=1
Dnition 3.7
Une mthode de rsolution dun systme linaire est dite directe si la solu-
tion du systme peut tre obtenue par cette mthode en un nombre ni et
prdtermin doprations.
Exemple 3.9
Nous avons vu que la solution du systme :
3 0 0 x1 9
1 2 0 x2 = 7
3 2 1 x3 14
[ ]T
est x = 3 2 1 . Si lon multiplie ce systme par la matrice inversible :
1 0 0
W = 1 2 0
1 2 3
4.1 Introduction
Nous voyons dans ce chapitre comment de simples mthodes itratives,
telles les mthodes des points xes, peuvent mener des systmes au compor-
tement complexe. On pourrait croire, la suite du chapitre 2, que la discussion
sur la convergence dune mthode des points xes sarrte lorsquon a dtermin
si le point xe est attractif ou rpulsif. Nous allons pousser cette discussion
beaucoup plus loin et tcher dtudier un certain nombre de phnomnes in-
tressants rencontrs dans ltude des systmes dynamiques. Il ne sagit pas
de faire une analyse mathmatique profonde de la thorie des systmes dyna-
miques, mais bien de dmontrer que des mthodes itratives simples peuvent
rsulter en des systmes complexes.
qui est en fait une mthode des points xes (voir lquation 2.5) applique
la fonction :
g(x) = x(1 x)
Le paramtre est appel varier, si bien que le comportement de lalgo-
rithme 4.1 sera trs dirent suivant la valeur de .
Tout dabord, il est facile de montrer que la fonction g(x) est une applica-
tion de lintervalle [0 , 1] dans lui-mme (g(x) [0 , 1] si x [0 , 1]) seulement
pour :
0<<4
168 Chapitre 4
x = g(x) = x(1 x)
|g (0)| < 1
cest--dire si :
0 < < 1 = 1
puisquon ne considre pas les valeurs ngatives de . Dautre part :
( ( ))
1
g (r ) = (1 2r ) = 1 2 =2
|2 | < 1
ou encore si :
1 < 2 < 1
3 < < 1
1 < < 3 = 2
On note 2 la borne suprieure de cet intervalle, soit 2 = 3. On en conclut
que r est attractif pour ces valeurs de . On remarque de plus que, lorsque
= 1, r = 0 et il ny a alors quun seul point xe. On montre que ce point
xe est attractif mme si g (0) = 1 en vertu de lquation 4.3. La convergence
est cependant trs lente. La situation est illustre aux gures 4.1 et 4.2, o la
fonction g(x) est trace pour deux valeurs de , soit 0,5 et 1,5. On voit dans le
premier cas ( = 0,5) que la pente de g(x) est infrieure 1 en x = 0 et quil
ny a pas dautre point xe dans lintervalle [0 , 1]. Par contre, pour = 1,5,
Mthodes itratives et systmes dynamiques discrets 169
1,0
g(x)
0,8
0,6
0,4
0,2
0,0
0 0,2 0,4 0,6 0,8 1,0
x
1,0
g(x)
0,8
0,6
0,4
0,2
0,0
0 0,2 0,4 0,6 0,8 1,0
x
Dnition 4.1
Un ensemble A Rn est dit un attracteur dune application :
g : V Rn
Remarque 4.2
La dnition qui prcde indique que, pour que A soit un attracteur, il faut
que tout point x de lensemble A soit projet sur un autre point de A par lap-
plication g(x). Cest bien sr le cas dun point xe qui est envoy sur lui-mme.
La deuxime condition traduit le fait que, si lon part dun point x0 susam-
ment prs de A, les itrations de lalgorithme des points xes sapprochent
de plus en plus de lensemble A. On tend ainsi aux attracteurs la notion de
bassin dattraction introduite pour les points xes. Mentionnons enn que le
sens prcis que lon doit donner au mot indcomposable varie dun auteur
lautre. Disons simplement quon ne peut rien enlever lensemble A pour
que les deux premires proprits restent vraies.
Remarque 4.3
On ne considre pour linstant que le cas n = 1 des applications de R dans R.
Le cas gnral sera trait un peu plus loin. Un point xe est donc un attracteur
(voir le chapitre 2) sil existe un intervalle I contenant ce point xe pour lequel
g(x) I, x I, et qui vrie :
|g (x)| < 1 x I
Cette dnition dun attracteur est quelque peu imprcise, mais elle sut
aux besoins de lexpos. Prenons par exemple = 3,1 et observons ce qui se
passe. partir de x0 = 0,5, on obtient les itrations suivantes.
Extrait de la publication
172 Chapitre 4
cest--dire :
g1 (x) = 2 x(1 x)(1 x + x2 )
Pour dterminer les points xes de la fonction g1 (x), il sut de rsoudre :
Il est clair que tout point xe de g(x) est un point xe de g1 (x). Le point
r donn par lquation 4.2 ainsi que 0 sont donc des points xes de g1 (x),
mais nous savons quils sont rpulsifs pour > 3. Il existe cependant dautres
points xes de g1 (x) qui ne sont pas des points xes de g(x). Aprs avoir divis
lquation prcdente par x de chaque ct, quelques manipulations algbriques
nous amnent rsoudre lquation :
3 x3 23 x2 + 2 (1 + )x + (1 2 ) = 0
Interpolation
5.1 Introduction
Ce chapitre ainsi que le chapitre suivant qui porte sur la drivation et lin-
tgration numriques sont trs troitement relis puisquils tendent rpondre
diverses facettes dun mme problme. Ce problme est le suivant : partir
dune fonction f (x) connue seulement en (n + 1) points de la forme ((xi , f (xi ))
pour i = 0, 1, 2, , n), peut-on construire une approximation de f (x), et ce,
pour tout x ? Les xi sont appels abscisses ou nuds dinterpolation tandis
que les couples ((xi , f (xi )) pour i = 0, 1, 2, , n) sont les points de colloca-
tion ou points dinterpolation et peuvent provenir de donnes exprimentales
ou dune table. En dautres termes, si lon ne connat que les points de collo-
cation (xi , f (xi )) dune fonction, peut-on obtenir une approximation de f (x)
pour une valeur de x dirente des xi ? La gure 5.1 rsume la situation.
Sur la base des mmes hypothses, nous verrons, au chapitre suivant, com-
ment valuer les drives f (x), f (x) de mme que :
xn
f (x)dx
x0
Thorme 5.1
Un polynme de degr n dont la forme gnrale est :
pn (x) = a0 + a1 x + a2 x2 + a3 x3 + + an xn (5.1)
avec an = 0 possde, tenant compte des multiplicits, trs exactement n racines
qui peuvent tre relles ou complexes conjugues. Rappelons que r est une
racine de pn (x) si pn (r) = 0.
208 Chapitre 5
x0 x1 x x2 x3 xn1 xn
Corollaire 5.2
Par (n + 1) points de collocation dabscisses distinctes ((xi , f (xi )) pour i =
0, 1, 2, , n), on ne peut faire correspondre quun et un seul polynme de
degr n.
Dmonstration :
On procde par labsurde et lon suppose lexistence de 2 polynmes de degr
n, nots p(x) et q(x), et qui passent tous les deux par les (n + 1) points de
collocation donns. On considre ensuite la dirence P (x) = p(x) q(x) qui
est galement un polynme de degr au plus n. Ce polynme vrie :
Dnition 5.3
Lunique polynme de degr n passant par les points (xi , f (xi )) pour
i = 0, 1, 2, , n, est appel linterpolant de f (x) de degr n aux abscisses
(nuds) x0 , x1 , , xn .
Remarque 5.4
Rien noblige ce que le coecient an de linterpolant soit dirent de 0. Lin-
terpolant passant par les n + 1 points dinterpolation peut donc tre de degr
infrieur n. Si on choisit par exemple 10 points sur une droite, linterpolant
sera quand mme de degr 1.
Interpolation 209
Remarque 5.5
La matrice de ce systme linaire porte le nom de matrice de Vandermonde.
On peut montrer que le conditionnement de cette matrice augmente fortement
avec la taille (n + 1) du systme. De plus, comme le rvlent les sections qui
suivent, il nest pas ncessaire de rsoudre un systme linaire pour calculer un
polynme dinterpolation. Cette mthode est donc rarement utilise.
Exemple 5.6
On doit calculer le polynme passant par les points (0 , 1), (1 , 2), (2 , 9) et
(3 , 28). tant donn ces 4 points, le polynme recherch est tout au plus de
degr 3. Ses coecients ai sont solution de :
1 0 0 0 a0 1
1 1 1 1 a1 2
1 2 4 8 a = 9
2
1 3 9 27 a3 28
dont la solution (obtenue par dcomposition LU ) est [1 0 0 1]T . Le polynme
recherch est donc p3 (x) = 1 + x3 .
n
L(x) = f (xi )Li (x)
i=0
est un polynme de degr n, car chacun des Li (x) est de degr n. De plus, ce
polynme passe par les (n + 1) points de collocation et est donc le polynme
recherch. En eet, il est facile de montrer que selon les conditions 5.3 :
n
L(xj ) = f (xj )Lj (xj ) + f (xi )Li (xj )
i=0,i=j
= f (xj ) + 0 = f (xj ) j
Le polynme L(x) passe donc par tous les points de collocation. Puisque ce
polynme est unique, L(x) est bien le polynme recherch. Il reste construire
les fonctions Li (x). Suivons une dmarche progressive.
Polynmes de degr 1
Il sagit de dterminer le polynme de degr 1 dont la courbe (une droite)
passe par les deux points (x0 , f (x0 )) et (x1 , f (x1 )). On doit donc construire
deux polynmes L0 (x) et L1 (x) de degr 1 qui vrient :
{ {
L0 (x0 ) = 1 L1 (x0 ) = 0
L0 (x1 ) = 0 L1 (x1 ) = 1
(x x1 )
L0 (x) =
(x0 x1 )
(x x0 )
L1 (x) =
(x1 x0 )
Interpolation 211
L0 (x)
L1 (x)
x0 x1
Ces deux fonctions sont illustres la gure 5.2. Le polynme de degr 1 est
donc :
p1 (x) = f (x0 )L0 (x) + f (x1 )L1 (x)
Exemple 5.7
Lquation de la droite passant par les points (2 , 3) et (5 , 6) est :
(x 5) (x 2)
3 + (6) = (x 5) 2(x 2) = 3x + 9
(2 5) (5 2)
Polynmes de degr 2
Si lon cherche le polynme de degr 2 passant par les points (x0 , f (x0 )),
(x1 , f (x1 )) et (x2 , f (x2 )), on doit construire trois fonctions Li (x). Le raisonne-
ment est toujours le mme. La fonction L0 (x) sannule cette fois en x = x1 et
en x = x2 . On doit forcment avoir un coecient de la forme :
(x x1 )(x x2 )
qui vaut (x0 x1 )(x0 x2 ) en x = x0 . Pour satisfaire la condition L0 (x0 ) = 1,
il sut alors de diviser le coecient par cette valeur et de poser :
(x x1 )(x x2 )
L0 (x) =
(x0 x1 )(x0 x2 )
Cette fonction vaut bien 1 en x0 et 0 en x1 et x2 . De la mme manire, on
obtient les fonctions L1 (x) et L2 (x) dnies par :
(x x0 )(x x2 ) (x x0 )(x x1 )
L1 (x) = et L2 (x) =
(x1 x0 )(x1 x2 ) (x2 x0 )(x2 x1 )
212 Chapitre 5
L0 (x) L1 (x)
L2 (x)
x0 x1 x2
Exemple 5.8
La parabole passant par les points (1 , 2), (3 , 7), (4 , 1) est donne par :
(x 3)(x 4) (x 1)(x 4) (x 1)(x 3)
p2 (x) = 2 +7 + (1)
(1 3)(1 4) (3 1)(3 4) (4 1)(4 3)
Polynmes de degr n
On analyse le cas gnral de la mme faon. La fonction L0 (x) doit sannuler
en x = x1 , x2 , x3 , , xn . Il faut donc introduire la fonction :
(x x1 )(x x2 )(x x3 ) (x xn )
qui vaut :
(x0 x1 )(x0 x2 )(x0 x3 ) (x0 xn )
en x = x0 . On a alors, aprs division :
(x x1 )(x x2 )(x x3 ) (x xn )
L0 (x) =
(x0 x1 )(x0 x2 )(x0 x3 ) (x0 xn )
On remarque quil y a n facteurs de la forme (x xi ) dans cette expression et
quil sagit bien dun polynme de degr n. Pour la fonction L1 (x), on pose :
(x x0 )(x x2 )(x x3 ) (x xn )
L1 (x) =
(x1 x0 )(x1 x2 )(x1 x3 ) (x1 xn )
Extrait de la publication
Chapitre 6
Direntiation et intgration
numriques
6.1 Introduction
Le contenu de ce chapitre prolonge celui du chapitre 5 sur linterpolation.
peu de choses prs, on y manie les mmes outils danalyse. Dans le cas de
linterpolation, on cherchait valuer une fonction f (x) connue seulement en
quelques points. Dans le prsent chapitre, le problme consiste obtenir des
approximations des direntes drives de cette fonction de mme que de :
xn
f (x)dx
x0
est fonde sur lgalit 6.1. Nous utiliserons un mlange des deux approches,
ce qui nous permettra davoir un portrait assez complet de la situation.
Commenons dabord par lquation 6.1. Si lon drive de chaque ct de
lgalit, on obtient successivement :
Ainsi, pour valuer la drive dune fonction connue aux points ((xi , f (xi ))
pour i = 0, 1, 2, , n), il sut de driver le polynme dinterpolation passant
par ces points. De plus, le terme derreur associ cette approximation de la
drive est tout simplement la drive de lerreur dinterpolation. Ce rsultat
est vrai quel que soit lordre de la drive.
Remarque 6.1
Bien quen thorie on soit en mesure destimer les drives de tout ordre, sur
le plan pratique, on dpasse rarement lordre 4. Cela sexplique par le fait que
la direntiation numrique est un procd numriquement instable.
f (n+1) ((x))
En (x) = [(x x0 )(x x1 ) (x xn )] (6.3)
(n + 1)!
f (n+1) ((x))
+ [(x x0 )(x x1 ) (x xn )]
(n + 1)!
xi+1 xi = h
cest--dire :
(1)n hn f (n+1) (0 )
En (x0 ) = (6.6)
(n + 1)
pour un certain 0 compris dans lintervalle [x0 , xn ].
Remarque 6.2
Lquation 6.5 montre que, si lon utilise un polynme dinterpolation de degr
n (cest--dire dordre (n + 1)), la drive de ce polynme value en x = xi
est une approximation dordre n de f (xi ).
294 Chapitre 6
Dnition 6.3
Aux points dinterpolation, on a :
Le terme pn (xi ) dans lquation 6.7 est une formule aux dirences nies
ou plus simplement une formule aux dirences. Nous proposons plus loin
plusieurs formules aux dirences nies pour valuer les direntes drives
de f (x). Elles se distinguent principalement par le degr du polynme et par
les points dinterpolation retenus.
Appproximations dordre 1
Si lon choisit le polynme de degr 1 passant par les points (x0 , f (x0 )) et
(x1 , f (x1 )), on a, grce la formule dinterpolation de Newton :
et donc :
f (x) = p1 (x) + E1 (x) = f [x0 , x1 ] + E1 (x) (6.8)
En vertu de la relation 6.6 avec n = 1 et puisque (x1 x0 ) = h, on arrive :
f (x1 ) f (x0 )
f (x1 ) = + E1 (x1 )
x1 x0
f (x1 ) f (x0 ) h1 f (2) (1 )
1
= + (1 j)
h 2!
j=0(j=1)
ou encore :
f (x2 ) f (x0 ) h2 f (1 )
f (x1 ) = (6.11)
2h 6
Dirence centre dordre 2
Les termes derreur de ces formules aux dirences nies dcoulent tous de
la relation 6.5 lorsquon pose successivement i = 0, 1 et 2. Pour i = 0, on peut
utiliser directement lquation 6.6. Les points 0 , 1 et 2 sont situs quelque
part dans lintervalle [x0 , x2 ] et sont inconnus (voir les exercices de n de
chapitre).
Remarque 6.4
Toutes ces formules aux dirences sont dordre 2. Les mentions avant, centre
et arrire renvoient au point o lon calcule la drive et aux points utiliss
pour la calculer. Ainsi, la dirence avant est value en x0 sur la base des
valeurs situes vers lavant, soit en x1 et en x2 . La dirence arrire xe la
drive en x = x2 avec lappui des valeurs de la fonction en x0 et en x1 . La
dirence centre, quant elle, fait intervenir des valeurs situes de part et
dautre de x1 .
La gure 6.1 illustre les direntes possibilits. Pour les dirences
dordre 1, on estime la drive par la pente du segment de droite joignant
les points (x0 , f (x0 )) et (x1 , f (x1 )). Dans le cas des dirences dordre 2, on
296 Chapitre 6
Dirence avant dordre 2 (en x0 )
x0 x1 x2
f (x + h) f (x)
f (x) = + O(h)
h
Dirence avant dordre 1 (6.12)
f (x) f (x h)
f (x) = + O(h)
h
Dirence arrire dordre 1
Extrait de la publication
Chapitre 7
quations direntielles
7.1 Introduction
La rsolution numrique des quations direntielles est probablement le
domaine de lanalyse numrique o les applications sont les plus nombreuses.
Que ce soit en mcanique des uides, en transfert de chaleur ou en analyse
de structures, on aboutit souvent la rsolution dquations direntielles,
de systmes dquations direntielles ou plus gnralement dquations aux
drives partielles.
Le problme du pendule abord au chapitre 1 trouvera ici une solution nu-
mrique qui sera par la suite analyse et compare dautres solutions approxi-
matives ou quasi analytiques. Parmi leurs avantages, les mthodes numriques
permettent dtudier des problmes complexes pour lesquels on ne connat pas
de solution analytique, mais qui sont dun grand intrt pratique.
Dans ce chapitre comme dans les prcdents, les diverses mthodes de r-
solution proposes sont dautant plus prcises quelles sont dordre lev. Nous
amorons lexpos par des mthodes relativement simples ayant une interprta-
tion gomtrique. Elles nous conduiront progressivement des mthodes plus
complexes telles les mthodes de Runge-Kutta dordre 4, qui permettent dob-
tenir des rsultats dune grande prcision. Nous considrons principalement les
quations direntielles avec conditions initiales, mais nous ferons une brve
incursion du ct des quations direntielles avec conditions aux limites par
le biais des mthodes de tir et de dirences nies.
Nous prenons comme point de dpart la formulation gnrale dune qua-
tion direntielle dordre 1 avec condition initiale. La tche consiste dter-
miner une fonction y(t) solution de :
{
y (t) = f (t, y(t))
(7.1)
y(t0 ) = y0
Dnition 7.1
Lquation direntielle 7.1 est dite dordre 1, car seule la drive dordre 1
de la variable dpendante y(t) est prsente. Si des drives de y(t) dordre
2 apparaissaient dans lquation direntielle 7.1, on aurait une quation
dordre 2, et ainsi de suite.
Exemple 7.2
Soit lquation direntielle du premier ordre :
{
y (t) = t
(7.2)
y(0) = 1
Voil certainement lun des exemples les plus simples que lon puisse imaginer.
En intgrant de chaque ct, on obtient :
y (t)dt = tdt
cest--dire :
t2
y(t) =+C
2
o C est une constante. Cette dernire expression est la solution gnrale de
lquation direntielle en ce sens quelle satisfait y (t) = t, quelle que soit la
constante C. Pour dterminer la constante C, il sut dimposer la condition
initiale :
y(0) = 1 = C
La solution particulire est alors :
t2
y(t) = +1
2
qui vrie la fois lquation direntielle et la condition initiale.
Exemple 7.3
Soit lquation direntielle :
{
y (t) = ty(t)
(7.3)
y(1) = 2
Il ne sut pas dans ce cas dintgrer les deux cts de lquation pour obtenir
la solution. On doit dabord sparer les variables en crivant par exemple :
dy dy
= t y(t) qui devient = tdt
dt y
Extrait de la publication
quations direntielles 343
t2 t2
ln y = + C ou encore y(t) = Ce 2
2
qui est la solution gnrale. On obtient la solution particulire en imposant la
condition initiale : 1
y(1) = 2 = Ce 2
ce qui signie que :
C = 2e 2
1
faut dterminer dans quelle direction on doit avancer partir du point (t0 , y0 )
pour obtenir le point (t1 , y1 ), qui est une approximation du point (t1 , y(t1 )).
Nous navons pas lquation de la courbe y(t), mais nous en connaissons la
pente y (t) en t = t0 . En eet, lquation direntielle assure que :
y (t0 ) = f (t0 , y(t0 )) = f (t0 , y0 )
On peut donc suivre la droite passant par (t0 , y0 ) et de pente f (t0 , y0 ). Lqua-
tion de cette droite, note d0 (t), est :
d0 (t) = y0 + f (t0 , y0 )(t t0 )
et est illustre la gure 7.1. En t = t1 , on a :
d0 (t1 ) = y0 + f (t0 , y0 )(t1 t0 ) = y0 + hf (t0 , y0 ) = y1
En dautres termes, d0 (t1 ) est proche de la solution analytique y(t1 ), cest--
dire :
y(t1 ) y1 = d0 (t1 ) = y0 + hf (t0 , y0 )
Il est important de noter que, le plus souvent, y1 = y(t1 ). Cette ingalit na
rien pour tonner, mais elle a des consquences sur la suite du raisonnement. En
eet, si lon souhaite faire une deuxime itration et obtenir une approximation
de y(t2 ), on peut refaire lanalyse prcdente partir du point (t1 , y1 ). On
remarque cependant que la pente de la solution analytique en t = t1 est :
y (t1 ) = f (t1 , y(t1 ))
On ne connat pas exactement y(t1 ), mais on possde lapproximation y1 de
y(t1 ). On doit alors utiliser lexpression :
y (t1 ) = f (t1 , y(t1 )) f (t1 , y1 )
et construire la droite (g. 7.1) :
d1 (t) = y1 + f (t1 , y1 )(t t1 )
qui permettra destimer y(t2 ). On constate que lerreur commise la premire
itration est rintroduite dans les calculs de la deuxime itration. On a alors :
y(t2 ) y2 = d1 (t2 ) = y1 + hf (t1 , y1 )
Remarque 7.5
Le dveloppement qui prcde met en vidence une proprit importante des
mthodes numriques de rsolution des quations direntielles. En eet, ler-
reur introduite la premire itration a des rpercussions sur les calculs de la
deuxime itration, ce qui signie que les erreurs se propagent dune itration
lautre. Il en rsulte de faon gnrale que lerreur :
|y(tn ) yn |
augmente lgrement avec n.
quations direntielles 345
y(t) (inconnue)
d1 (t)
(t2 , y(t2 ))
h h
t0 t1 t2
Exemple 7.7
Soit lquation direntielle (voir Fortin et Pierre, rf. [18]) :
y (t) = y(t) + t + 1
et la condition initiale y(0) = 1. On a donc t0 = 0 et y0 = 1 et lon prend un
pas de temps h = 0,1. De plus, on a :
f (t, y) = y + t + 1
On peut donc utiliser la mthode dEuler explicite et obtenir successivement
des approximations de y(0,1), y(0,2), y(0,3) , notes y1 , y2 , y3 . Le premier
pas de temps produit :
y1 = y0 + hf (t0 , y0 ) = 1 + 0,1f (0 , 1) = 1 + 0,1(1 + 0 + 1) = 1
346 Chapitre 7
On parvient ensuite :
y3 = y2 + hf (t2 , y2 ) = 1,01 + 0,1f (0,2 , 1,01)
= 1,01 + 0,1(1,01 + 0,2 + 1) = 1,029
Le tableau suivant rassemble les rsultats des dix premiers pas de temps. La
solution analytique de cette quation direntielle est y(t) = et + t, ce qui
permet de comparer les solutions numrique et analytique et de constater la
croissance de lerreur. On peut aussi comparer les rsultats la gure 7.2.
Dnition 7.8
Une mthode de rsolution dquations direntielles est dite un pas si elle
est de la forme :
yn+1 = yn + h(tn , yn ) (7.4)
o est une fonction quelconque. Une telle relation est appele quation aux
dirences. La mthode est un pas si, pour obtenir la solution en t = tn+1 ,
on doit utiliser la solution numrique au temps tn seulement. On dsigne
mthodes pas multiples les mthodes qui exigent galement la solution nu-
mrique aux temps tn1 , tn2 , tn3 .
quations direntielles 347
1,40
Solution analytique
1,35
Solution numrique (h = 0,1)
1,30
1,25
1,20
1,15
1,10
1,05
1,00
0 0,2 0,4 0,6 0,8 1,0
Dnition 7.9
On dira quun schma un pas converge lordre p si :
Dnition 7.10
Lerreur de troncature locale au point t = tn est dnie par :
y(tn+1 ) y(tn )
n+1 (h) = (tn , y(tn )) (7.6)
h
Lerreur de troncature locale mesure la prcision avec laquelle la solution
analytique vrie lquation aux dirences 7.4.
Analyse numrique
pour ingnieurs
Quatrime dition
ISBN : 978-2-553-01622-6
www.polymtl.ca/pub
Extrait de la publication