Approximation de racines : la théorie I. La méthode de dichotomie

http://alexandre.boisseau.free.fr/Prive/WWW/InfoPCSI/resume16.pdf
16
Approximation de racines : la théorie
I. La méthode de dichotomie
On dispose d’une fonction f: [a,b]R
continue et telle que f(a) et f(b) sont de signes
contraires. La fonction fs’annule sur [a,b] et on
veut obtenir une valeur approchée à εprès (ε>0
est également donné) d’une racine de f.
a
b
c=a+b
2
Données : f,a,b,ε
tant que (ba)>ε
ca+b
2
s i f(a)×f(c)É0
alors bc
sinon ac
fin s i
fin tant que
Résultat : a+b
2
def dichotomie(f,a,b,epsilon):
while (b-a)>epsilon:
c=float(a+b)/2
if f(a)*f(c)<=0:
b=c
else:
a=c
return float(a+b)/2
Exemple Python.
print dichotomie(lambda x:x**2-2,0,2,1e-3)
1.41455078125
Remarque. La construction lambda x:x**2-2désigne la fonction qui à xassocie x22.
Cette écriture est très pratique lorsque l’on a besoin d’utiliser une fonction mais que l’on
ne juge pas utile de lui donner de nom. On aurait aussi bien pu écrire :
def f(x): # Si f n'est pas utilisée par ailleurs !
return x**2-2
print dichotomie(f,0,2,1e-3)
II. La méthode de Newton
On considère une fonction fde classe C1sur un intervalle I. On suppose que fs’annule
en αIet que fne s’annule pas sur Iet on cherche à déterminer une valeur approchée de
α. On définit pour cela une suite (xn) par récurrence :
on prend x0I(assez proche de α, lorsque l’on connait une estimation de αou un
encadrement) ;
pour nN,xn+1est défini comme étant l’abscisse du point d’intersection de l’axe
des abscisses avec la tangente à la courbe représentative de fau point d’abscisse xn.
La suite (xn) satisfait la relation de récur-
rence :
nN,xn+1=xnf(xn)
f(xn)
Sous les bonnes hypothèses, la suite (xn)
converge vers une solution de l’équation f(x)=
0. On va calculer xnpour un entier ndonné.
x0
x1
x2
Données : f,f,x0et n
xx0
pour kallant de 0àn1
xxf(x)
f(x)
fin pour
Résultat : x
def newton(f,fprime,x0,n):
x=x0
for k in range(0,n):
x=x-float(f(x))/fprime(x)
return x
Exemple Python.
from math import sin,cos
print newton(lambda x:-cos(x),lambda x:sin(x),1,5)
1.57079632679
BRemarque. Chacun des deux algorithmes a besoin de la fonction f(bien entendu) et
d’informations supplémentaires :
Pour l’algorithme de dichotomie, il faut donner deux valeurs dont les images par f
sont de signes opposés ;
Pour l’algorithme de Newton, il faut fournir la dérivée de fainsi qu’une valeur de
départ (estimation initiale).
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !