Wissenschaftliche Mathe-Anwendungen

Di, 16. November 2021, Ralf Hersel

Habt ihr schon von Matlab gehört und wie gut es sich für Mathematik, Modellierung, Berechnung und Simulation eignet? In der Tat ist Matlab eine tolle Software für Schüler, Studentinnen und Wissenschaftler. Leider hat die Anwendung einen entscheidenden Nachteil: Sie ist proprietär und erfordert eine sehr teure Lizenz. Aus diesem Grund sind freie Alternativen entstanden, die den Platz von Matlab einnehmen.

Als Kandidaten treten vier Open-Source Vertreter an: Octave, SageMath und Scilab. Interessanterweise handelt es sich bei zwei dieser Anwendungen um sehr alte Vertreter aus der freien Welt. Hier findet ihr eine Kurzvorstellung dieser Mathematik-Genies:

Octave

Octave ist die erste Software, die einem in den Sinn kommt, wenn man eine Open-Source-Alternative zu Matlab sucht. Seine Entwickler haben darauf geachtet, dass es so weit wie möglich mit der Matlab-Syntax kompatibel ist, sodass man Matlab-Dateien in den meisten Fällen ohne Änderungen öffnen und verarbeiten kann.


Das Programm wurde 1988 entwickelt und ist damit eine der ältesten Open-Source-Software der Welt. Ausserdem wird es unter der GPL-Lizenz veröffentlicht. Das Programm ist in C++ geschrieben und verfügt über eine eigene Skriptsprache (ähnlich wie Matlab) und unterstützt OpenGL-basierte Grafiken, um Visualisierungsmöglichkeiten zu bieten.

Octave ist ein GNU-Projekt, d.h. es wird von der Free Software Foundation und anderen GNU-Projektmitarbeitern entwickelt. Aus diesem Grund ist es sehr wahrscheinlich, dass man es in den offiziellen Repositories einer Linux-Distribution bereits gepackt und zur Installation verfügbar findet.

SageMath

SageMath will kein Ersatz für Matlab sein. Stattdessen verfolgt das Projekt andere Ziele, nämlich die Bereitstellung einer hoch entwickelten Rechen- und Mathematikumgebung, in der Benutzer auch andere Softwarepakete ausführen können.



SageMath ist grösstenteils in Python geschrieben, läuft aber innerhalb des Browsers ähnlich wie Jupyter Notebooks. Die Benutzer schreiben die Programmiersyntax so, dass sie die gewünschten Ergebnisse oder Visualisierungen erhalten können. Deshalb ist SageMath in der Lage, andere Open-Source-Software wie R oder SciPy für statistische Berechnungen zu verwenden, ohne auf die gleiche Umgebung verzichten zu müssen.

Man sollte beachten, dass die Downloadgrösse von SageMath mit der von Matlab vergleichbar ist: etwa 3 GB für die neueste Version. Das liegt vor allem daran, dass es über 100 weitere Open-Source-Softwarepakete enthält, die man jederzeit aufrufen kann. Um mit SageMath arbeiten zu können, muss man auf jeden Fall Python können, da dies die Syntaxsprache der Anwendung ist und für die Nutzung der anderen Bibliotheken vorausgesetzt wird.

Die Entwicklung von SageMath begann im Jahr 2005 und wird unter der GPL 3-Lizenz veröffentlicht.

Scilab

Scilab ist eine weitere Software, die sich als Alternative zu Matlab versteht, deren Syntax aber nicht vollständig kompatibel mit Matlab ist. Im Allgemeinen kann man sich jedoch darauf verlassen, dass die meisten der Matlab-Dateien in dieser Open-Source-Umgebung ausgeführt werden können.


Ähnlich wie Matlab enthält Scilab Toolboxen, um verschiedene Berechnungsaufgaben zu erledigen:

  • Bildverarbeitungs-Toolbox für den Umgang mit Grafiken
  • Wavelet-Toolbox zur Bearbeitung von Signalen und deren Transformationen
  • "Xcos" Toolbox für die Modellierung und Simulation dynamischer Systeme

Die Software wurde erstmals 1990 veröffentlicht und ist damit ebenso wie GNU Octave eine der ältesten Open-Source-Software. Sie ist unter der GPLv2-Lizenz lizenziert.

Maxima (ein Nachtrag)

In der ersten Version dieses Artikels, habe ich tatsächlich Maxima vergessen, obwohl das die Mathe-Anwendung ist, die ich seit Jahren verwende. Ein Leser (tux.) hat mich zum Glück in den Kommentaren darauf hingewiesen. Als Belohnung für diesen Hinweis, liefere ich euch eine Rarität nach: Einen Artikel, den ich vor 13 Jahren für das YALM-Magazin zu Maxima (Seite 14) geschrieben habe.

Maxima gibt es als reine CLI-Anwendung und in einer GUI-Variante namens wxMaxima. Viel Spass beim Lesen des alten Artikels und dem Rechnen mit dieser hervorragenden Algebra-Anwendung.

Quellen:

https://www.gnu.org/software/octave/index

https://www.sagemath.org/

https://www.scilab.org/