Programmation Octave/Analyse réelle
Opérateur de base
modifierOctave 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
modifierLa 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
modifierOctave 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
modifierOn 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
modifierVoici 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
modifierOn 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
modifierLes 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
modifierOctave 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
modifierPour 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