GNU Octave

GNU Octave
GNU Octave
Octave Sombrero.svg
Oberfläche
Aktuelle Version 3.4.3
(10. Oktober 2011)
Betriebssystem GNU/Linux, Mac OS X, Solaris, Unix, OS/2, Microsoft Windows
Kategorie Mathematik, Regelungstechnik, Modellbildung
Lizenz GPL (Freie Software)
www.gnu.org/software/octave/

GNU Octave [ˈɒktɪv] ist eine freie Software zur numerischen Lösung mathematischer Probleme, wie zum Beispiel Matrizenrechnung, Lösen von (Differential-)Gleichungssystemen, Integration etc. Berechnungen können in Octave mit einer Skriptsprache durchgeführt werden, die weitgehend zu dem proprietären MATLAB kompatibel ist. Fast vollständige Kompatibilität zu Matlab lässt sich durch das Zusatzpaket octave-forge und andere freie Ersatzfunktionen vom Mathworks FileExchange erreichen.

Ein großer Vorteil ist hierbei die Anpassungsfähigkeit an jeden Rechner. So lässt sich zum Beispiel der volle Adressraum auch bei 64-Bit-Rechnern nutzen. Ähnlich wie in MATLAB erfolgt die Eingabe kommandozeilenbasiert. Für die grafische Ausgabe von 2D- und 3D-Plots wird standardmäßig gnuplot verwendet. Es können aber auch alternative Grafikpakete wie beispielsweise EpsTk verwendet werden.

Implementiert ist Octave in C++, erweiterbar ist es aber auch durch Module, die in Octave selbst oder in anderen Sprachen verfasst wurden, zum Beispiel Fortran oder C/C++. Aber auch für MATLAB geschriebene externe MEX-Funktionen in C/C++ lassen sich oft ohne Code-Anpassungen für Octave kompilieren.

Andersherum sind auch alle Octave-Bibliotheken in C++-Programmen nutzbar, sodass Octave auch eine numerische Bibliothek für C++ darstellt.

Inhaltsverzeichnis

Geschichte und Konzept

Das Konzept von Octave entstand 1988. Es war zunächst als Begleitsoftware für ein studentisches Lehrbuch für chemische Reaktoren geplant, das von James B. Rawlings (University of Wisconsin-Madison) und John G. Eherdt (University of Texas) geschrieben wurde.

Zunächst wurden spezielle Tools zur Lösung von Konstruktionsproblemen chemischer Reaktoren realisiert. Als die Entwickler erkannten, dass Octave zur Lösung weiterer Probleme einsetzbar sein könnte, entschied man sich, es zu einem flexibleren Programm weiter zu entwickeln. Anfänglich sollte Octave in Fortran geschrieben werden, da dieses als technische Programmiersprache besonders geeignet zu sein schien. Die Entwickler scheiterten aber mit diesem Ansatz, da sie viel mehr Zeit dafür investieren mussten, mit der Sprache zurechtzukommen und nach den Fehlern im Code zu suchen, als etwas im Chemieingenieurwesen dadurch zu lernen. Sie beschlossen daher, ein interaktives Umfeld für das Programm zu schaffen, in dem man die Grundlagen innerhalb kürzester Zeit erlernen könnte. Das Ziel der Entwicklung war, anspruchsvolle Berechnungen sehr einfach zu gestalten.

Die Vollzeitentwicklung begann im Frühling 1992 und die erste Alpha-Version erschien am 4. Januar 1993. Seitdem wurde GNU Octave mehrmals grundlegend überarbeitet und ist inzwischen in Debian GNU/Linux und SUSE Linux integriert.

Entwicklung

Zeit Ereignis
1988/1989 Erste Diskussionen (Lehrbuch und Software)
Februar, 1992 Beginn der Entwicklung
Januar, 1993 Ankündigung im Web (Version 0.60)
Februar, 1994 Erste Veröffentlichung
Dezember, 1996 Zweite größere Veröffentlichung (Version 2.0) mit Übertragung auf Windows (Cygwin)
März, 1998 Version 2.1
November, 2004 Version 2.9 (Sprung in Vorbereitung zur Veröffentlichung von 3.0)
Dezember, 2007 Veröffentlichung der Version 3.0 (größere Aktualisierung)
21.04.2008 Version 3.0.1 (wesentliche Unterschiede in Syntax zur Version 2.1)
08.02.2011 Version 3.4.0 neueste größere Aktualisierung
10.10.2011 Veröffentlichung von Octave 3.4.3

Beispiel-Skript

Das ist ein Beispiel für ein Octave-Skript. Hier wird die Interpolation nach Lagrange definiert.

% Initialisierung
f  = @(x) exp(x);
f2 = @(x) x.^2;
 
n = 3;
schrittweite = 0.5;
I = (-3:schrittweite:3);
 
x = 0:1:n;
 
% Funktionswerte von exp(x)
y  = f2(x);
 
lx = zeros(1,n);
 
%Beispiel- Eingabe 
x =[-1,1,2]; y = [0,2,4]; lx = zeros(1,3);
 
blub = 0;
 
% Lagrangesche Interpolationsformel
for i = 1:length(x)
    polynom =1;
    for j =1:length(x)
        if i~=j
            blub =(x(i)-x(j))/(x(i)-x(j))
            polynom =polynom * blub
        end
    end
    lx(i) = y(i)*polynom
end
 
% Ausgabe
x
y
lx
plot(x,lx)

Siehe auch

Benutzerschnittstelle

Octave wird nicht mit einer grafischen Oberfläche (GUI) oder integrierten Entwicklungsumgebung (IDE) ausgeliefert. Es kann aber mit grafischen Front-End erweitert werden.

Grafische Benutzerschnittstellen (GUI)

  • Kalculus (Linux) — Matlab ähnliche Benutzeroberfläche für GNU Octave und Yacas in Qt4 programmiert, unter Anwendung von Ruby
  • Xoctave (Windows, Linux) — Xoctave kapselt GNU Octave unter Verwendung von Pipes und zusätzlichen Werkzeugen ein, um die Anwendung einfacher zu gestalten. Seine Benutzeroberfläche ähnelt der von Matlab. Lizenz: GPL
  • OctaveNB Einbindung von GNU Octave in NetBeans IDE, unterstützt SVN, mehrsprachig, Lizenz: GPL-2.0
  • GUIOctave (Windows) — GUIOctave stellt eine GUI ähnlich wie Matlab zur Verfügung, Freeware, kein Quellcode erhältlich
  • QtOctave (Windows, Linux) - Grafische Erweiterung, erhältlich als protabel-Version, Quellcode erhältlich, Weiterentwicklung ist eingestellt

Benutzerschnittstellen als Web-interface

Weblinks

 Commons: GNU Octave Diagramme – Sammlung von Bildern, Videos und Audiodateien

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • GNU Octave — screenshot Developer(s) …   Wikipedia

  • GNU Octave — Octave avec l interface graphique Octave Works …   Wikipédia en Français

  • GNU Octave — Desarrollador John W. Eaton y colaboradores …   Wikipedia Español

  • GNU Octave — У этого термина существуют и другие значения, см. Octave. GNU Octave …   Википедия

  • GNU Octave — Octave es un programa software libre para realizar cálculos numéricos, que es muy compatible con Matlab. Es parte de proyecto GNU. Nótese que Octave no es un sistema de álgebra computacional (). Octave es más bien una herramienta para realizar… …   Enciclopedia Universal

  • GNU TeXmacs — TeXmacs в Slackware 12 Операционная сист …   Википедия

  • GNU MCSim — Développeur Projet GNU Dernière version …   Wikipédia en Français

  • Octave Levenspiel — is an Emeritus professor of chemical engineering at Oregon State University. His principal interest has been chemical reaction engineering, a branch of chemical engineering studying the application of chemical reaction kinetics and physics to the …   Wikipedia

  • GNU TeXmacs — Basisdaten Entwickler GNU project Aktuelle Version …   Deutsch Wikipedia

  • Octave — hat verschiedene Bedeutungen: Octave ist ein männlicher Vorname. GNU Octave, eine Software zur numerischen Lösung mathematischer Probleme Die Abkürzung OCTAVE steht für: Operationally Critical Threat, Asset, and Vulnerability Evaluation, ein… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”