# TP1 Calcul approché, résolution d'équation $f(x)=0$ On s'interesse à la résolution numérique d'une équation $f(x)=0$, où de manière équivalente à $g(x)=x$ avec $g(x)=f(x)+x$. ## Méthode du point fixe On cherche à résoudre l'équation $$ x - \cos x = 0, \,\, x\in [0,1] $$ Sous certaines hypothèses (cf TD), la suite définie par $$ \left\{\begin{array}{l} x_0\in I \\ x_{n+1} = g(x_n) \end{array}\right. $$ converge vers un point fixe de $g$. Ici, $g(x) = \cos x\,\, , \,x\in [0,1]$. 1. Récupérez le fichier [pointFixe.sci](src/pointFixe.sci) définissant la fonction ``` function y = pointFixe(x0,n) y = x0; for i = 1:n y = ... end endfunction ``` Cette fonction prend en entrée `x0` une valeur initiale de la suite et `n` le nombre d'itérations. La fonction doit retourner `y` valant $x_n$. Complétez le fichier, chargez la fonction, et vérifiez pour différentes valeurs initiales de $[0,1]$ que la suite converge vers le même $l = \cos l$. Que vaut $l$ ? Normalement, $l \approx 0.739085133215161$. 2. Récupérez le fichier [pointFixeErreur.sci](src/pointFixeErreur.sci) définissant la fonction ``` function err = pointFixeErreur(x0) for i=1:50 y = pointFixe(x0,i) err(i) = ... end endfunction ``` Cette fonction prend en entrée `x0` une valeur initiale de la suite. Complétez la fonction pour que `err(i)` vale $|e_i|$ l'erreur commise à l'étape $i$, en valeur absolue. 3. Tracez l'évolution de l'erreur : ``` erreur = pointFixeErreur(0.1) plot2d(erreur) ``` 3. Récupérez le fichier [pointFixeVitesseConvergence.sci](src/pointFixeVitesseConvergence.sci) qui définit la fonction ``` function ratio = pointFixeVitesseConvergence(x0) err = pointFixeErreur(x0); ratio = // TODO endfunction ``` Cette fonction prend en entrée `x0` une valeur initiale de la suite. Complétez le fichier pour que `ratio(i)` vale $\frac{|e_{i+1}|}{|e_i|}$. Chargez la fonction, et tracez le résultat. Vérifie-t'on que la méthode est d'ordre 1 ? ## Dichotomie ### Principe de la méthode On se donne une fonction continue $f$ sur l'intervalle $[a,b]$ sur lequel $f$ ne s'annule qu'une fois en changeant de signe. Pour trouver la solution, on divise l'intervalle $[a,b]$ en deux avec son milieu \[ m=\frac{a+b}{2} \] Si $f(a)$ et $f(m)$ sont de même signe, la solution cherchée se trouve dans $[m,b]$, sinon elle se trouve dans $[a,m]$. On itére alors la recherche dans le nouvel intervalle jusqu'à ce que sa longueur soit inférieur à une précision $\epsilon$ voulue.