Universit´e libre de Bruxelles
Examen de INFO-F-205, Calcul Num´erique le 6 juin 2017
M. Jansen
N’oubliez surtout pas:
• d’utiliser unefeuille diff´erentepour chaque question
• de soumettre, pour chaque question, exactement une (pas deux, ni z´ero) feuille, avec votre nom et matricule, mˆeme si vous ne r´epondez pas `a la question
• de noter votrenometmatriculesur toutes les feuilles
• d’´ecrire lisiblement
• de justifier de mani`ereclaire et succintetous vos raisonnements et calculs.
R´epartition des notes
Projet Question 1 Question 2 Question 3 Question 4 Question 5 Total
2 3 4 2+3 1+1+1(+1) 2+1 20(+1)
Question 1: Repr´esentation en machine
Consid´erer une machine ´equip´ee d’une repr´esentation `a virgule flottante en base b = 2 et t = 10 chiffres significatifs. Soient dun r´eel born´e dans l’intervalle [17000,18000]etaun nombre enF(b, t, L, U)∩[15000,16000]. Calculer l’erreur relative maximale du r´esultat dex=d−a? On peut supposer queUest suffisament grand pour que le domaine[realmin,realmax]couvre[15000,18000].
corrig´e
Le conditionnement d’une soustraction est donn´ee par κx(d) = d
d−a,
Le conditionnement est maximal pour l’´ecart d−aminimal et, ensuite, pour d minimal,
κx(d)≤ 17000 1000 = 17,
et donc, puisque le conditionnement, par d´efinition, repr´esente la croissance maxi- male de l’erreur relative,
|δx|
|x| ≤κx(d)|δd|
|d| =κx(d)εd≤κx(d)ǫ
2 =κx(d)b1−t
2 = 17·2−9/2 = 0,0166
Question 2: Equations diff´erentielles Consid´erer le probl`eme aux valeurs initiales
y′(t) =−4t3·y(t)avecy(0) = 1.
1
1. V´erifier quey(t) = exp(−t4)est une solution du probl`eme.
2. Ecrire la formule de l’it´eration pour la m´ethode d’Euler progressive (ou ex- plicite). Effectuer deux ´etapes avec un pas deh= 0,2.
3. Ecrire la formule de l’it´eration pour la m´ethode d’Euler r´etrograde (ou im- plicite). Effectuer deux ´etapes avec un pas deh= 0,2.
4. Les graphiques ci-dessus repr´esentent en tiret la fonctiony(t). Les solides pointill´es repr´esentent la sorties des m´ethodes d’Euler `a un pas deh= 0,2.
1 2 3
0 1
1 2 3
0 1
(voir au verso...) Comment ce graphique illustre-t-il le b´en´efice d’une m´ethode r´etrograde?
Quelle figure correspond `a la methode r´etrograde (gauche ou droite)? Nom- mer le b´en´efice.
corrig´e
1. y′(t) = dtd exp(−t4) = exp(−t4)·d(−dtt4) =y(t)·(−4t3) 2. Euler progressif, en g´en´eral:
ybn+1 =ybn+h·f(tn,ybn).
Ici:
ybn+1 =ybn+h(−4t3n·ybn)d’o`u vientybn+1 = (1−4ht3n)ybn 3. Euler r´etrograde, en g´en´eral:
b
yn+1 =ybn+h·f(tn+1,ybn+1).
Ici:
ybn+1 =ybn+h(−4t3n+1·ybn+1)d’o`u vientybn+1=ybn/(1 + 4ht3n+1).
4. La m´ethode r´etrograde est absolument stable pourh = 0,2. Il s’agit du graphique `a gauche. Pour un pas deh= 0,2, la m´ethode progressive
Question 3: syst`emes surd´etermin´es 1. Consid´erer la matrice carr´ee
Q=
√1 3
√1 3
√1 3
−√12 0 √1 2
q1 q2 q3
Ecrire les trois ´equations (deux lin´eaires, une non-lin´eaire) enq1, q2, q3, ex- primant l’orthogonalit´e deQ.
2. Une solution des trois ´equations ´etant donn´ee par q1 = −1/√
6 = q3, q2 = 2/√
6, trouver la solution au sens des moindres carr´es du syst`eme surd´etermin´eA~x=~b, o`u
~b=
1 0 0
etA=QRo`uR=
3 4 0 1 0 0
2
corrig´e 1.
√1
3(q1+q2+q3) = 0
−√12q1+ √1
2q3= 0 q12+q22+q32= 1
2. En utilisant l’orthogonalit´e de Q, on a kA~x−~bk2 = kQR~x −~bk2 = kQT(QR~x−~b)k2 = kR~x−QT~bk2 Ici, QT~b = √1
3
1 1 1
La trois`eme
composante deR~xs’annule, quelque soit la composante correspondante au second membreQT~b. La minimisation n’a donc aucun effet au niveau de la troisi`eme ligne. Il nous reste de r´esoudre les deux premi`ere lignes du syst`eme, ce qui nous amm`ene `a
~x∗= 1
√3
"
1
−1/2
#
Question 4: Syst`emes non-lin´eaires
Consid´erer la fonctionf(x) = exp(−x2/2)−1/3, dont la d´eriv´ee est donn´ee par f′(x) =−xexp(−x2/2). On est `a la recherche d’une racine sur l’intervalle[1,2].
1. Argumenter que la racine existe et qu’elle est unique.
2. On peut d´emontrer (la d´emontstration ne fait pas partie de l’´enonc´e) que pour x ∈ [1,2] la d´eriv´ee est comprise entre −0,61 < f′(x) < −0,27.
En se basant sur ce r´esultat, qu’est-ce qu’on peut dire sur la convergence de la m´ethode de point fixe avec la fonction d’it´erationφ(x) = x+f(x):
convergence ou divergence, globale ou locale, escalier ou spirale?
3. Expliquer: quand une it´eration converge sous forme d’un escalier sur tout l’intervalle[x1, x2], c’est une bonne id´ee de lancer deux it´erations: l’une en x1, l’autre enx2.
4. Question bonus (un point `a gagner, rien `a perdre): trouver toutes les valeurs αtelles queφ(x) = x+αf(x)converge globalement sur[1,2]sous forme d’une spirale.
corrig´e
1. L’existance suit des observations f(1)> 0etf(2)< 0, alors quef(x)est continue. L’unicit´e suit du fait quef′(x)<0sur tout l’intervalle.
Remarque: dans ce cas-ci, une strat´egie possible consiste de chercher une expression explicite pour toutes les racines:
f(x) = 0⇔exp(−x2/2) = 1/3⇔x2 =−2 ln(1/3) = 2 ln(3)⇔x=±q2 ln(3), pour constater alors qu’une seule racine se trouve dans l’intervalle[1,2].
Cette strat´egie, peu r´ealiste dans la pratique (parce qu’une expression ex- plicite n’est pas disponible quand on fait appel `a une m´ethode num´erique), n’´etait pas pr´evue lors de la r´edaction de l’examen, mais ´etant donn´e qu’elle est correcte, elle n’est pas sanctionn´ee.
3
2. φ′(x) = 1 +f′(x) ⇒ 1−0,61 < φ′(x) < 1−0,27 ⇒ 0 < φ′(x) <1 Convergence globale sous forme d’un escalier.
3. L’application de deux it´erations en mˆeme temps permet de maintenir un borne sup´erieure et une borne inf´erieure pour la racine inconnue. L’´evolution de ces deux bornes nous apporte une id´ee du taux de convergence.
4. −1 < φ′(x)<0⇔ −1< αf′(x) + 1<0⇔ −2< αf′(x)<−1⇔1<
α(−f′(x))<2
Puisquef′(x)<0⇒ −f′(x) =|f′(x)|, la condition pourαdevient 1/|f′(x)|< α <2/|f′(x)|
Sachant que−0,61 < f′(x) < −0,27, une convergence globale n´ecessite que1/0,27 < αet, en mˆeme temps,α <2/0,61, ce qui aboutit `a3,70< α etα <3,27. L’ensemble de valeursαfavorable est donc le vide.
Question 5: divers
1. SoitAune matrice de taillen×n, qu’est-ce qui est calcul´e par la commande A\eye(n)
Quel est le rˆole et l’importance de la factorisation LU dans cette commande?
2. Quelle est l’importance de la factorisation spectrale, B = EΛE−1, d’une matrice d’it´eration?
corrig´e
1. La ligne de matlab calculeA−1·I =A−1, en r´esolvant les syst`emesA~x=
~ei, o`u les~ei repr´esentent les colonnes de la matrice d’identit´e (c’est-`a-dire, les vecteurs canoniques). L’implementation interne de Matlab se base sur la factorisation LU, ce qui permet de r´eutiliser la mˆeme factorisation pour tous les seconds membres.
2. La factorisation spectrale permet d’analyser la convergence d’une matrice d’it´eration consistante, car effectivementBn=EΛE−1·EΛE−1. . . EΛE−1= EΛnE−1. La puissance d’une matrice diagonale Λn se fait ´el´ement par
´el´ement. Quand tous les ´el´ements diagonaux sont en dessous de 1, la suite des puissances convergera vers 0.
4