Feuille TD n : Calcul approché Exercice. Convertir (.) 2 en hexadécimal, octal et décimal. Exercice 2. Proposer une méthode pour éviter la perte de précision dans les calculs suivants :. e x sin(x) cos(x) 2. log(x) 3. log(x) log(/x) 4. x 2 (sin(x) e x + ) 5. x arctanh(x) Exercice 3. Montrer que l opération est stable amont. Exercice 4. Énumérer l ensemble des nombres à virgule flottante qui ont une représentation binaire de la forme: ±(.b b 2 ) 2 k, avec k,. Exercice 5. Quelle est la stabilité de l équation suivante: x n+ = 2x n + 5x n? Exercice 6. La fonction erreur définie par erf(x) = 2 x e t2 dt π est utilisée en statistique en relation avec les variables aléatoires suivant une loi normal. On désire approcher la valeur erf(x) dans l intervalle [, ] avec une erreur toujours inférieure à.. Donner est la valeur exacte de erf(). 2. Utiliser un développement limité de Taylor de e z pour déterminer les n premiers termes non nuls du développement de Taylor de e t2. 3. En déduire les n premiers termes non nuls du développement de Taylor de erf(x). 4. Préciser de manière analytique le reste du développement de Taylor. /
5. Donner la valeur minimale de n pour que l erreur de l approximation soit toujours inférieure à pour x [, ]. Exercice 7. Soit ε un nombre dont la taille est de l ordre de la précision machine. Justifier l approximation ε = ε Exercice 8. Soit δ un nombre tel que δ. Calculer x + δ x en évitant la perte de chiffre significatif. Exercice 9. L évaluation de l expression f(x) = + x 2 x 2 (e x e x ) peut causer une élimination des chiffres significatifs.. Donner la liste de toutes les opérations risquées. 2. Pour chacune de ces opérations, proposée une autre façon de l évaluer. 3. Calculer lim x f(x). Exercice. Le volume d un cylindre de hauteur H = 5m et de rayon R =, m est donné par V = πr 2 H Si H est connue à 2% près et que R possède 2 chiffres significatifs, calculer la valeur de V et donner le nombre de chiffre significatifs. 2 /
Exercice. Pour les expressions suivantes, identifier la source potentielle d erreur et suggérer une expression équivalente qui améliore la stabilité du calcul. x + x 2. + 2 4 + 3 4 +... + 4 3. x 2 y 2 4. ln (x x 2 ) avec x. Exercice 2. On se place dans le système F (, 3, 3).. Calculer exactement 22 (333 + 695). 2. Calculer les expressions flottantes 22 (33 695) et (22 333) (22 695). 3. Comparer les résultats. Exercice 3. Considérons la suite récurrente définie par x n+ = 3 x n + 3 x n x n x = 2 x = 6 La limite théorique de cette suite est 6. Lorsque l on réalise le calcul numérique des termes de cette suite, on constate que la limite est. Le but de cet exercice est de déterminer l origine de ce comportement. On considère la suite (a n ) n N définie par x n = a n+ a n. Déterminer la récurrence vérifier par a n sous la forme a n+2 = α a n+ + α a n + α 3 a n 2. Donner la forme explicite générale de la suite a n. 3. Étudier la convergence de la suite en fonction des différents paramètres. 4. Expliquer le résultat numérique mentionner dans l introduction. 3 /
Exercice 4. Le but de cet exercice est de déterminer la stabilité absolue du problème P défini par. Calculer I. z = 2. Déterminer la relation de récurrence entre I n et I n. 3. Exprimer l erreur absolue I n en fonction de I. 4. Décrire le comportement de I n si α >. 5. Décrire le comportement de I n si α. x n dx, avec α > x + α Exercice 5. Les expressions suivantes sont théoriquement équivalentes y = 2 + 7 + 3 2 y 2 = 2 + 3 2 + 7 y 3 = 2 + 7 2 + 3 y 4 = 2 2 + 3 + 7 y 5 = 2 2 + 7 + 3 y 6 = 2 + 7 + 3 2 Néanmoins, un calculateur standard donnera respectivement les valeurs, 7, 2, 47, 37,. Ces erreurs proviennent du phénomène d annulation qui a lieu entre les nombres de magnitude différents. Pour chaque expression, trouver des valeurs de δx i, i 5 telles que y = x ( + δx ) + x 2 ( + δx 2 ) + x 2 ( + δx 2 ) + x 3 ( + δx 3 ) + x 4 ( + δx 4 ) + x 5 ( + δx 5 ) avec δx i < ε m. Pour chaque expression, donner min δx. Exercice 6. Montrer pour a et b,. 25n 3 + n 2 + n 4 = O(n 3 ) 2. k 2, f(n) = an + b est O(n k ) 3. qu aucune function quasilinéaire an log(bn) est o(n log(n)) Exercice 7. Le calcul des puissances de z n avec n N et z F peut être réalis par des multiplications successives ou par la méthode des puissances binaires. Dans la méthode des puissances binaire, si n = 2k + est impair, alors on remplace son calcul par z z 2k. Si n = 2k est pair, on remplace le problème par z k z k. On répète le processus jusqu à k =. Estimer le nombre maximum de multipications réalisées. 4 /
Exercice 8. Certaines lois algébriques pour les inégalités ne sont pas vérifiés avec les nombres flottants. Soit a, b, c, d mathcalf.. Montrer que si a < b, alors a c b c est vrai pour tout c. 2. Montrer que si a < b et c < d, alors a c b d. 3. Montrer que si c > et a < b, alors a c b c. Exercice 9. Soit p = /2. On considère les sommes équivalentes suivantes = k = k = k k p (k + ) p (k + ) p k p k p (k + ) p k p (k + ) p ((k + ) p + k p ) Laquelle de ces expressions est la plus précise pour une évaluation en arithmétique flottante en utilisant une sommation récursive classique? Pourquoi? Exercice. Conversion vers le décimal 2 + = 2 + = 2 2 2 + = 4 4 2 + = 9 9 2 + = 9 9 2 + = 38 38 2 + = 76 76 2 + = 53 53 2 + = 36 36 2 + = 63 ( + ) 2 =.5 ( +.5) 2 =.25 ( +.25) 2 =.625 ( +.) 2 =.825 ( +.825) 2 =.4625 5 /
Conversion vers l octal (45.32) 8 Conversion vers l hexadecimal (265.68) 6 Exercice 2.. pour x, les différentes grandeurs peuvent s annuler : e x, cos(x) et sin(x). Pour éviter le problème, on réalise un développement limité à l ordre désiré: 2. Pour x, on réalise un développement limité. 3. log(x) log(/x) = log(x 2 ). 4. Pour x, on réalise un développement limité. 5. Pour x, on réalise un développement limité. e x cos(x) sin(x) = + x x + x2 2 + x2 2 + x3 3! + x3 3! +... = 2 x2 2! + 2x3 3! + 2x6 6! + 2x7 7! +... Exercice 3. On applique la même démarche que dans le cours: f(x, x 2 ) = x x 2.. En utilisant la calcul en nombre flottant, on a f(x, x 2 ) = fl(x ) fl(x 2 ) 2. En utilisant la première propriété, fl(x ) = x ( + ε ) et fl(x 2 ) = x 2 ( + ε 2 ) 3. En utilisant la seconde propriété, fl(x ) fl(x 2 ) = (fl(x ) fl(x 2 ))( + ε 3 ) 4. En combinant l ensemble de ces equations, on obtient fl(x ) fl(x 2 ) = x ( + ε 4 ) x 2 ( + ε 5 ) = x x 2 Exercice 4. On remplace successivement b, b 2 et k par leurs valeurs: -. -.............. -.5 -..75.5.25.375.25.25.375.25.5.75..5 6 /
Exercice 5. L équation homogène associée est r 2 2r 5 = Les racines de cette équations sont r = 6 r 2 = + 6 L ensemble des suites s écrit S = { (λr n + µr2 n ) n, (λ, µ) R 2} Les valeurs de λ et µ sont déterminées à l aide des deux premiers itérés. Il est évident que la suite diverge Exercice 6.. erf() = 2. Le développement limité est donné par 3. En utilisant la relation e t2 = t 2 + t4 2! t6 3! + t8 t2n+2 +... + ( )n+ 4! (n + )! eξ, t 2 xi on obtient, x t 2k dt = x2k+ 2k + erf(x) = 2 ( x x3 π 3 + + ( )n x 2n+ ) + R n (x) n! 2n + 4. Le reste est donné par R n (x) = x 2( )n+ t 2n+2 e ξ(dt) dt π(n + )! 5. On a pour définition ξ, donc e ξ, on en déduit donc la majoration suivante On obtient une majoration à pour n. 2 x R n (x) t 2n+2 dt π(n + )! = 2 x 2n+3 π(n + )! 2n + 3 2 π(n + )! 2n + 3 7 /
Exercice 7. Les ordres de grandeurs étant très différents, il est justifié de négliger le. Exercice 8. x + δ x = ( x + δ x) ( x + δ + x) x + δ + x = δ x + δ + x Exercice 9.. Pour les valeurs de x proches de, les opérations + x 2 et e x e x sont problématiques. 2. Pour la première opération, Pour la seconde opération + x 2 = ( + x 2 ) ( + x 2 + + ) + x 2 + = + x 2 + e x e x = 2sinh(x) 3. lim f(x) = lim x x + x 2 + 2sinh(x) = 2 Exercice. Pour déterminer les chiffres significatifs, il est nécessaire de calculer l erreur absolue δv.9.5. On obtient ce résultat en considérant les données de l énoncé: H est connu a 2% près, donc y = 2% 5 =.. De plus, R possède deux chiffres significatifs ce qui veut dire que l erreur commise sur le troisième chiffre est inférieur à 5 par définition du chiffre significatif, donc R =.5. On applique ensuite la formule de propagation d erreur V = π(2rh R + R 2 H) On en déduit que V = 6.23693 et qu il n y a qu un chiffre significatif. Exercice.. On réalise la soustraction de nombres voisins proche de. x + x = 2x x 2 8 /
2. On réalise l addition de termes dont les ordres de grandeurs sont très différents. 3. On réalise la soustraction de nombres voisins. + 2 4 + 3 4 +... + 4 = 4 +... + 3 4 + 2 4 + 4. On réalise la soustraction de nombres voisins pour x. x 2 y 2 = ln ex2 e y2 log x x 2 = log x + x 2 = log 2 2 log x + + x Exercice 2.. r = 2546. 2. On réalise l opération d addition dans un premier temps, et on applique une troncature sur chaque résultat donc s 2 = 333 695 = fl(.333e 3 +.695e 3 ) = fl(.28e 3 ) =.2e 4 On applique en suite la multiplication flottante au résultat r 2 = 22 s 2 = fl(.22e 3.2e 4 ) =.24 6. De même, p = 22 333 = fl(.22e 3.333e 3 ) =.46e 4 et p 2 = 22 695 = fl(.22e 3.695 3 ) =.847e 4 Donc r 3 = p p 2 = fl(.46e 4 +.846e 4 ) =.25 6. 3. On calcul les erreurs relatives pour chaque expression ε 2 =.3 et ε 3 =.33 Exercice 3.. a n vérifie la relation de récurrence a n+2 = a n+ 3a n + 3a n a = a x a 2 = a x 2. Comme nous avons une récurrence linéaire, nous pouvons écrire la polynôme caractéristique associé à la suite y 3 y 2 + 3y 3y = Les racines de l équation sont 5, 6 et. Les suites a n sont solutions de la suite 3. Si γ, la suite converge vers. a n = α5 n + β6 n + γ n x n = α5n+ + β6 n+ + γ n+ α5 n + β6 n + γ n = γn [5α/γ(5/) n + 6β/γ(6/) n + ] γ n [α/γ(5/) n + β/γ(6/) n + ] = + u n + v n avec lim n u n = lim n v n = donc lim n x n =. 9 /
Si γ = et β, la suite converge vers 6. Si γ =, β = et α, la suite converge vers 5. Si γ =, β = et α =, la suite converge vers. 4. Dans le cas x = /2 et x = 6/, on obtient α = β et γ =. Donc la suite devrait converger vers 6. Si l on perturbe légèrement les conditions initiales, on obtient γ. Comme 6/ n a pas de représentation binaire exacte, on commet nécessairement un erreur d approximation, ce qui conduit à la divergence. Exercice 4.. Pour n = 2. Pour tout n I n = = = I = x + α dx = log( + α) log(α) = log( + α α ) x n x x + α dx x n (x + α α) dx x + α x n dx α = n αi n x n x + α dx 3. Soit η n l erreur d arrondi introduit à l itération n et qui conduit à l approximation În = n αîn + η n. On calcule l évolution de l erreur: I n = I n În 4. Si α >, tends vers : l algorithme est instable. = ( n αi n ) ( n αîn ) + η n = α(i n În ) + η n = α I n + η n n = ( α) n I + ( α) k η n k 5. Si α, tends vers ou reste constante : l algorithme est stable car le terme de reste peut être majorée par le terme suivant de la série alternée, c est-à-dire α n sup n η n α n ε où ε est un majorant des erreurs d arrondies commises. k= /