Programmation Octave/Calcul numérique
Un livre de Wikibooks.
| Octave |
| L'étagère Informatique et Mathématiques. |
| Sommaire |
|
| Bibliographie |
| Autres cours |
| Modifier ce modèle |
[modifier] Résoudre des équations non-linéaires
La commande "fsolve("f",x0)" permet de donner une approximation de la solution à l'équation f(x) = 0 en partant du nombre initiale "x0". Par exemple si on veut résoudre:
Il faut d'abord définir la fonction:
octave> function [y] = f(x) > y = x.^3 - x.^2 + 5.*x -8 > endfunction
Ensuite on dessine le graphique de la fonction pour voir approximativement ou se situe le zero de la fonction:
octave> x = -5:0.1:5; octave> plot(x,f(x));
On voit que le zero se trouve entre 0 et 2 donc on peut choisir x0 = 1.5:
octave> z = fsolve("f",1.5)
y = 0.62500
y = 0.62500
y = 0.017493
y = 5.0709e-04
y = 4.2678e-07
y = 1.0425e-11
y = 0
z = 1.4265
Ensuite on vérifie la solution:
octave> y = f(z) y = 0 y = 0
[modifier] Résoudre des équations différentielles du premier ordre
La commande "lsode" permet de resoudre des équations du type:
Ou f est inconnue.
[modifier] Minimiser une fonction
fmins permet de minimiser une fonction de plusieurs variables. Par exemple si on veut minimiser
avec le vecteur initial (1,0). il suffit de faire :
octave> F = @(x) (x(2)-1)^2 + (x(1)-3)^2; octave> fmins(F,[1 0]) ans = 3 1



