Octave-Tutorial
GNU Octave 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 und zum ebenfalls freien FreeMat kompatibel ist.[1]
Diese Lerneinheit befasst sich der Einführung in das Software-Paket Octave[2].
Informationsmaterial
[Bearbeiten]- Kompakte Einführung in GNU Octave, Torsten Krüger, Jörg Frohne (2012) Universität Siegen[3]
- GNU Octave - OpenSource Software für die Numerik - Download: https://www.gnu.org/software/octave/
Aufgaben für Lernende
[Bearbeiten]- Betrachten Sie die Lernvideos als Einstieg und erarbeiten Sie sich die grundlegenden Kenntnisse in Octave. Insbesondere die Definition von Funktionen ist für die mathematische Modellbildung wesentlich.
- (Existierend Octave-Pakete) Für anspruchsvollere Aufgaben gibt es in der Regel schon fertige Packages, die bei der Problemlösung helfen (z.B. für die Lösung von partiellen Differentialgleichungen). Bevor man selbst eigene Lösungen implementiert, macht es viel Sinn bereits nach existierende Lösungen zu suchen, die für die eigene mathematische Aufgabenstellung angepasst werden können.
- (Ant Colony Algorithm und das biologisch Vorbild verstehen) Analysieren Sie den Ant-Colony-Algorithmus und betrachten Sie das biologische Vorbild. Wie werden die biologischen Wegoptimierungen der Ameisen durch Datenstrukturen in Octave umgesetzt.
- (Ant Colony Algorithm Implementieren in Octave) Implementieren Sie selbst einen Ant-Colony-Algorithmus in Octave (für Fortgeschrittene) (engl: Video Explaination - Ant Colony Algorithm)
- (Lernmodul verbessern) Erstellen Sie deutsche Lernvideos für Octave in Analogie zu dem englischsprachigen Vorbild und ergänzen Sie Ihr Video als webm-Datei in WikiCommons in der Liste oben. Lernvideos können Sie mit OBS Screencast Software erstellt werden.
Videos
[Bearbeiten]Die folgenden Youtube Videos führen in Verwendung von Octave ein. Die verwendeten Videos sind im Moment in noch in englischer Sprache erstellt vom Youtube-User DrapsTV. Ideal wäre eine langfristige Ersetzung der Videos durch deutsche Videos mit änhlichem Inhalt.
Nr | Überschrift | Videolink | Erläuterungen |
---|---|---|---|
1 | Installation und Einführung | Octave Tutorial #1 - Introduction & Setup | Installation |
2 | Grundlegende Berechnungen | Octave Tutorial #2 - Basic Operations | Grundlegende Operationen |
3 | Laden und Speichern von Daten | Octave Tutorial #3 - - Loading, Saving & Using Data | Laden und Speichern |
4 | Plotten von Daten | Octave Tutorial #4 - Plotting Data | Erstellung von Diagrammen, Kurven und Graphen |
5 | Kontrollstrukturen | Octave Tutorial #5 - Control Statement | Schleifen, Bedingungen prüfen, Fallunterscheidungen |
6 | Funktionen definieren | Octave Tutorial #6 - Functions | Funktionsdefinition |
Neben der Installation und Einrichtung von Octave beinhalten die Video folgende Themenbereiche:
- (Installation) Installation und Hilfen zur Einrichtung von GNU Octave findet man unter https://www.gnu.org/software/octave/
- (Grundlegende Berechnungen) Octave Tutorial #2 - Basic Operations In diesem Video werden Berechnungen erläutern, die mit grundlegenden Operationen auf Zahlen beginnen und auch den Umgang mit Vektoren und Matrizen mit einschließen. Daten werden im Wesentlichen in Matrizen gespeichert.
- (Laden und Speichern von Daten) Octave Tutorial #3 - - Loading, Saving & Using Data. Wenn mit Modellierungsaufgaben in der Mathematischen Modellbildung gearbeitet wird, werden erhobenen Daten verarbeitet, und auch neue Daten aus Ausgabe generiert (z.B. Anwendung des Moving Average, um Daten zu glätten. Das Laden dun Speichern von Daten ist dazu ein wichtige Voraussetzung.
- (Plotten von Daten) Octave Tutorial #4 - Plotting Data. Daten in Matrizen zu interpretieren ist oft sehr schwierig. Muster in Daten kann man oft erst dann erkennen, wenn diese Daten verarbeitet und visualisiert werden.
- (Kontrollausdrücke) Octave Tutorial #5 - Control Statement - Hier werden Bedingungen und Schleifen implementiert, die insbesondere bei der Implementierung von iterativen Verfahren notwendig sind (z.B. if-then-else, for, while, ... .
- (Funktionen in Octave definieren) Octave Tutorial #6 - Functions. In der Mathematik werden Funktionen definiert, die mit jedem ein zuordnen. Diese Funktionen werden als Funktionen in Octave implementiert und können als m-file wiederverwendet werden. Die funktionale Programmierung zerlegt Teilaufgaben in einzelne Funktionen, die nur aufgerufen werden, statt den Programmcode mehrfach in einem Code zu verwenden. Im Gegensatz zur Kurznotation für mathematische Formeln mit einem Buchstaben (z.B. ) sollten Funktionen in Octave zur besseren Lesbarkeit und Fehlersuche mit sinnvollen Bezeichungen versehen werden. Ist z.B. ein Vektor und berechnet die geglätteten Daten, so sollte für die Funktionsvariable z.B. verwendet werden.
Wiki-Books
[Bearbeiten]Siehe auch
[Bearbeiten]- Diffusion/Octave-Tutorial
- Wikipedia:Ameisenalgorithmus
- Wikipedia: GNU Octave
- Kurs:Räumliche Modellbildung
- Octave GNU Homepage
- Maxima CAS
- Tabellenkalkulation
- Kurs:Mathematische Modellbildung
- R-Statistiksoftware
- Octave Packages - existierende Softwarepakete auf Octave-Forge suchen.
- Einbindung von Octave in KnitR
Literatur/Quellen
[Bearbeiten]- ↑ „GNU Octave“. In: Wikipedia, Die freie Enzyklopädie. Bearbeitungsstand: 25. August 2017, 15:56 UTC. URL: https://de.wikipedia.org/w/index.php?title=GNU_Octave&oldid=168465020 (Abgerufen: 31. Oktober 2017, 11:05 UTC)
- ↑ GNU Octave (2019) - OpenSource Software Download: https://www.gnu.org/software/octave/ (accessed 2019/04/11)
- ↑ Kompakte Einführung in GNU OctaveTorsten Krüger, Jörg Frohne (2012) Universität Siegen - URL: https://www.uni-siegen.de/fb6/wir/veranstaltungen/numerik1_ws1213/octave_skript.pdf (accessed 2019/04/11)