2014 GNU Octave GRUNDLAGEN MARCUS SCHÜTTLER HTW BERLIN | s0532059 Inhaltsverzeichnis Was ist Octave? ....................................................................................................................................... 2 GNU Octave ......................................................................................................................................... 2 Octave-Forge ....................................................................................................................................... 2 qtOctave .............................................................................................................................................. 2 Octave Einrichtung .................................................................................................................................. 2 Installation ........................................................................................................................................... 2 Linux ................................................................................................................................................ 2 Windows .......................................................................................................................................... 2 Java ................................................................................................................................................ 12 Benutzeroberfläche ........................................................................................................................... 12 Path-Erweiterung .............................................................................................................................. 15 Hilfe für Octave...................................................................................................................................... 15 Eingebaute Hilfe ................................................................................................................................ 16 Kommandoübersicht ......................................................................................................................... 16 1 Was ist Octave? GNU Octave GNU Octave ist eine Interpreter Hochsprache für numerische Berechnungen und ist auch gleichzeitig der Name für die Softwareimplementierung. Ursprünglich war Octave als Hilfsmittel für Studenten zum Entwerfen von Chemischen Reaktoren von den Professoren James B. Rawlings der University of Wisconsin-Madison und John G. Ekerdt der University of Texas entwickelt. Allerdings waren bei dieser Spezialsoftware die Limitierungen zu groß und so wurde auf einen größeren flexibleren Funktionsumfang umgestiegen. Mittlerweile umfasst Octave Hilfsmittel zum Lösen linearer und nicht linearer Probleme. Octave nutz ein Terminal-interface für die Benutzereingaben. Seit Version 3.8 ist eine Grafische Benutzer Oberfläche implementiert, die sich noch in der Testphase befindet und nur durch expliziten Benutzerwunsch nutzen lässt. Voraussichtlich wird diese ab Version 4 als standard Benutzeroberfläche verfügbar sein. Die Befehle, die Octave nutzt sind weitestgehend kompatibel zum Konkurenzprodukt Matlab von Mathworks. Im Gegensatz zu Matlab, welches proprietäre Software ist, ist Octave ein Opensource Projekt, das unter GNU GPL1 lizensiert ist. Es fallen also keinerlei kosten für die Nutzung an, sei es privat oder kommerziell. Octave-Forge Octave-Forge ist ein Sourceforge Projekt welches Erweiterungen für Octave bereitstellt. Diese Erweiterungen erweitern Octave um viele Funktionen wie Bildverarbeitungen, Netzwerkkommunikation und Windows COM-Interface. Gleichzeitig stellt Octave-Forge einen Installer bereit der sowohl Octave, als auch alle Pakete von Octave-Forge enthält. qtOctave QtOctave ist eine grafische Benutzer Oberfläche für Octave. Wie Octave ist qtOctave ein Opensource Projekt, welches unter GNU GPL-22 lizensiert ist. 2011 wurde das Projekt jedoch eingestellt, weil es eine grafische Benutzer Oberfläche von Seiten des Octave Teams implementiert wird. Octave Einrichtung Installation Linux In den meisten Linux-Distributionen ist Octave im Repository der Distribution enthalten und kann über den jeweiligen Paketmanager, z.B. apt, heruntergeladen und installiert werden. Gleiches gilt in vielen Fällen auch für qtOctave. Für das Nutzen der ab v3.8 enthaltenen Benutzeroberfläche muss Octave mit Argument „--force-gui“ gestartet werden. Windows Es gibt mehrere Möglichkeiten Octave zu beziehen. 1 2 http://www.gnu.org/software/octave/license.html https://www.ohloh.net/licenses/gpl 2 Installation via Octave-Forge Die einfachste ist via Octave-Forge. Der dort bereitgestellte Installer ist einfach zu handhaben und beinhaltet alle Paket von Octave-forge. Allerdings handelt es sich dabei nicht um die aktuellste Version von Octave3. Wenn keine Java-Runtime installiert ist sollte man bei der Installation das JavaPaket abwählen, da es sonst zu einer Fehlermeldung kommt, oder man ignoriert diese Fehlermeldung. Es kann auch vorkommen, dass trotz installierten Java diese Fehlermeldung erscheint, dann kann man diese auch ignorieren4. Schritt-für-Schritt Wilkommensnachricht. 3 4 Stand: 19. Mai 2014 Beobachtet unter Windows 8.1 mit Java 8.0 installiert, kann sein, dass der Installer nach Java 7 sucht. 3 Auswahl auf für bestimmte Prozessortypen Bibliotheken. Wenn man nicht sicher ist, was man auswählen soll, „Generic“ wählen. Auswahl der zu installierenden Komponenten. Hier kann man di zu installieren Octave-Forge Pakete wählen. „+“ erweitert die Auswahl. 4 Fehlermeldung das kein Java installiert ist. Wenn Java 7 oder höher5 einfach mit „Ja“ fortfahren oder „Nein“ Klicken und Java abwählen. Man kann auch mit „Ja“ fortfahren und Java nachträglich installieren. 5 Bei höheren Versionen Kommt es zu Fehlermeldung. 5 Auswahl des Toolkits zum Darstellen von Daten. Im Zweifelsfall Gnuplot wählen. Installationspfad auswählen. 6 Anpassen des Startmenüordners. Nach Abschluss der Installation Auswahl, ob Octave gestartet werden soll. 7 Installation via MXE-Build Die nächst einfachste Möglichkeit ist das beziehen des MXE- Buids. Dieses ist enthält eine wesentlich neuere Version von Octave. Außerdem kann man zwischen einem Installer und einem Zip-Archiv wählen. Letzteres erfordert keine Installation auf dem System und kann auch von einem USB-Stick ohne weiteres ausgeführt werden. Zum Starten von Octave mit grafischer Benutzeroberfläche muss auch die „octave-gui.bat", bzw. w8-octave-gui.bat für Systeme mit Windows 8(.1). Diese batdatei muss dann anstelle der octave.exe zum Starten genutzt werden. Schritt-für-Schritt Fehlermeldung bei Verwendung unter Windows. Kann ignoriert werden(„Ja“ klicken). Immer mit „Ja“ fortfahren sonst bricht Installation ab. Falls man das Java Paket nutzen möchte muss Java noch installiert werden. Fehler tritt auch auf wenn eine Höhere Java-Version als 7 installiert ist. 8 Willkommensnachricht. Lizenzvereinbarung. Ohne zustimmen(durch fortfahren) kann Octave nicht installiert werden. 9 Auswahl ob für alle Nutzerkonten des PCs Octave installiert werden soll, ob eine veknüpfung auf dem Desktop erstellt werden soll und ob „.m“-Dateien(meist Octave Skript-Dateien) immer mit Octave geöffnet werden sollen. Auswahl des Installationsverzeichnisses. 10 Nach Abschluss der Installation Auswahl ob Octave gestartet werden soll und Auswahl ob Die „Readme“ angezeigt werden soll. Falls die ein Kommandointerface gestartet wird obwohl man die Grafische Oberfläche(GUI) wollte die „octave-gui.bat", bzw. w8-octave-gui.bat für Systeme mit Windows 8(.1) von der gleichen Webseite wie den Installer beziehen und in das Octave-Installationsverzeichnis kopieren. Danach Octave immer über diese „.bat“ starten. 11 Java Unter Umständen kann der Fehler bzgl. Java daher kommen, dass die Systemvariable, die die Nutzung von Java ermöglicht, nicht gesetzt ist. Wenn also trotz installierten Java das Java-Paket nicht verwendet werden kann, muss die Systemvariable gesetzt werden. Hilfe dazu gibt es hier. Benutzeroberfläche Es wird nur die in Octave integrierte Benutzeroberfläche behandelt, da qtOctave eingestellt ist und ab Version 4 sowieso die eigene Oberfläche standardmäßig gestartet wird. Menüleiste mit Toolbar: Beinhaltet diverse Funktionen zum Einstellen und Arbeiten mit Oktave. Verzeichnisbrowser: Ermöglich das Öffnen von Skriptdateien ohne das Octave zu minimieren. Arbeitsumgebung: Zeigt die gespeicherten Variablen an. Befehlshistorie: Zeigt die bisher Verwendeten Befehle an. Mit einem Doppelklick lassen sich diese dann erneut verwenden(alternativ kann man auch die Pfeiltasten verwendend) zusätzlich gibt es eine Filterfunktion für die Einträge 12 Arbeitsfläche: Enthält Befehlsfenster, also das Hauptarbeitsmittel in Octave, den Editor zum Bearbeiten von Skripten und die Dokumentation. Über die Tabs lassen wechselt man zwischen Befehlsfenster, Editor und Dokumentation. Die Octave Benutzeroberfläche ist Modular und an die eigene Bedürfnisse anpassbar. Einzelne Fenster lassen sich herauslösen, z.B. für die Verwendung auf einem zweiten Monitor 13 Oder auch schließen. Über den Menüreiter Fenster lassen sich geschlossene Fenster wieder öffnen und das Standard Layout wiederherstellen 14 Path-Erweiterung Zum Nutzen eigener Skripte, die nicht im Octave-verzeichnis gespeichert werden, müssen die entsprechenden Verzeichnisse Octave mitgeteilt werden. Dies geschieht über den Befehl: addpath(„Verzeichnis“); Allerdings werden die Verzeichnisse nicht automatisch gespeichert und sind nach einem erneutem starten von Octave nicht mehr verfügbar. Das umgeht man mit folgendem Befehl: savepath(); Octave arbeitet mit Verzeichnissen im „Unix-Format“ also statt ‚\‘ wird ‚/‘ verwendet. „C:\...\Dokumente\Skripte“ → „C:/…/Dokumente/Skripte“ Hilfe für Octave Octave enthält eine umfangreiche Dokumentation als PDF-Datei. Octave-Forge Octave MXE 15 Eingebaute Hilfe Über „help“ Befehl lassen sich im Befehlsfenster Hinweise zum Verwenden eines Befehls anzeigen. Kommandoübersicht Befehl path() addpath(„Verzeichnis“) removepath(„Verzeichnis“) savepath() clc help Befehl doc Befehl Funktion Zeigt die verwendeten Pfade für Skripte an. Fügt Verzeichnis zu Skriptpfaden hinzu. Entfernt Verzeichnis von Skriptpfaden. Speichert aktuelle Liste von Skriptpfaden. Leert das Befehlsfenster. Zeigt Hilfe zu Befehl an. Ähnlich help. 16