Forum: Digitale Signalverarbeitung / DSP Welche beste Freeware-Alternative zu "Simulink"?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von ManuelR (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich benutze für regelungstechnische Anwendungen GNU Octave, womit ich 
für meine Zwecke bislang alles abdecken kann, was ich von Matlab im 
Studium kennengelernt habe.
Nun suche ich einen möglichst kostenlosen und mit Octave kompatiblen 
Simulink-Ersatz. Ich bin bei der Recherche auf BORIS gestoßen, jedoch 
soll die Demo-Version die Projekte wohhl nicht abspeichern können, was 
eher schlecht ist^^

Ich brauche im Prinzip nur eine Simulationsfähigkeit für 
Mehrgrößensysteme im Zustandsraum, Sollwert-und 
Zufallsstörgrößen-vorgabe, Stellgrößenbeschränkungen, Digitale Blöcke 
und so die Standarddinge.

von Jan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Xcos? Echte Alternativen gibt es nicht.

von Björn (Gast)


Bewertung
-2 lesenswert
nicht lesenswert
ManuelR schrieb:
> Ich brauche im Prinzip nur eine Simulationsfähigkeit für
> Mehrgrößensysteme im Zustandsraum, Sollwert-und
> Zufallsstörgrößen-vorgabe, Stellgrößenbeschränkungen, Digitale Blöcke
> und so die Standarddinge.

Das geht alles sehr einfach mit Python. Oder mit C/C++, wenn es noch 
einen Tick schneller laufen soll. Nebenbei kannst du dir noch ein 
Malen-nach-Zahlen-Buch kaufen und ausmalen für das Klickibunti-Erlebnis. 
Kein Mensch braucht Simulink.

von ManuelR (Gast)


Bewertung
0 lesenswert
nicht lesenswert
nun ja um Zeit zu sparen, sind die Vorteile wohl enorm. Den 
Programmieraufwand würde ich nicht für sowas investieren, wenn es nicht 
notwendig ist

von vn nn (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Björn schrieb:
> Nebenbei kannst du dir noch ein
> Malen-nach-Zahlen-Buch kaufen und ausmalen für das Klickibunti-Erlebnis.
> Kein Mensch braucht Simulink.

Natürlich, kein Mensch braucht Simulink. Keiner würde auf die Idee 
kommen, dass es praktisch wäre, wenn das Modell gleich grafisch 
dokumentiert ist. Und natürlich würde man nie, niemals auf die Idee 
kommen, dass Simulink-Modelle auch von Menschen gebaut werden, die nun 
mal nix mit Code zu tun haben, weil Maschinenbauer, Antriebstechniker 
oder Thermodynamiker.

Bei deinem Horizont wär das Malen-nach-Zahlen-Buch bei dir wohl besser 
aufgehoben...

von Jan (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Euer Horizont ist da etwas kurz. Simulink kann extrem viel und ist sehr 
mächtig. Es geht da um komplexe Gemischte Systemsimulation, Model based 
development, Zertifizierte Auto Code Generierung etc pp.

von Simulator (Gast)


Bewertung
-3 lesenswert
nicht lesenswert
Jan (Gast)
>Euer Horizont ist da etwas kurz. Simulink kann extrem viel und ist sehr
>mächtig. Es geht da um komplexe Gemischte Systemsimulation, Model based
>development, Zertifizierte Auto Code Generierung etc pp.

Vergiss nicht: Wir sind hier im Forum für fortgeschrittene 
Blinklichtexperten. Von denen darfst Du nicht erwarten, dass sie den 
Nutzen  eines mehrere tausend Euro teures Tools einschätzen können, das 
vorwiegend von Fachspezialisten in großen Firmen und Universitäten 
benutzt wird.
Die Blinklichter programmieren sie lieber "bare metal".

von Bernd K. (prof7bit)


Bewertung
6 lesenswert
nicht lesenswert
Simulator schrieb:
> Blinklichtexperten. Von denen darfst Du nicht erwarten, dass sie den
> Nutzen  eines mehrere tausend Euro teures Tools einschätzen können, das
> vorwiegend von Fachspezialisten in großen Firmen und Universitäten
> benutzt wird.

Deshalb kostet ein KFZ-Blinker heute auch 3-stellige Summen, weil er von 
zertifizierten Fachspezialisten mit mehrere (zig)tausend Euro teuren 
Tools simuliert und Code für den 4-Kern-64-Bit-Echtzeit-Blinkcomputer 
generiert wurde (4 GB Flash, bootet in weniger als 2 Sekunden!), nur so 
kann optimales und fehlerfreies Blinken gewährleistet werden. Das ist 
die Zukunft!

> "bare metal"

Ohne uns Bare Metaller wäret ihr Matlabber komplett aufgeschmissen und 
könntet kein einziges Byte Code generieren. Ihr müsstet die Blinker 
mechanisch ansteuern! Also mach mal halblang.

: Bearbeitet durch User
von Simulator (Gast)


Bewertung
-3 lesenswert
nicht lesenswert
Bernd K.
>Deshalb kostet ein KFZ-Blinker heute auch 3-stellige Summen, weil er von
>zertifizierten Fachspezialisten mit mehrere (zig)tausend Euro teuren
>Tools simuliert

Nö. Die HK sind bei Stückzahlen über 100.000 vernachlässigbar und die 
Tools fallen da nicht ins Gewicht. Die Preise kommen vom Vertrieb und 
der Lagerhaltung.

>Ohne uns Bare Metaller wäret ihr Matlabber komplett aufgeschmissen und
>könntet kein einziges Byte Code generieren.

Auf jeden Fall. Fast so abhängig wie vom Bäcker um die Ecke.

von Logiker (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Björn schrieb:
> Kein Mensch braucht Simulink.

Und was tust du, wenn die auftraggebende Firma dir ein Simulink-Modell 
sendet, das du verwenden musst, als Vorgabe?

Wäre ja prima, wenn die Alternative solchiges zu Importieren in der Lage 
wäre, aber ist sie das?

Ich meine, ich sitze hier im Konstruktionsbüro mit 24 anderen 
Entwicklern und von denen hockt die Hälfte an Kundenaufträgen, die auf 
solchen Simulink Modellen basieren.

von Simulator (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Wäre ja prima, wenn die Alternative solchiges zu Importieren in der Lage
>wäre, aber ist sie das?

Warum sollte sich jemand die Mühe machen, eine Open-Source Software zu 
schreiben, die ein teures System ersetzt, das nur von Spezialisten 
benutzt wird?
Wie viel Zeit müsst da jemand in die Entwicklung stecken, damit sie zu 
einem über 20 Jahre gewachsenem System kompatibel ist?

von Logiker (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Simulator schrieb:
> Wie viel Zeit müsst da jemand in die Entwicklung stecken, damit sie zu
> einem über 20 Jahre gewachsenem System kompatibel ist?

Eben!

von Christoph db1uq K. (christoph_kessler)


Bewertung
0 lesenswert
nicht lesenswert
https://alternativeto.net/software/simulink/
https://www.g2.com/products/simulink/competitors/alternatives
https://www.quora.com/What-are-some-good-alternatives-to-Simulink?share=1

So universell wie Simulink scheint keines zu sein, es sind immer 
Teilbereiche. Für Elektronikhardware GNU-Radio, für DSP und ähnliches 
XCos oder sein Vorgänger Scicos usw. Hier soll es aber speziell für 
Regelungstechnik sein.

: Bearbeitet durch User
von Wühlhase (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Also, eine Alternative zu Matlab/Simulink wäre schon allein aufgrund 
dieser völlig verkackten Scriptsyntax allemal erstrebenswert.

Ansonsten habe ich letzte Woche Scilab bei mir installiert - nur noch 
nicht ausprobiert.

von Christoph M. (mchris)


Bewertung
1 lesenswert
nicht lesenswert
>Also, eine Alternative zu Matlab/Simulink wäre schon allein aufgrund
>dieser völlig verkackten Scriptsyntax allemal erstrebenswert.

"verkackten Scriptsyntax" was soll das sein? Matlab ist nicht gleich 
Simulink. Matlab ist für die Berechnung von Daten in Form von Matrizen 
mit komplexen Zahlen gemacht. Welche Syntax sollte da besser sein?

von Wühlhase (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Christoph M. schrieb:
> Welche Syntax sollte da besser sein?

Wie wäre es mit irgendetwas C-ähnlichem?
Allein das man keine Variablen deklarieren kann ohne sie zu 
initialisieren - was soll der Blödsinn?


Christoph M. schrieb:
> Matlab ist für die Berechnung von Daten in Form von Matrizen
> mit komplexen Zahlen gemacht.

Und da hätte man sich mal eine vernünftige und logische Weise einfallen 
lassen können, Matritzen zu erstellen. Anstatt vieler verwirrender.

Ich habe mit Matlab jetzt schon seit einigen Jahren nicht mehr 
gearbeitet und meine Kritikpunkte nicht mehr alle vollständig beisammen. 
Ich habe aber den Vergleich zu C, Java, VBA (was schon eine 
fürchterliche Sprache ist), LabView und ASM, wobei ich den meisten Code 
bisher in Java und VBA geschrieben habe. Bei Matlab hat mich oft gestört 
daß die Sprache einem eine eigenwillige Struktur aufzwingt und der Code 
recht schnell unübersichtilch und immer weniger selbsterklärend wird.
Und der gruselige Codeeditor tut sein Übriges dazu.

Auch die Formulierung von if- oder switch-Statements oder Schleifen: 
keine vernünftige Kapselung z.B. der Abbruchbedingung wie z.B. (), aber 
das Ende des Codeblocks mit 'end' unnötig lang ausschreiben.

LaTex-gerenderte Ausdrücke für größere Formeln im Quellcode wären 
großartig, aber das ist für eine Skriptsprache, dessen Hauptanwendung 
Berechnungen sind, leider zuviel verlangt.

MathWorks ist halt einfach eine Firma, die ausschließlich von dem 
historsich gewachsenen Problem lebt, in einer Nische zu lange allein 
gewesen zu sein und dadurch große Verbreitung erlangt zu haben.
Keine Konkurrenz -> beschissenes Produkt.

Und soweit ich das bisher gesehen habe, stehe ich mit dieser Meinung 
keineswegs allein da.

von Christoph M. (mchris)


Bewertung
1 lesenswert
nicht lesenswert
>Und soweit ich das bisher gesehen habe, stehe ich
> mit dieser Meinung keineswegs allein da.

Sicher, aber ein Schüler, der Mathematik nicht mag, steht mit seiner 
Meinung auch nicht alleine da.

Matlab ist für Leute, die sich vor allen Dingen im Bereich Modellbildung 
und Simulation bewegen. Wer sich mit anderen Themengebieten beschäftigt, 
wird dafür auch geeignetere Tools finden.

von Wühlhase (Gast)


Bewertung
-2 lesenswert
nicht lesenswert
Jetzt komm mir nicht von oben herab mit solcher Bauernschläue.

Es ist doch völlig wumpe an welchen Anwenderkreis sich Matlab richtet.
Ob ich eine Windturbine simuliere oder Signalverarbeitung (beides habe 
ich damals gemacht) - es ändert ja nichts daran, daß die Sprache an und 
für sich Grütze ist. :)

von Wühlhase (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Nachtrag:
Allzumal "Modellbildung und Simulation" keinerlei Beziehung zum 
Codeumfang hat. Vernünftig strukurierten Code will man ja eigentlich 
immer haben.

von Jan K. (jan_k)


Bewertung
0 lesenswert
nicht lesenswert
Wühlhase schrieb:
> Jetzt komm mir nicht von oben herab mit solcher Bauernschläue.
>
> Es ist doch völlig wumpe an welchen Anwenderkreis sich Matlab richtet.
> Ob ich eine Windturbine simuliere oder Signalverarbeitung (beides habe
> ich damals gemacht) - es ändert ja nichts daran, daß die Sprache an und
> für sich Grütze ist. :)

Sorry Hase, du hast leider keine Ahnung von aktuellem Maltab.

Was genau gefällt dir denn nicht? Die Syntax ist eine der schönsten die 
ich kenne. Wenn du viel switch/case machst, programmierst du nicht im 
"Matlab Style". Wenn du viele (unübersichtliche) Schleifen hast ebenso 
nicht.

Latex Ausdrücke können generiert werden, wenn du die symbolic toolbox 
hast. Latex Unterstützung bei Grafiken ist etwas beschissen, da gebe ich 
dir recht. Wir aber erst bei hochqualitativen Grafiken für Paper o.ä. 
relevant. Brauchen die meisten Leute nicht.
Der Codeeditor wird in naher Zukunft durch ein deutlich modernes Pendant 
ersetzt (und ist jetzt schon nutzbar).
Es ist keine Skriptsprache mehr, sondern imo eine echte 
Programmiersprache. Mit Test Framework, mit Mocking Framework, sehr 
gutem Profiler, Requirement tracking, (bidirektionale) Schnittstellen zu 
C, C++, Python, .NET, Fortran.

Die Politik mit den Toolboxen kotzt mich natürlich auch an, $$$... Aber 
viele Sachen kann man dann eben problemlos mit z.B. Python nachbilden.

Und ich habe noch kein Tool/Sprache gesehen, mit so guten Plot 
Funktionen.

Glaubt mir, ich suche aktiv nach Alternativen. Mein Boss wäre sehr happy 
> 10 k€ einfach so einsparen zu können.

Ich gucke mir momentan Julia an.

von Erro, dum vivo (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ManuelR schrieb:
> Ich brauche im Prinzip nur eine Simulationsfähigkeit für
> Mehrgrößensysteme im Zustandsraum, Sollwert-und
> Zufallsstörgrößen-vorgabe, Stellgrößenbeschränkungen, Digitale Blöcke
> und so die Standarddinge.

Ist jetzt ein anderer Fokus als Regelungstechnik aber schon mal an gnu 
radio gedacht ?
https://d3i71xaburhd42.cloudfront.net/c904836c886ca04e86fe2c1336decfcb3eb43558/3-Figure5-1.png

https://lists.gnu.org/archive/html/discuss-gnuradio/2017-11/pngQiPrQZSh9E.png

SDR und regelungstechnik verwenden beide Signalprozessing-Algos über 
zeitreihen und benutzen ähnliche/gleiche mathematische Grundlagen 
(Zeit/frequenzbereich, Stabilitätskriterien, ...)

von Wühlhase (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Jan K. schrieb:
> Sorry Hase, du hast leider keine Ahnung von aktuellem Maltab.

Das ist durchaus möglich, ich schrieb ja das ich vor zwei bis drei 
Jahren damit zu tun hatte.


Jan K. schrieb:
> Was genau gefällt dir denn nicht? Die Syntax ist eine der schönsten die
> ich kenne.

Wenn man gerne mit Basic programmiert, dann mag einem die Syntax sicher 
gefallen. Die Syntax von VBA geht mir z.B. auch sehr auf den Sack. Das 
ewige Ausschreiben von jedem Kram mit "end" war so eine nervige 
Angelegenheit. Auch das Fehlen einer vernünftigen for-each-Schleife war 
so ein Ärgernis. Zusätzlich zu dem, was ich weiter oben schon schrieb.

Ach ja...auch die Abart, daß eine Funktion mehr als einen Wert 
zurückliefern kann, empfand ich nur als Ärgernis. Weil ich nur einen 
brauchte, den anderen aber trotzdem mitbehandeln mußte.


Jan K. schrieb:
> Wenn du viel switch/case machst, programmierst du nicht im
> "Matlab Style". Wenn du viele (unübersichtliche) Schleifen hast ebenso
> nicht.

Wahrscheinlich ist das ein Teil des Problems: Eine gute 
Programmiersprache sollte einem keinen bestimmten Stil aufzwingen um 
brauchbar zu sein. (Unabhängig davon, daß es in den meisten Sprachen 
bestimmte Konventionen gibt.) Jedenfalls ist das meine Meinung.


Jan K. schrieb:
> Latex Ausdrücke können generiert werden, wenn du die symbolic toolbox
> hast.

Ich meinte Formeln im Codeeditor. Um komplexere Ausdrücke 
übersichtlicher in einer bekannten weise darzustellen.


Jan K. schrieb:
> Der Codeeditor wird in naher Zukunft durch ein deutlich modernes Pendant
> ersetzt (und ist jetzt schon nutzbar).

Schön wenn sich in naher Zukunft mal was tut...aber das ist erst dann 
ein Argument, wenn sich was getan hat, vorher nicht. Wenn ich mich recht 
erinnere hat der Codeeditor einem noch nichteinmal die zugehörige 
Klammer angezeigt.

Ich finde ja, das vernünftige Software durchaus auch Geld kosten darf, 
aber sie muß dann das Geld auch wert sein. Aber für ein dermaßen teures 
Werkzeug wie Matlab erwarte ich dann auch eine IDE, die z.B. mit 
Netbeans wenigstens auf Augenhöhe ist. Der einzige Editor, den ich kenne 
und der schlechter ist als der Codeeditor von Matlab, ist der MS Editor 
in Windows - der kann schlicht gar nix als nur das Allernötigste.


Jan K. schrieb:
> Es ist keine Skriptsprache mehr, sondern imo eine echte
> Programmiersprache.

Wenn ich mich recht erinnere, hat mich auch eine mangelhafte 
Typsicherheit bei Matlab sehr verdrossen. Es ist zwar nur meine Meinung, 
aber eine Programmiersprache ohne Typsicherheit ist eine Skripsprache, 
nicht für größere Dinge geeignet.

Auch eine ausgefeiltere Objektunterstützung, z.B. mit abstrakten Klassen 
und Interfaces fehlt mir, um es als "echte" Programmiersprache 
anzusehen.

Das Vorhandensein von vielen Bibliotheken und Werkzeugen sind kein 
Bestandteil der Sprache an sich, d.h. davon würde ich die Unterscheidung 
zwischen Skriptsprache und "echter" Programmiersprache nicht abhängig 
machen.

von Jan K. (jan_k)


Bewertung
1 lesenswert
nicht lesenswert
Danke für deine ausführliche Antwort. Ich fühl mich zwar schon wie ein 
Matlab Prediger hier, möchte aber zumindest ein paar Sachen nicht 
unkommentiert lassen :)

Wühlhase schrieb:
> Wenn man gerne mit Basic programmiert, dann mag einem die Syntax sicher
> gefallen. Die Syntax von VBA geht mir z.B. auch sehr auf den Sack. Das
> ewige Ausschreiben von jedem Kram mit "end" war so eine nervige
> Angelegenheit. Auch das Fehlen einer vernünftigen for-each-Schleife war
> so ein Ärgernis. Zusätzlich zu dem, was ich weiter oben schon schrieb.
>

Ich mag keine Basic Syntax und die von VB ist grauenhaft. Das liegt aber 
nicht daran, dass man statt "}" ein "end" hinschreiben muss, wie du es 
sagst - da gewöhnt man sich schnell dran.

Es gibt vernünftige for-each Schleifen, nur heißen die nicht so, denn 
die standard for-Schleife kann das bereits alles:
names = ["jonas" "julia" "foo"];
for singleName = names
   disp(singleName)
end
Was gibt es einfacheres? Es können natürlich auch über cell-arrays oder 
numerische arrays iteriert werden.
(Wobei es sogar ein Mini Addon gibt, wo sie genau so heißen: 
https://de.mathworks.com/matlabcentral/fileexchange/48729-for-each)

> Ach ja...auch die Abart, daß eine Funktion mehr als einen Wert
> zurückliefern kann, empfand ich nur als Ärgernis. Weil ich nur einen
> brauchte, den anderen aber trotzdem mitbehandeln mußte.
Muss man nicht
function [a,b,c] = myFun()
    a = rand(1); 
    b = rand(10,5);
    c = 1:10;
end

a = myFun();
[a, b] = myFun();
[~, ~, c] = myFun(); 
% etc...
Außerdem ist es verdammt praktisch, dass es mehrere Rückgabewerte gibt. 
Der erste ist normalerweise der Wichtigste, die weiteren geben 
zusätzliche Details o.ä. an. Macht Python doch genauso oder?

> Jan K. schrieb:
>> Wenn du viel switch/case machst, programmierst du nicht im
>> "Matlab Style". Wenn du viele (unübersichtliche) Schleifen hast ebenso
>> nicht.
>
> Wahrscheinlich ist das ein Teil des Problems: Eine gute
> Programmiersprache sollte einem keinen bestimmten Stil aufzwingen um
> brauchbar zu sein. (Unabhängig davon, daß es in den meisten Sprachen
> bestimmte Konventionen gibt.) Jedenfalls ist das meine Meinung.
>
Darüber lässt sich natürlich streiten :) Fakt ist aber, dass Matlab für 
numerische Berechnungen benutzt wird und dort finden quasi keine 
Iterationen statt (auf high level) - es sollte alles vektorisiert 
werden, um die entsprechenden CPU Instruktionen zu benutzen.
Auch das ist bei Python dasselbe. Schleifen abstrahieren das Problem 
nicht, sondern gehen zu sehr ins Detail und bringen viel boilerplate 
Code und deine ungeliebten "end"s ;)

> Jan K. schrieb:
>> Latex Ausdrücke können generiert werden, wenn du die symbolic toolbox
>> hast.
>
> Ich meinte Formeln im Codeeditor. Um komplexere Ausdrücke
> übersichtlicher in einer bekannten weise darzustellen.
>
Welche Sprache kann das? Das wäre in der Tat manchmal hilfreich. Kenne 
ich aber leider nicht. Und ich finde, Matlab gehört zu den Sprachen, die 
man am besten lesen kann, wenn es an Gleichungen geht.
> Jan K. schrieb:
>> Der Codeeditor wird in naher Zukunft durch ein deutlich modernes Pendant
>> ersetzt (und ist jetzt schon nutzbar).
>
> Schön wenn sich in naher Zukunft mal was tut...aber das ist erst dann
> ein Argument, wenn sich was getan hat, vorher nicht. Wenn ich mich recht
> erinnere hat der Codeeditor einem noch nichteinmal die zugehörige
> Klammer angezeigt.
>
Nana, so schlecht ist der aktuelle jetzt auch nicht. Es gibt auto 
Vervollständigung, Auto Formatierung, code warnings (+ und best 
practices, wie z.B. Performanztips on the fly), code folding, jump to 
reference und einiges mehr. Dass du ends suchst ist nur ein Symptom ;) 
Bin mir aber tatsächlich nicht sicher, ob ends markiert werden. Braucht 
man aber wie gesagt auch nicht.

> Ich finde ja, das vernünftige Software durchaus auch Geld kosten darf,
> aber sie muß dann das Geld auch wert sein. Aber für ein dermaßen teures
> Werkzeug wie Matlab erwarte ich dann auch eine IDE, die z.B. mit
> Netbeans wenigstens auf Augenhöhe ist. Der einzige Editor, den ich kenne
> und der schlechter ist als der Codeeditor von Matlab, ist der MS Editor
> in Windows - der kann schlicht gar nix als nur das Allernötigste.
>
Sorry, das stimmt halt so nicht, siehe oben. Es ist nicht mein 
Lieblingseditor und moderne Varianten sind leistungsstärker, siehe 
VSCode, Atom, NetBeans oder was auch immer. Aber er ist nicht so grottig 
wie du sagst. Und vermutlich hast du noch nicht mit dem Keil µVision 
Editor was programmiert ;)
> Jan K. schrieb:
>> Es ist keine Skriptsprache mehr, sondern imo eine echte
>> Programmiersprache.
>
> Wenn ich mich recht erinnere, hat mich auch eine mangelhafte
> Typsicherheit bei Matlab sehr verdrossen. Es ist zwar nur meine Meinung,
> aber eine Programmiersprache ohne Typsicherheit ist eine Skripsprache,
> nicht für größere Dinge geeignet.
D.h. Dropbox (Python), Facebook (PHP) und viele andere bauen keine 
großen Dinge?
>
> Auch eine ausgefeiltere Objektunterstützung, z.B. mit abstrakten Klassen
> und Interfaces fehlt mir, um es als "echte" Programmiersprache
> anzusehen.
>
Gibt's ausnahmslos alles... Vererbung, interfaces, abstract classes, 
Datentyp Checks für Klassen Properties und für Argumente von Funktionen 
(wobei das natürlich eine grundsätzliche Frage ist dynamisch vs statisch 
typisierte Sprachen, Matlab und auch Python versuchen beide Vorteile zu 
verbinden), siehe z.B.:
https://de.mathworks.com/help/matlab/matlab_oop/abstract-classes-and-interfaces.html
https://de.mathworks.com/help/matlab/matlab_oop/defining-interfaces.html
https://de.mathworks.com/help/matlab/matlab_oop/property-size-and-class-validation.html#bvklfs7-3
https://de.mathworks.com/help/matlab/matlab_prog/function-argument-validation-1.html

Alle Grafik Elemente und alle neueren Datentypen (z.B. tables oder 
datetime) sind ausnahmslos instantiierte Objekte von Klassen.

> Das Vorhandensein von vielen Bibliotheken und Werkzeugen sind kein
> Bestandteil der Sprache an sich, d.h. davon würde ich die Unterscheidung
> zwischen Skriptsprache und "echter" Programmiersprache nicht abhängig
> machen.
Okay. Ernst gemeinte Frage, gehören z.B. die ganzen Container bei C++ 
zur Sprache? C und libc? Python ohne Numpy? Ich geb dir ja Recht, libs 
gehören vielleicht nicht direkt dazu, werden aber in der Praxis ja 
zusammen mit der Sprache benutzt. Im Beispiel Matlab ist aber in der 
Kernsprache (ohne toolboxes oder libs) schon ziemlich viel drin, siehe 
oben ;]

Ich suche dennoch nach Alternativen..

@OP, wenn du was ohne Grafik in Betracht ziehen würdest, nimm Python 
oder Julia. 
https://en.wikibooks.org/wiki/Julia_for_MATLAB_Users/Index/Toolboxes/Control_System_Toolbox

Schönen Abend

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.