GNU Octave

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
GNU Octave
Image illustrative de l'article GNU Octave
Logo

Octave avec l'interface graphique Octave Workshop
Octave avec l'interface graphique Octave Workshop

Développeur Projet GNU
Première version 1988
Dernière version 3.8.1 (le 7 mars 2014,
il y a 5 mois
[1]
)
[+/-]
Écrit en C, C++
Environnement GNU/Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, MS Windows
Type Calcul numérique
Licence GNU GPL
Site web (en) Site officiel

GNU Octave est un logiciel libre de calcul numérique comparable à MATLAB et à Scilab. Ce n'est pas un logiciel de calcul formel. Le logiciel est développé puis maintenu pour le projet GNU par John W. Eaton.

Histoire[modifier | modifier le code]

Le projet a été conçu aux alentours de 1988. Le véritable développement est commencé par John W. Eaton en 1992. La première version (alpha) sort le 4 janvier 1993. La version 1.0 est rendue disponible le 17 février 1994. La version 2 a été publiée en 1995 et la version 3 en décembre 2007.

Le nom Octave vient d'Octave Levenspiel (en), ancien professeur de génie chimique de John W. Eaton qui était connu pour son aptitude à donner de bonnes approximations à des problèmes numériques.

Détails techniques[modifier | modifier le code]

  • Octave est écrit en C++. Il utilise la bibliothèque STL.
  • Octave utilise gnuplot et Grace pour créer les graphiques et les diagrammes, pour les enregistrer et les imprimer.

Octave, le langage[modifier | modifier le code]

Octave est un langage interprété. C'est un langage de programmation structuré comme le Langage C qui accepte de nombreuses constructions de la bibliothèque standard du C. Il peut être étendu pour accepter les fonctions et les appels systèmes Unix.

Des fonctions écrites en C++ peuvent être utilisées dans l'environnement Octave. Le fichier source porte l'extension '.cc', car écrit en C++ et la fonction compilée à l'aide de mkoctfile porte l'extension '.oct'. Ceci permet de travailler avec l'environnement souple d'Octave tout en ayant la vitesse d'exécution d'un programme compilé.

Pour la plupart des commandes, sa syntaxe est celle de MATLAB et une programmation soigneuse permet de faire fonctionner des scripts Octave sur MATLAB; l'inverse n'est pas forcément vrai en raison de la plus grande richesse de MATLAB, qui est un logiciel commercial.

Comme Octave est distribué sous GNU GPL v3, il peut être librement distribué et utilisé. Il fonctionne sur la plupart des systèmes d'exploitation Unix et sur Microsoft Windows.

Octave fonctionne avec des nombres réels comme complexes. On peut par exemple écrire exp(i*pi) et obtenir le résultat -1, à la précision de calcul de la machine près. Sur un Core i7 3770 sous Ubuntu 13.0, la réponse est :

ans = -1.0000e+00 + 1.2246e-16i

Des fonctionnalités de tracé graphique simples en couleurs (2D, surfaces, etc.) sont disponibles directement dans le langage. Elles permettent des superpositions de courbes, leur mise à jour en temps réel et la juxtaposition de graphiques dans des grilles simples. Cette possibilité est utile pour suivre la convergence d'algorithmes d'analyse numérique ou d'automatique ainsi que pour représenter un espace des phases simple.

Usage[modifier | modifier le code]

Octave, du fait qu'il traite directement les vecteurs et matrices (comme APL, mais sans avoir besoin de caractères spéciaux) permet de programmer très vite et de façon lisible des applications de recherche opérationnelle. C'est par exemple, et parce qu'il est gratuit, le langage qui a été retenu pour les cours Machine Learning de Stanford sur Coursera, MATLAB restant bien entendu utilisable.

Notes et références[modifier | modifier le code]

  1. (en) John W. Eaton (27-12-2013), « GNU Octave 3.8.0 Released », info-gnu.

Voir aussi[modifier | modifier le code]

Sur les autres projets Wikimedia :

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]