ubuntuusers.de

Octave

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

./octave_logo.png GNU Octave 🇬🇧 ist eine interaktive Skriptsprache zur Lösung von Problemstellungen aus dem Bereich der Numerische_Mathematik. Die Syntax von Octave ist weitgehend mit der des bekannten proprietären Mathematikprogramms Matlab identisch. Octave kann auch komplexe Grafiken in 2D und 3D ausgeben. Zur grafischen Darstellung können verschiedene Funktionenplotter verwendet werden. Neuere Versionen bringen eine komplette Entwicklungsumgebung mit. Einsatzgebiete von Octave sind unter anderem:

Installation

Um mit Octave arbeiten zu können, müssen folgende Pakete installiert [1] werden:

  • octave (universe)

  • octave-doc (universe, Dokumentation der Skriptsprache, liegt nach der Installation im Ordner /usr/share/doc/octave-doc)

  • gnuplot (universe, Gnuplot für 2D- und 3D-Grafiken)

Befehl zum Installieren der Pakete:

sudo apt-get install octave octave-doc gnuplot 

Oder mit apturl installieren, Link: apt://octave,octave-doc,gnuplot

Des Weiteren gibt es noch eine ganze Reihe von Erweiterungen für Octave für verschiedene Anwendungsgebiete in den Paketquellen. Eine Übersicht erhält man, wenn man in der Ubuntu Paketsuche 🇬🇧 nach dem Suchbegriff "octave" sucht.

Benutzung

Octave kann über eine grafische Oberfläche oder auch im Terminal ausgeführt werden. Die grafische Oberfläche bietet noch einige Zusatzfunktionen.

Graphische Ausgabe

Mit Octave lassen sich mathematische Elemente, beispielsweise Funktionen, auch sehr einfach grafisch ausgeben. Dazu wird ein Funktionsplotter verwendet. Der Standardplotter unter Octave (aber auch bei vielen anderen Linux-Programmen) ist Gnuplot. Mit diesem Programm können sowohl 2D- als auch 3D-Grafiken ausgegeben werden.

Grafiken werden durch den Aufruf des Befehls plot (für 2D-Grafiken) oder mesh (für 3D-Grafiken) angezeigt. Durch weitere Parameter lassen sich verschiedene Eigenschaften wie Linienstärke, Form (z.B. als einzelne Punkte) oder Farbe auswählen. Bei 2D-Objekten kann auch ein Gitternetz mit Hilfslinien eingeblendet werden. Außerdem kann man die Achsen beschriften und dem Bild einen Titel zuweisen.

2D-Ausgabe einer Funktion 3D-Ausgabe einer Funktion
./octave_2d_quantal.png ./octave_3d_quantal.png
x = -10:.1:10;
y = sin(x).*exp(-abs(x));
plot(x,y);
grid;
x = -3 : .1 : 3;
y = -3 : .1 : 3;
[xx, yy] = meshgrid(x, y);
z = exp(-xx.^2 - yy.^2);
mesh(x, y, z);

Interaktiver Text-Modus

Das installierte Programm wird im Terminal [5] mit dem Befehl octave gestartet. Bei der Arbeit in diesem interaktiven Modus wird jeder Befehl einzeln eingegeben. Nach einem Druck auf wird die soeben eingegebene Zeile sofort interaktiv verarbeitet und evtl. eine Ausgabe erzeugt.

In folgendem einfachen Beispielaufruf wird eine Matrix und ein Vektor definiert und anschließend eine Multiplikation durchgeführt:

octave:1> A = [1 3 5; 2 4 6; 7 8 1];
octave:2> b = [0.5; 3.5; 7];
octave:3> c = A*b
c =

   46.000
   57.000
   38.500 

Die genaue Anweisungs-Syntax und viele hilfreiche Berechnungsbeispiele finden sich in den Links. Aufgrund der hohen Kompatibilität kann aber auch jedes MATLAB Buch hilfreich sein.

Erstellung und Aufruf von Skripten

Bei größeren Berechnungen ist es meist sinnvoller, die Befehle in einer Textdatei abzuspeichern, anstatt alles manuell einzugeben. Diese Skripte haben sowohl unter Matlab als auch bei Octave die Endung .m und können direkt aus dem interaktiven Modus von Octave oder z.B. mit einem Editor aufgerufen werden.

Dazu muss Octave allerdings im Verzeichnis des Skripts gestartet sein, oder das Arbeitsverzeichnis von Octave manuell mit dem Befehl cd ORDNER verändert werden. Zum Aufruf gibt man nur den Namen des Skripts ohne Endung ein. In diesem Beispiel wird Berechnung.m im Unterordner Skripte aufgerufen:

octave:1> cd Skripte
octave:2> Berechnung 

Funktionen, die in einem Skript des Arbeitsverzeichnisses definiert sind, stehen darüber hinaus automatisch zur Verfügung und müssen nicht gesondert geladen werden.

Für den einmaligen Aufruf eines Skripts aus dem Terminal kann Octave der Dateiname auch direkt als Startparameter übergeben werden:

octave Skripte/Berechnung.m 

Suchpfad anpassen

Arbeitet man viel mit Octave-Skripten, möchte man eventuell ein Skript-Verzeichnis festlegen, aus dem die Skripte direkt aufgerufen werden können.

Dazu muss man die Skripte in ein Verzeichnis z.B. nach ~/octave-scripts legen und die Datei ~/.octaverc anlegen mit folgendem Inhalt:

addpath("~/octave-scripts")

Die Skripte aus diesem Verzeichnis sind dann direkt (ohne die Endung .m) aufrufbar, egal, in welchem Verzeichnis man sich gerade befindet. Für obiges Beispiel würde nun also folgendes funktionieren, egal in welchem Verzeichnis man sich gerade befindet:

octave:1> Berechnung 

Aufruf durch gedit

Octave-Skripte können direkt in gedit inklusive Syntax-Hervorhebung bearbeitet und direkt aus Gedit heraus aufgerufen werden. Dazu muss man zunächst unter "Einstellungen → Erweiterungen" den Punkt "Externe Werkzeuge" aktivieren. Danach kann die Erweiterung in Gedit unter "Externe Werkzeuge verwalten" aktiviert werden. Die richtige Konfiguration und Benutzung kann dem Bildschirmfoto entnommen werden.

./octave_settings.png

Im Textfeld tippt man die folgenden Zeilen ein:

1
2
#!/bin/sh
octave -q $GEDIT_CURRENT_DOCUMENT_NAME

Falls die korrekte Syntax-Hervorhebung nicht automatisch aktiviert wurde, findet man sie in der Kategorie "Ansicht → Hervrohebungsmodus → Octave".

Erweiterungen

Octave-Forge

Octave-Forge 🇬🇧 stellt eine enorme Menge an nützlichen Zusatzpaketen für Octave zur Verfügung. Die Fülle der Erweiterungs-Möglichkeiten reicht von A wie Audio-Verarbeitung bis Z wie Zenity-Integration.

Zusatzpakete können entweder über die offiziellen Paketquellen (oftmals veraltet!) oder auch leicht direkt aus der Octave-Eingabeaufforderung (Prompt) heraus nach- und auch wieder deinstalliert werden. Die Installation eines heruntergeladenen Archivs ⮷ in das Homeverzeichnis kann mit folgendem Octave-Befehl vorgenommen werden:

octave:1> pkg install ARCHIVNAME.tar.gz 

Um ein Zusatzpaket wieder zu deinstallieren, geht man wie folgt vor:

octave:1> pkg uninstall ARCHIVNAME 

Ausführliche Informationen zur manuellen In- und Deinstallation von Zusatzpaketen sind in der Dokumentation 🇬🇧 nachzulesen.

Tutorials

Diese Revision wurde am 4. Mai 2021 13:06 von ubot erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Statistik, Mathematik, Bildung