Introduction au calcul scientifique TP 7 1
Introduction au calcul scientifique
TP 7 – Résolution d’équations non-linéaires
Romain Brette
brette@[Link]
Dichotomie
pour une fonction f donnée (e.g. f(x)=cos(x)), écrire une fonction qui calcule par dichotomie
(bissection) la solution de f(x)=0 vérifiant a<x<b, avec f(a)f(b)<0 ;
vérifier avec f = cos, a = 0 et b = 3.
Méthode de Newton
écrire une fonction qui résout f(x) = 0 par la méthode de Newton ;
vérifier avec f = cos, x0 = 1.
Moindres carrés non-linéaires
Deux quantités physiques x et y sont liées
par une relation exponentielle, du type :
y a * exp(b * x)
On observe expérimentalement p couples
(xi,yi) (points sur la figure de droite). Le
problème est d’estimer les paramètres a et
b (sur la figure de droite : la courbe est la
relation x-y sans bruit).
Précisément, on veut déterminer a et b de
façon à minimiser :
p
E (a, b) ( y i a exp(bxi )) 2
i 1
On note f i (a, b) y i a exp(bx i ) .
Dans les détails :
Calculer la jacobienne de f.
Calculer la hessienne de fi.
Implémenter la méthode de Newton pour la minimisation de E (on utilisera les TPs
précédents)
On vérifiera la performance du programme :
Choisir des valeurs pour a et b.
Générer 100 points (xi,yi) avec yi = a*exp(bxi) + bruit, où le bruit est un nombre aléatoire de
moyenne nulle.
Tester le programme sur ces points
Afficher simultanément les points et la courbe y = a’*exp(b’x), où a’ et b’ sont les estimations
données par le programme
[Link]