Ich habe mich kürzlich den Leuten angeschlossen, die Linux verwenden. Aus diesem Grund versuche ich, so viele proprietäre Anwendungen wie möglich durch kostenlose – und wenn möglich Open Source – Alternativen zu ersetzen.
Da ich ein anständiges Tool für meine mathematischen Experimente brauche und MATLAB R2013b auf meiner früheren Windows-Installation verwendet habe, bin ich gespannt auf kostenlose – vorzugsweise Open-Source – Alternativen zu Matlab, die unter Linux (Ubuntu) laufen.
Gibt es kostenlose Alternativen zu Matlab, die unter Linux laufen? Was mir am wichtigsten ist, ist, dass die Alternative zu Matlab in Bezug auf die Syntaxkompatibilität eng zusammenpasst … damit die meisten Programme problemlos portiert (oder – wenn möglich – importiert) werden können. Außerdem bin ich mir ziemlich sicher, dass keine Alternative über den vollständigen Funktionsumfang von Matlab verfügen wird, daher wäre es für mich auch wichtig zu wissen, welche Unterschiede in der Funktionalität ich erwarten muss, wenn ich die von Ihnen vorgeschlagene(n) Alternative(n) verwende. Bedeutung: Gibt es etwas, was die kostenlose(n) Alternative(n) können, was MATLAB R2013b nicht kann, und umgekehrt?
Es gibt keinen einzigen Ersatz für Matlab in Linux. Matlab ist ein wirklich riesiges Softwarepaket, einschließlich eines ziemlich großen Bibliotheksökosystems.
Octave ist eine kostenlose Alternative für Matlab. Es fehlen einige Funktionen, aber alle Grundlagen sind vorhanden. Ich habe beide verwendet, aber es ist ziemlich schwierig, eine gute Bewertung basierend auf meinen eigenen Gefühlen abzugeben. Diese Seite listet einige kleinere Unterschiede auf, aber hauptsächlich Fälle, in denen Octave besser ist als Matlab. Das wahrscheinlich größte Problem ist, dass sich einige Funktionen anders verhalten, zum Beispiel das Produkt von booleschen Werten und das Laden leerer Dateien . Dies ist wichtig, da es das Portieren Ihrer eigenen Skripte erschwert, da unerwartete Dinge passieren.
Meine eigenen Gefühle sind das
Abgesehen davon ist Octave kostenlos und Matlab kostet viel mehr, als sich ein durchschnittlicher Verbraucher leisten kann.
Sagemath ist eine weitere Alternative, aber in der Funktionalität näher an Mathematica.
Weitere Do-it-yourself-Lösungen finden Sie in R, Scilab und Python. Mit diesen erhalten Sie kein integriertes All-in-One-Paket, und die Lernkurve ist ziemlich steil.
wie Olli sagte, Ocatave ist eine Matlab-Alternative:
Syntax nahezu identisch. es wird fast alle m-Dateien ohne Änderungen verbrauchen. Das mfile ist auch das Standardformat. Die Syntax ist so identisch, dass der Matlab-Kurs meiner Universität Oktave im Autograder verwendet, obwohl die Einheit vollständig in Matlab unterrichtet wird und Oktave nur einmal am Rande erwähnt.
Hochwertige BLAS - Bibliotheksintegration (normalerweise glaube ich, dass sie in OpenBlas integriert ist, aber dies kann von Ihrem System abhängen, es kann Atlas sein). Aufgrund des BLAS ist es wie bei Matlab viel effizienter, Vektortechniken zu verwenden (anstatt für Schleifen) - also ist guter Matlab-Code immer noch guter Oktavcode .
Es gibt auch ein paar zusätzliche Funktionen , aber ich fand sie nie bemerkenswert genug, um mich an sie zu erinnern.
Ich würde Scilab empfehlen, da ich es verwendet habe und fand, dass es eine anständige Open-Source-Alternative für MATLAB ist. Es hat nicht die Robustheit und den Glanz eines professionellen Pakets, aber da es auf der MATLAB-Sprache basiert, kann das, was Sie lernen, später übertragen werden, wenn sich Ihre Anforderungen ändern oder Sie in einer Umgebung arbeiten, in der MATLAB das ist Ursprünglich.
Zitat von Richie Cotton bei Stack Overflow :
Scilab verhält sich zu MATLAB wie OpenOffice zu MS Office. Das heißt, es ist kein ganzer Klon und nicht so ausgefeilt. Sie erhalten die meisten Funktionen von MATLAB, und der Preis ist viel angenehmer.
Schau mal bei Julia vorbei : http://julialang.org/
Julia ist für numerische wissenschaftliche Arbeiten konzipiert, einschließlich interaktiver Arbeiten. Es verfügt über eine hochwertige Notebook-Schnittstelle wie Mathematica und Sage. Es hat die beste Leistung seiner Klasse, sehen Sie sich die Benchmarks auf der Titelseite an. Es kann Python aufrufen, wodurch viele nützliche Bibliotheken dafür geöffnet werden.
Julia wurde speziell entwickelt, um MATLAB-Benutzern den Übergang zu erleichtern. Die grundlegende Syntax ist ähnlich. Seine Programmiersprache ist jedoch moderner und fortschrittlicher als die von MATLAB (z. B. unterstützt sie Metaprogrammierung ).
Julia ist ein relativ neues System, daher ist es nicht so vollständig wie andere (R, Octave), aber es hat eine wachsende Community und ist vielversprechend.
Wenn Sie keine exakte Kompatibilität mit Matlab benötigen, ist Freemat eine Option.
http://freemat.sourceforge.net/
Es kann ziemlich schnell sein, da es LLVM als JIT-Compiler verwendet.
http://freemat-blog.blogspot.com/2008/02/why-jit-how-to-jit.html
Freemat hat schon länger eine integrierte GUI als Octave, obwohl die GUI von Octave besser geworden ist.
Der Hauptnachteil ist, dass es nicht so aktiv entwickelt wird wie Octave; die letzte Veröffentlichung war im Jahr 2013.
https://www.openhub.net/p/_compare?project_0=FreeMat&project_1=GNU+Octave
Olli
Gilles 'SO- hör auf, böse zu sein'
Bernhard
Bernhard
E-Sushi
Bernhard
SF.
Bernhard
E-Sushi
Bernhard
SF.
Bernhard
SF.