Programmation Octave/Analyse réelle
Opérateur de base
[modifier | modifier le wikicode]Octave possède tous les opérateurs de base : "+, -, *, /" cependant si on veut effectuer des calculs composantes par composantes et non matriciels il faut ajouter un point devant l'opérateur par exemple :
octave> x = 3*ones(2,2) x = 3 3 3 3 octave>y = x*x y = 18 18 18 18 octave:14>z = x.*x z = 9 9 9 9
Fonction de base
[modifier | modifier le wikicode]La fonction "ceil" permet d'obtenir le plus petit entier supérieur au nombre passé en argument:
octave:> x = ceil(1.001) x = 2
La fonction "round" permet d'obtenir l'entier le plus proche du nombre passé en argument:
octave> x = round(3.501) x = 4
Trigonométrie
[modifier | modifier le wikicode]Octave propose plusieurs fonctions trigonométriques:
- Sinus : "sin(x)"
- Cosinus : "cos(x)"
- Tangente : "tan(x)"
- Sécante : "sec(x)"
- Arcsinus : "asin(x)"
- Arccosinus : "acos(x)"
- Arctangent : "atan(x)"
- Cosecante : "csc(x)"
Fonction exponentielle, logarithme et puissance
[modifier | modifier le wikicode]On peut aussi calculer l'exponentielle d'un nombre avec la commande "exp()" ou en elevant à la puissance la constante "e", D'une façon générale on peut élever un nombre à une puissance avec l'opérateur "^":
octave> x = 2 x = 2 octave> y = 2^10 y = 1024 octave>x = exp(2) x = 7.3891 octave>y = e^2 y = 7.3891
Il y a aussi la commande "log()" pour calculer le logarithme ainsi que "log2()" et "log10()" pour le logarithme en base 2 et 10:
octave:18>z = log2(y) z = 10
Fonctions hyperboliques
[modifier | modifier le wikicode]Voici les fonctions hyperboliques implémentées par Octave:
- Sinus hyperbolique : "sinh(x)"
- Cosinus hyperbolique : "cosh(x)"
- Tangente hyperbolique : "tanh(x)"
- Secante hyperbolique : "sech(x)"
- Cotangente hyperbolique : "coth(x)"
- Argument sinus hyperbolique : "asinh(x)"
- Argument cosinus hyperbolique : "acosh(x)"
- Argument tangente hyperbolique : "atanh(x)"
Fonctions spéciales
[modifier | modifier le wikicode]On peut aussi très simplement calculer des fonctions spéciales:
- Factorielle : "factorial(x)"
- Fonction Gamma : "gamma(x)"
- Fonction d'erreur : "erf(x)"
- Fonction Beta : "beta(x,y)"
Somme et Produit
[modifier | modifier le wikicode]Les commandes "sum()" et "prod()" permettent de calculer la somme ou le produit des composantes d'un vecteur ligne:
octave> x = 1:5 x = 1 2 3 4 5 octave> s = sum(x) s = 15 octave> p = prod(x) p = 120
Polynôme
[modifier | modifier le wikicode]Octave permet de manipuler des polynômes facilement. Par exemple le vecteur :
octave> p = [-1 2 0 4];
Représente le polynôme . Par afficher le polynôme de façon naturelle il faut utiliser la fonction "polyout" :
octave> polyout(p,'x') -1*x^3 + 2*x^2 + 0*x^1 + 4
On peut aussi deriver ou integrer un polynôme avec les fonctions "polyint" et "polyder" :
octave> polyder(p) ans = -3 4 0 octave> polyint(p) ans = -0.25000 0.66667 0.00000 4.00000 0.00000
Et enfin pour evaluer un polynôme en un point on utilise polyval :
octave> polyval(p,1) ans = 5
Définir des fonctions
[modifier | modifier le wikicode]Pour définir ses propres fonctions il faut utiliser une commande un peu différente de ce que nous avons déjà vu. Supposons que nous voulions utiliser la fonction:
Il faut procéder comme cela :
octave> function [y] = f(x) > y = log(1+x.^2)-sqrt(cosh(x)) > endfunction
Ensuite nous pouvons tester notre fonction:
octave> y = f(0) y = -1 y = -1 octave> y = f(10) y = -100.33 y = -100.33
Une telle définition de fonction peut aussi être entrée dans un fichier spécifique qui contient exactement les mêmes caractères et qui porte comme nom, le nom de la fonction, sous la forme (ici) f.m