ajout tp2 Newton
This commit is contained in:
parent
f5c109e1c3
commit
2b7c4fd424
num/tp2
60
num/tp2/README.md
Normal file
60
num/tp2/README.md
Normal file
@ -0,0 +1,60 @@
|
||||
# TP2 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$.
|
||||
|
||||
## Newton
|
||||
### Principe de la méthode
|
||||
Elle consiste à remplacer progressivement une valeur $x_n$, proche de la solution $f(x)=0$,
|
||||
par une valeur $x_{n+1}$, plus proche de la solution, définie par :
|
||||
|
||||
- on trace la tangente $T$ au graphe de $f$ au point $ (x_n,f(x_n))$
|
||||
- $x_{n+1}$ est l'abscisse du point d'intersection de $T$ avec l'axe des $x$. L'idée est d'approcher la solution de $f(x) = 0$ avec la solution de $T(x)=0$.
|
||||
<div align="center">
|
||||
<img src="./img/newton.png">
|
||||
</div>
|
||||
|
||||
1. Montrer que la suite $ (x_n)$ est définie par la formule de récurrence
|
||||
\[
|
||||
x_{n+1} = x_{n} - \frac{f(x_n)}{f'(x_n)}
|
||||
\]
|
||||
|
||||
2. on s'interesse au cas particulier $f(x)=x^2-2$. Montrer que la récurrence précédente devient (Méthode de Héron)
|
||||
\[
|
||||
x_{n+1} = \frac{x_n+\frac{2}{x_n}}{2}
|
||||
\]
|
||||
3. Ecrire une fonction scilab
|
||||
```
|
||||
--> function [x]=Heron(x0,n)
|
||||
// x0 <-> valeur initiale pour la suite
|
||||
// n <-> nombre d'itérations
|
||||
// x <-> valeur calculée
|
||||
```
|
||||
4. Comparer la vitesse de convergence avec la méthode dichotomique du tp1, en calculant l'erreur commise en fonction
|
||||
du nombre d'itérations (on considère que la solution exacte est`sqrt(2)`).
|
||||
|
||||
5. Vérifiez que la méthode est d'ordre 2 (ou pas), en calculant $\frac{|e_{i+1}|}{|e_i|}$.
|
||||
|
||||
6. Ecrire une fonction scilab
|
||||
```
|
||||
--> function [x n]=newton(f,df,x0,eps)
|
||||
// f <-> fonction
|
||||
// df <-> fonction dérivée de f
|
||||
// x0 <-> point de depart
|
||||
// eps <-> precision
|
||||
// x <-> valeur calculée
|
||||
// n <-> nombre d'itérations necessaires
|
||||
```
|
||||
Pour le test d'arrêt, on arrête le calcul dès que $|x_{n+1} - x_n |$ est plus petit que la précision souhaitée.
|
||||
Évidemment `f` et `df` doivent être définies !
|
||||
|
||||
- Testez avec la fonction $f(x)= x - \cos x$
|
||||
- Tester avec la fonction $f(x)=x^2 -2$
|
||||
- Tester avec la fonction $\cos x - x^2$
|
||||
- Trouver une valeur approchée de **toutes** les racines de la fonction $x^3-4x+1$
|
||||
|
||||
6. Pour la fonction $\cos$ calculer la racine approchée pour les valeurs initiales $x_0=1,2,\ldots,10$, placer
|
||||
les valeurs initiales et les solutions sur le graphe de la fonction $\cos$ et commenter.
|
||||
|
||||
7. Reprendre les questions précédentes en utlisant la fonction `fsolve` de scilab.
|
||||
|
||||
|
BIN
num/tp2/img/Newton.png
Normal file
BIN
num/tp2/img/Newton.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 33 KiB |
BIN
num/tp2/img/newton.png
Normal file
BIN
num/tp2/img/newton.png
Normal file
Binary file not shown.
After ![]() (image error) Size: 26 KiB |
Loading…
x
Reference in New Issue
Block a user