MATLAB (Programmiersprache)
ParadigmaMultiparadigmatisch : funktional , imperativer , prozeduraler , objektorientierter Ansatz , Array-Ansatz
Entworfen vonCleve Moler
EntwicklerMathWorks
Erstmals erschienenEnde der 1970er Jahre
Stabile Version
R2025b [ 2 ] Dies auf Wikidata bearbeiten / 17. September 2025 ( 17. September 2025 )
Schreibdisziplindynamisch , schwach
Dateinamenerweiterungen.m, .p, [ 5 ].mex* , [ 6 ].mat , [ 7 ].fig , [ 8 ].mlx , [ 9 ].mlapp , [ 10 ].mltbx , [ 11 ].mlappinstall , [ 12 ] .mlpkginstall[ 13 ]
Webseitemathworks.com
Dialekte
Beeinflusst von
Beeinflusst

MATLAB ( Matrix Laboratory ) [ 19 ] ist eine proprietäre , multiparadigmatische Programmiersprache und numerische Rechenumgebung, die von MathWorks entwickelt wurde . MATLAB ermöglicht Matrixmanipulationen , das Plotten von Funktionen und Daten, die Implementierung von Algorithmen , die Erstellung von Benutzeroberflächen und die Anbindung an Programme, die in anderen Sprachen geschrieben sind.

Obwohl MATLAB primär für numerische Berechnungen konzipiert ist, ermöglicht eine optionale Toolbox mithilfe der MuPAD -Symbol-Engine den Zugriff auf symbolische Berechnungsfunktionen . Ein zusätzliches Paket, Simulink , erweitert MATLAB um grafische, domänenübergreifende Simulationen und modellbasierte Entwicklung für dynamische und eingebettete Systeme .

Stand 2020 hatte MATLAB weltweit mehr als vier Millionen Nutzer. [ 20 ] Sie kommen aus verschiedenen Bereichen der Ingenieurwissenschaften , Naturwissenschaften und Wirtschaftswissenschaften . Stand 2017 nutzten mehr als 5000 Hochschulen und Universitäten weltweit MATLAB zur Unterstützung von Lehre und Forschung. [ 21 ]

Geschichte

Ursprünge

MATLAB wurde vom Mathematiker und Programmierer Cleve Moler erfunden . [ 22 ] Die Idee zu MATLAB basierte auf seiner Dissertation aus den 1960er Jahren . [ 22 ] Moler wurde Mathematikprofessor an der University of New Mexico und begann MATLAB als Hobby für seine Studenten zu entwickeln. [ 22 ] [ 23 ] 1967 entwickelte er zusammen mit seinem ehemaligen Doktorvater George Forsythe die erste lineare Algebra- Programmierung für MATLAB . [ 22 ] 1971 folgte der Fortran- Code für lineare Gleichungen. [ 22 ]

Vor Version 1.0 war MATLAB „keine Programmiersprache, sondern ein einfacher interaktiver Matrixrechner . Es gab keine Programme, keine Toolboxes, keine Grafiken und keine gewöhnlichen Differentialgleichungen oder FFTs .“ [ 24 ]

Die erste frühe Version von MATLAB wurde Ende der 1970er Jahre fertiggestellt. [ 22 ] Die Software wurde im Februar 1979 an der Naval Postgraduate School in Kalifornien erstmals der Öffentlichkeit vorgestellt . [ 23 ] Frühe Versionen von MATLAB waren einfache Matrixrechner mit 71 vordefinierten Funktionen. [ 25 ] Damals wurde MATLAB kostenlos an Universitäten verteilt. [ 26 ] [ 27 ] [ 28 ] Moler hinterließ Kopien an den von ihm besuchten Universitäten, und die Software erfreute sich großer Beliebtheit in den Mathematikfakultäten der Universitäten. [ 29 ]

In den 1980er Jahren lernte Cleve Moler John N. Little kennen . Sie beschlossen, MATLAB in C neu zu programmieren und es für die IBM- Desktop-Computer zu vermarkten, die damals die Großrechner ablösten . [ 22 ] John Little und der Programmierer Steve Bangert programmierten MATLAB in C neu, entwickelten die MATLAB-Programmiersprache und Funktionen für Toolboxes. [ 23 ]

Kommerzielle Entwicklung

MATLAB wurde 1984 auf der Konferenz für Automatisierungstechnik in Las Vegas erstmals als kommerzielles Produkt vorgestellt . [ 22 ] [ 23 ] MathWorks , Inc. wurde zur Entwicklung der Software gegründet [ 27 ] , und die Programmiersprache MATLAB wurde veröffentlicht. [ 25 ] Der erste MATLAB-Verkauf erfolgte im darauffolgenden Jahr, als Nick Trefethen vom Massachusetts Institute of Technology zehn Exemplare erwarb. [ 23 ] [ 30 ]

Bis Ende der 1980er-Jahre wurden mehrere hundert Kopien von MATLAB an Universitäten für den studentischen Gebrauch verkauft. [ 23 ] Die Software erlangte große Popularität durch Toolboxes, die von Experten verschiedener Fachrichtungen für spezialisierte mathematische Aufgaben entwickelt wurden. [ 26 ] Viele dieser Toolboxes entstanden, nachdem Stanford- Studenten MATLAB im akademischen Bereich eingesetzt und die Software anschließend in die Privatwirtschaft gebracht hatten. [ 23 ]

Im Laufe der Zeit wurde MATLAB für frühe Betriebssysteme von Digital Equipment Corporation , VAX , Sun Microsystems und für Unix-PCs neu geschrieben . [ 23 ] [ 25 ] Version 3 wurde 1987 veröffentlicht. [ 31 ] Der erste MATLAB-Compiler wurde in den 1990er Jahren von Stephen C. Johnson entwickelt . [ 25 ]

Im Jahr 2000 fügte MathWorks in MATLAB 6 eine Fortran-basierte Bibliothek für lineare Algebra hinzu und ersetzte damit die ursprünglichen LINPACK- und EISPACK-Subroutinen der Software, die in C geschrieben waren. [ 25 ] Die Parallel Computing Toolbox von MATLAB wurde auf der Supercomputing Conference 2004 veröffentlicht und 2010 um die Unterstützung für Grafikprozessoren (GPUs) erweitert. [ 25 ]

Neuere Geschichte

Mit Version 8 im Jahr 2012 wurden einige besonders große Änderungen an der Software vorgenommen. [ 32 ] Die Benutzeroberfläche wurde überarbeitet [ 33 ] und der Funktionsumfang von Simulink wurde erweitert. [ 34 ]

Bis 2016 wurden in MATLAB mehrere technische Verbesserungen und Verbesserungen der Benutzeroberfläche eingeführt, darunter das MATLAB Live Editor Notebook und weitere Funktionen. [ 25 ]

Veröffentlichungshistorie

Eine vollständige Liste der Änderungen sowohl von MATLAB als auch der offiziellen Toolboxes finden Sie in den früheren MATLAB-Versionen. [ 35 ]

Versionen der MATLAB-Produktfamilie
Name der Veröffentlichung MATLAB Simulink, Stateflow (MATLAB-Anhänge) Jahr
Band 8 5.0 1996
Band 9 5.1 1997
R9.1 5.1.1 1997
R10 5.2 1998
R10.1 5.2.1 1998
R11 5.3 1999
R11.1 5.3.1 1999
R12 6.0 2000
R12.1 6.1 2001
R13 6,5 2002
R13SP1 6.5.1 2003
R13SP2 6.5.2
R14 7 6.0 2004
R14SP1 7.0.1 6.1
R14SP2 7.0.4 6.2 2005
R14SP3 7.1 6.3
R2006a 7.2 6.4 2006
R2006b 7.3 6,5
R2007a 7.4 6.6 2007
R2007b 7,5 7.0
R2008a 7.6 7.1 2008
R2008b 7,7 7.2
R2009a 7,8 7.3 2009
R2009b 7.9 7.4
R2010a 7.10 7,5 2010
R2010b 7.11 7.6
R2011a 7.12 7,7 2011
R2011b 7.13 7,8
R2012a 7.14 7.9 2012
R2012b 8.0 8.0
R2013a 8.1 8.1 2013
R2013b 8.2 8.2
R2014a 8.3 8.3 2014
R2014b 8.4 8.4
R2015a 8,5 8,5 2015
R2015b 8.6 8.6
R2016a 9.0 8,7 2016
R2016b 9.1 8.8
R2017a 9.2 8.9 2017
R2017b 9.3 9.0
R2018a 9.4 9.1 2018
R2018b 9,5 9.2
R2019a 9.6 9.3 2019
R2019b 9,7 10.0
R2020a 9,8 10.1 2020
R2020b 9,9 10.2
R2021a 9.10 10.3 2021
R2021b 9.11 10.4
R2022a 9.12 10,5 2022
R2022b 9.13 10.6
R2023a 9.14 10.7 2023
R2023b 23.2 23.2
R2024a 24.1 24.1 2024
R2024b 24.2 24.2
R2025a 25.1 25.1 2025
R2025b 25.2 25.2
R2026a 26.1 26.1 2026

Syntax

Die MATLAB-Anwendung basiert auf der Programmiersprache MATLAB.

Die gängigste Verwendung der MATLAB-Anwendung besteht darin, das „ Befehlsfenster “ als interaktive mathematische Shell zu nutzen oder Textdateien auszuführen, die MATLAB-Code enthalten. [ 36 ]

Beispiel „Hallo Welt!“

Ein Beispiel für ein „Hallo Welt!“-Programm existiert in MATLAB.

disp ( 'Hallo Welt!' )

Es wird folgendermaßen angezeigt:

Hallo Welt!

Variablen

Variablen werden mithilfe des Zuweisungsoperators definiert .=

MATLAB ist eine schwach typisierte Programmiersprache, da Typen implizit konvertiert werden. [ 37 ] Es handelt sich um eine Sprache mit abgeleitetem Typ , da Variablen Werte zugewiesen werden können, ohne ihren Typ zu deklarieren, es sei denn, sie sollen als symbolische Objekte behandelt werden [ 38 ] und ihr Typ kann sich ändern.

Values can come from constants, from computation involving values of other variables, or from the output of a function.

For example:

>> x=17x = 17>> x='hat'x =hat>> x=[3*4,pi/2]x = 12.0000 1.5708>> y=3*sin(x)y = -1.6097 3.0000

Vectors and matrices

A simple array is defined using the colon syntax: initial:increment:terminator. For instance:

>> array=1:2:9array = 1 3 5 7 9

defines a variable named array (or assigns a new value to an existing variable with the name array) which is an array consisting of the values 1, 3, 5, 7, and 9. That is, the array starts at 1 (the initial value), increments with each step from the previous value by 2 (the increment value), and stops once it reaches (or is about to exceed) 9 (the terminator value).

The increment value can actually be left out of this syntax (along with one of the colons), to use a default value of 1.

>> ari=1:5ari = 1 2 3 4 5

assigns to the variable named ari an array with the values 1, 2, 3, 4, and 5, since the default value of 1 is used as the increment.

Indexing is one-based,[39] which is the usual convention for matrices in mathematics, unlike zero-based indexing commonly used in other programming languages such as C, C++, and Java.

Matrices can be defined by separating the elements of a row with blank space or comma and using a semicolon to separate the rows. The list of elements should be surrounded by square brackets []. Parentheses () are used to access elements and subarrays (they are also used to denote a function argument list).

>> A = [ 16 , 3 , 2 , 13 ; 5 , 10 , 11 , 8 ; 9 , 6 , 7 , 12 ; 4 , 15 , 14 , 1 ] A = 16 3 2 13  5 10 11 8  9 6 7 12  4 15 14 1>> A ( 2 , 3 ) ans = 11

Indexmengen können durch Ausdrücke wie angegeben werden 2:4, was zu ausgewertet wird [2, 3, 4]. Beispielsweise kann eine Teilmatrix, die aus den Zeilen 2 bis 4 und den Spalten 3 bis 4 besteht, wie folgt geschrieben werden:

>> A ( 2 : 4 , 3 : 4 ) ans = 11 8 7 12 14 1

Eine quadratische Einheitsmatrix der Größe n kann mit der Funktion erzeugt werden eye, und Matrizen beliebiger Größe mit Nullen bzw. Einsen können mit den Funktionen zerosund erzeugt werden ones.

>> eye ( 3 , 3 ) ans = 1 0 0 0 1 0 0 0 1>> zeros ( 2 , 3 ) ans = 0 0 0 0 0 0>> ones ( 2 , 3 ) ans = 1 1 1 1 1 1

Das Transponieren eines Vektors oder einer Matrix erfolgt entweder durch die Funktion transposeoder durch Hinzufügen eines Punktstrichs nach der Matrix (ohne Punkt führt der Strich bei komplexen Arrays zur konjugiert Transponierung ):

>> A = [ 1 ; 2 ], B = A . ' , C = transpose ( A ) A =  1  2 B =  1 2 C =  1 2>> D = [ 0 , 3 ; 1 , 5 ] , D. ' D =  0 3  1 5 ans =  0 1  3 5

Die meisten Funktionen akzeptieren Arrays als Eingabe und arbeiten elementweise mit jedem Element. Beispielsweise mod(2*J,n)multipliziert `multiplizieren` jedes Element in `J` mit 2 und reduziert es anschließend modulo n . MATLAB bietet zwar Standard for- whileSchleifen, aber (wie in anderen ähnlichen Anwendungen wie APL und R ) wird die Verwendung der Vektornotation empfohlen, da sie oft schneller ist. Der folgende Code, ein Auszug aus der Funktion `magic.m` , erzeugt ein magisches Quadrat M für ungerade Werte von n (hier wird die MATLAB-Funktion ` magic.m` verwendet, um quadratische Matrizen I und Jmeshgrid zu generieren, die die Elemente ⁠ ⁠ enthalten ):

[ J , I ] = meshgrid ( 1 : n ); A = mod ( I + J - ( n + 3 ) / 2 , n ); B = mod ( I + 2 * J - 2 , n ); M = n * A + B + 1 ;

Strukturen

MATLAB unterstützt strukturierte Datentypen. [ 40 ] Da alle Variablen in MATLAB Arrays sind, ist die Bezeichnung „Struktur-Array“ treffender, da jedes Element des Arrays die gleichen Feldnamen besitzt. Darüber hinaus unterstützt MATLAB dynamische Feldnamen [ 41 ] (Feldzugriffe über den Namen, Feldmanipulationen usw.).

Funktionen

Beim Erstellen einer MATLAB-Funktion muss der Dateiname mit dem Namen der ersten Funktion in der Datei übereinstimmen. Gültige Funktionsnamen beginnen mit einem Buchstaben und dürfen Buchstaben, Zahlen oder Unterstriche enthalten. Variablen und Funktionen unterscheiden zwischen Groß- und Kleinschreibung. [ 42 ]

rgbImage = imread ( 'ecg.png' ); grayImage = rgb2gray ( rgbImage ); % für nicht indizierte Bilder level = graythresh ( grayImage ); % Schwellenwert für die Umwandlung des Bildes in Binärdaten, binaryImage = im2bw ( grayImage , level ); % Extrahieren der einzelnen Rot-, Grün- und Blaukanäle. redChannel = rgbImage (:, :, 1 ); greenChannel = rgbImage (:, :, 2 ); blueChannel = rgbImage (:, :, 3 ); % Schwarze Bereiche reinrot färben. redChannel ( ~ binaryImage ) = 255 ; greenChannel ( ~ binaryImage ) = 0 ; blueChannel ( ~ binaryImage ) = 0 ; % Anschließend zum Ausgabebild zusammenfügen. rgbImageOut = cat ( 3 , redChannel , greenChannel , blueChannel ); imshow ( rgbImageOut );

Funktionshandles

MATLAB unterstützt Elemente des Lambda-Kalküls durch die Einführung von Funktionshandles [ 43 ] oder Funktionsreferenzen, die entweder in .m-Dateien oder anonymen [ 44 ] / verschachtelten Funktionen implementiert sind. [ 45 ]

Klassen und objektorientierte Programmierung

MATLAB unterstützt objektorientierte Programmierung, einschließlich Klassen, Vererbung , virtueller Dispatch, Pakete, Wert- und Referenzübergabe . [ 46 ] Syntax und Aufrufkonventionen unterscheiden sich jedoch deutlich von anderen Sprachen. MATLAB kennt Wertklassen und Referenzklassen, je nachdem, ob die Klasse ein Handle als Oberklasse besitzt (Referenzklassen) oder nicht (Wertklassen). [ 47 ]

Das Verhalten von Methodenaufrufen unterscheidet sich zwischen Wert- und Referenzklassen. Zum Beispiel bei einem Methodenaufruf:

Objekt.Methode ( ) ;

Eine Methode kann nur dann ein Element eines Objekts ändern, wenn das Objekt eine Instanz einer Referenzklasse ist. Andernfalls müssen Methoden der Wertklasse eine neue Instanz zurückgeben, wenn sie das Objekt ändern müssen.

Nachfolgend ein Beispiel für eine einfache Klasse:

classdef Hello methods function greet ( obj ) disp ( 'Hallo!' ) end end end

Wenn diese Datei mit dem Namen gespeichert wird hello.m, kann sie mit den folgenden Befehlen ausgeführt werden:

>> x = Hello ( ); >> x.greet ( ); Hallo!

Grafik- und grafische Benutzeroberflächenprogrammierung

MATLAB verfügt über eng integrierte Funktionen zur grafischen Darstellung. Beispielsweise kann die Funktion ` plot` verwendet werden, um aus zwei Vektoren `x` und `y` ein Diagramm zu erzeugen . Der Code:

x = 0 : pi / 100 : 2 * pi ; y = Sünde ( x ); Plot ( x , y )

erzeugt die folgende Figur der Sinusfunktion :

MATLAB unterstützt auch dreidimensionale Grafiken:

[ X , Y ] = Meshgrid ( -10 : 0,25 : 10 , - 10 : 0,25 : 10 ) ; f = sinc ( sqrt (( X / pi ) .^ 2 + ( Y / pi ) .^ 2 )); Netz ( X , Y , f ); axis ([ - 10 10 - 10 10 - 0.3 1 ]) xlabel ( '{\bfx}' ) ylabel ( '{ \ bfy}' ) zlabel ( '{\bfsinc} ({\bfR})' ) ausgeblendet
   
[ X , Y ] = Meshgrid ( -10 : 0,25 : 10 , - 10 : 0,25 : 10 ) ; f = sinc ( sqrt (( X / pi ) .^ 2 + ( Y / pi ) .^ 2 )); surfen ( X , Y , f ); Achse ([ - 10 10 - 10 10 - 0,3 1 ]) xlabel ( '{\bfx}' ) ylabel ( '{\bfy}' ) zlabel ( '{\bfsinc} ({\bfR})' )
Dieser Code erzeugt eine Drahtgitterdarstellung der zweidimensionalen, unnormalisierten Sinc-Funktion in 3D :     Dieser Code erzeugt eine 3D- Oberflächendarstellung der zweidimensionalen, unnormalisierten Sinc-Funktion :
   

MATLAB unterstützt die Entwicklung von Anwendungen mit grafischer Benutzeroberfläche (GUI). [ 48 ] Benutzeroberflächen können entweder programmatisch oder mithilfe visueller Designumgebungen wie GUIDE und App Designer generiert werden . [ 49 ] [ 50 ]

MATLAB und andere Sprachen

MATLAB kann Funktionen und Unterprogramme aufrufen, die in den Programmiersprachen C oder Fortran geschrieben sind . [ 51 ] Dazu wird eine Wrapper-Funktion erstellt, die das Übergeben und Zurückgeben von MATLAB-Datentypen ermöglicht. MEX-Dateien (MATLAB-Executables) sind die dynamisch ladbaren Objektdateien, die durch Kompilieren solcher Funktionen erzeugt werden. [ 52 ] [ 53 ] Seit 2014 wurde die bidirektionale Schnittstelle zu Python zunehmend ausgebaut. [ 54 ] [ 55 ]

Libraries written in Perl, Java, ActiveX or .NET can be directly called from MATLAB,[56][57] and many MATLAB libraries (for example XML or SQL support) are implemented as wrappers around Java or ActiveX libraries. Calling MATLAB from Java is more complicated, but can be done with a MATLAB toolbox[58] which is sold separately by MathWorks, or using an undocumented mechanism called JMI (Java-to-MATLAB Interface),[59][60] (which should not be confused with the unrelated Java Metadata Interface that is also called JMI). Official MATLAB API for Java was added in 2016.[61]

As alternatives to the MuPAD based Symbolic Math Toolbox available from MathWorks, MATLAB can be connected to Maple or Mathematica.[62][63]

Libraries also exist to import and export MathML.[64]

Relations to US sanctions

In 2020, MATLAB withdrew services from two Chinese universities as a result of US sanctions. The universities said this will be responded to by increased use of open-source alternatives and by developing domestic alternatives.[65]

See also

Notes

  1. ^"The L-Shaped Membrane". MathWorks. 2003. Archived from the original on April 23, 2019. Retrieved February 7, 2014.
  2. ^ abhttps://www.mathworks.com/videos/r2025b-release-highlights-1757449057407.html.{{cite web}}: Missing or empty |title= (help)
  3. ^"System Requirements and Platform Availability". MathWorks. Archived from the original on October 13, 2016. Retrieved August 14, 2013.
  4. ^"Platform Road Map for MATLAB and Simulink Product Families". de.mathworks.com. Retrieved December 22, 2021.
  5. ^ „Schützen Sie Ihren Quellcode“ . MathWorks . Abgerufen am 1. November 2019 .
  6. ^ „MEX Platform Compatibility“ . MathWorks . Abgerufen am 1. November 2019 .
  7. ^ „MAT-Dateiversionen“ . MathWorks . Abgerufen am 1. November 2019 .
  8. ^ „Abbildung speichern, um sie später in MATLAB wieder zu öffnen“ . MathWorks . Abgerufen am 1. November 2019 .
  9. ^ „Live Code File Format (.mlx)“ . MathWorks . Abgerufen am 1. November 2019 .
  10. ^ „MATLAB App Designer“ . MathWorks . Abgerufen am 1. November 2019 .
  11. ^ „Toolbox Distribution“ . MathWorks . Abgerufen am 1. November 2019 .
  12. ^ „MATLAB App Installer File“ . MathWorks. Archiviert vom Original am 17. Januar 2014. Abgerufen am 1. November 2019 .
  13. ^ „Installation des Supportpakets“ . MathWorks. Archiviert vom Original am 6. Oktober 2014. Abgerufen am 1. November 2019 .
  14. ^ Eaton, John W. (21. Mai 2001). „Octave: Vergangenheit, Gegenwart und Zukunft“ (PDF) . Texas-Wisconsin Modeling and Control Consortium . Archiviert vom Original (PDF) am 9. August 2017. Abgerufen am 1. Dezember 2016 .
  15. ^ "RunMat: Kostenlose Laufzeitumgebung für MATLAB-Code (Browser & Desktop)" . RunMat .
  16. ^ „Ein Interview mit Cleve Moler, geführt von Thomas Haigh am 8. und 9. März 2004 in Santa Barbara, Kalifornien“ ( PDF) . Computer History Museum. Archiviert vom Original (PDF) am 27. Dezember 2014. Abgerufen am 6. Dezember 2016. APL, Speakeasy, LINPACK, EISPACK und PL0 waren also die Vorgänger von MATLAB.
  17. ^ Bezanson, Jeff; Karpinski, Stefan; Shah, Viral; Edelman, Alan (14. Februar 2012). „Warum wir Julia entwickelt haben“ . Julia Language . Abgerufen am 1. Dezember 2016 .
  18. ^ „Geschichte“ . Scilab. Archiviert vom Original am 1. Dezember 2016. Abgerufen am 1. Dezember 2016 .
  19. ^"Matrices and Arrays - MATLAB & Simulink". www.mathworks.com. Retrieved May 21, 2022.
  20. ^The MathWorks (February 2020). "Company Overview"(PDF). Archived from the original(PDF) on July 19, 2020. Retrieved May 11, 2020.
  21. ^"Current number of matlab users worldwide". Mathworks. November 9, 2017. Retrieved April 26, 2023.
  22. ^ abcdefghChonacky, N.; Winch, D. (2005). "Reviews of Maple, Mathematica, and Matlab: Coming Soon to a Publication Near You". Computing in Science & Engineering. 7 (2). Institute of Electrical and Electronics Engineers (IEEE): 9–10. Bibcode:2005CSE.....7b...9C. doi:10.1109/mcse.2005.39. ISSN 1521-9615. S2CID 29660034.
  23. ^ abcdefghHaigh, Thomas. "Cleve Moler: Mathematical Software Pioneer and Creator of Matlab"(PDF). IEEE Annals of the History of Computing. IEEE Computer Society.
  24. ^"A Brief History of MATLAB". www.mathworks.com. Retrieved September 4, 2021.
  25. ^ abcdefgMoler, Cleve; Little, Jack (June 12, 2020). "A history of MATLAB". Proceedings of the ACM on Programming Languages. 4 (HOPL). Association for Computing Machinery (ACM): 1–67. doi:10.1145/3386331. ISSN 2475-1421.
  26. ^ abXue, D.; Press, T.U. (2020). MATLAB Programming: Mathematical Problem Solutions. De Gruyter STEM. De Gruyter. p. 21. ISBN 978-3-11-066370-9. Retrieved September 16, 2020.
  27. ^ abPress, CRC (2008). Solving Applied Mathematical Problems with MATLAB. CRC Press. p. 6. ISBN 978-1-4200-8251-7. Retrieved September 16, 2020.
  28. ^ Woodford, C.; Phillips, C. (2011). Numerische Methoden mit durchgerechneten Beispielen: Matlab-Edition . SpringerLink: Bücher. Springer Niederlande. S. 1. ISBN 978-94-007-1366-6Abgerufen am 16. September 2020 .
  29. ^ Tranquillo, JV (2011). MATLAB für Ingenieurwesen und Lebenswissenschaften . Synthesis Digital Library of Engineering and Computer Science. Morgan & Claypool Publishers. ISBN 978-1-60845-710-6Abgerufen am 17. September 2020 .
  30. ^ LoTurco, Lori (28. Januar 2020). „Das Tempo der Ingenieurwissenschaften beschleunigen“ . MIT News . Massachusetts Institute of Technology . Abgerufen am 16. September 2020 .
  31. ^ Gatto, Marino; Rizzoli, Andrea (1993). „Review of MATLAB, Version 4.0“. Natural Resource Modeling . 7 (1). Wiley: 85–88 . Bibcode : 1993NRM.....7...85G . doi : 10.1111/j.1939-7445.1993.tb00141.x . ISSN 0890-8575 . 
  32. ^ Cho, MJ; Martinez, WL (2014). Statistics in MATLAB: A Primer . Chapman & Hall/CRC Computer Science & Data Analysis. CRC Press. ISBN 978-1-4665-9657-3Abgerufen am 17. September 2020 .
  33. ^ „Das neue Erscheinungsbild von MATLAB und Simulink“ (PDF) . MathWorks . Abgerufen am 12. Juni 2026 .
  34. Xue , D.; Chen, Y. (2013). Systemsimulationstechniken mit MATLAB und Simulink . Nicht mehr im Handel erhältlich. Wiley. S. 17. ISBN 978-1-118-69437-4Abgerufen am 15. Oktober 2020 .
  35. ^ „MATLAB Frühere Versionen“ . MathWorks . Abgerufen am 3. Dezember 2024 .
  36. ^ „MATLAB-Dokumentation“ . MathWorks. Archiviert vom Original am 19. Juni 2024. Abgerufen am 14. August 2013 .
  37. ^ „Vergleich von MATLAB mit anderen objektorientierten Sprachen“ . MATLAB . MathWorks. Archiviert vom Original am 29. Oktober 2013. Abgerufen am 14. August 2013 .
  38. ^ „Symbolische Variablen und Ausdrücke erstellen“ . Symbolic Math Toolbox . MathWorks. Archiviert vom Original am 12. Juli 2013. Abgerufen am 14. August 2013 .
  39. ^ „Matrixindexierung“ . MathWorks. Archiviert vom Original am 9. August 2018. Abgerufen am 14. August 2013 .
  40. ^ „Strukturen“ . MathWorks. Archiviert vom Original am 13. Juli 2019. Abgerufen am 14. August 2013 .
  41. ^ „Feldnamen aus Variablen generieren“ . MathWorks. Archiviert vom Original am 5. Dezember 2019. Abgerufen am 14. August 2013 .
  42. ^ „Groß-/Kleinschreibung und Leerzeichenbeachtung“ . MathWorks . Abgerufen am 1. November 2019 .
  43. ^ „Funktionshandles“ . MathWorks. Archiviert vom Original am 19. Juli 2020. Abgerufen am 14. August 2013 .
  44. ^ „Anonyme Funktionen“ . MathWorks. Archiviert vom Original am 28. Juli 2013. Abgerufen am 14. August 2013 .
  45. ^ „Verschachtelte Funktionen“ . MathWorks. Archiviert vom Original am 19. Juli 2020. Abgerufen am 14. August 2013 .
  46. ^ „Objektorientierte Programmierung“ . MathWorks. Archiviert vom Original am 5. Dezember 2019. Abgerufen am 14. August 2013 .
  47. ^ „Vergleich von Handle- und Wertklassen“ . MathWorks. Archiviert vom Original am 5. Dezember 2019. Abgerufen am 14. August 2013 .
  48. ^ „MATLAB GUI“ . MathWorks. 30. April 2011. Archiviert vom Original am 17. Januar 2022. Abgerufen am 14. August 2013 .
  49. ^ „Erstellen einer einfachen GUIDE GUI“ . MathWorks. Archiviert vom Original am 5. Oktober 2014. Abgerufen am 14. August 2014 .
  50. ^ „MATLAB App Designer“ . MathWorks . Abgerufen am 1. November 2019 .
  51. ^ „Anwendungsprogrammierschnittstellen für MATLAB“ . MathWorks. Archiviert vom Original am 15. September 2017. Abgerufen am 14. August 2013 .
  52. ^ „MEX-Dateien erstellen“ . MathWorks. Archiviert vom Original am 3. März 2014. Abgerufen am 14. August 2013 .
  53. ^ Spielman, Dan (10. Februar 2004). „Connecting C and Matlab“ . Yale University, Computer Science Department . Abgerufen am 20. Mai 2008 .
  54. ^ „MATLAB Engine für Python“ . MathWorks. Archiviert vom Original am 16. Mai 2015. Abgerufen am 13. Juni 2015 .
  55. ^ „Python-Bibliotheken aufrufen“ . MathWorks. Archiviert vom Original am 5. Dezember 2019. Abgerufen am 13. Juni 2015 .
  56. ^ „Externe Programmiersprachenschnittstellen“ . MathWorks. Archiviert vom Original am 11. März 2014. Abgerufen am 14. August 2013 .
  57. ^ „Perl-Skript mithilfe der entsprechenden Betriebssystem-Executable aufrufen“ . MathWorks. Archiviert vom Original am 5. Dezember 2019. Abgerufen am 7. November 2013 .
  58. ^ „MATLAB Builder JA“ . MathWorks. Archiviert vom Original am 4. Juni 2011. Abgerufen am 7. Juni 2010 .
  59. ^ Altman, Yair (14. April 2010). „Java-zu-Matlab-Schnittstelle“ . Undokumentiertes Matlab. Archiviert vom Original am 5. September 2015. Abgerufen am 7. Juni 2010 .
  60. ^ Kaplan, Joshua. „matlabcontrol JMI“ .
  61. ^ „MATLAB Engine API für Java“ . MathWorks. Archiviert vom Original am 19. September 2020. Abgerufen am 15. September 2016 .
  62. ^ Germundsson, Roger (30. September 1998). „MaMa: MATLAB aus Mathematica mit MathLink aufrufen“ . Wolfram Research . Wolfram Library Archive.
  63. ^ rsmenon; szhorvat (2013). „MATLink: Kommunikation mit MATLAB von Mathematica aus“ . Abgerufen am 14. August 2013 .
  64. ^ Weitzel, Michael (1. September 2006). „MathML-Import/Export“ . MathWorks – File Exchange. Archiviert vom Original am 25. Februar 2011. Abgerufen am 14. August 2013 .
  65. ^ „US-Militärverbot schließt zwei chinesische Universitäten von beliebter Software aus“ . South China Morning Post . 12. Juni 2020. Abgerufen am 6. November 2020 .

Weiterführende Literatur

  • Gilat, Amos (2004). MATLAB: Eine Einführung mit Anwendungen, 2. Auflage . John Wiley & Sons. ISBN 978-0-471-69420-5Die
  • Quarteroni, Alfio ; Saleri, Fausto (2006). Wissenschaftliches Rechnen mit MATLAB und Octave . Springer. ISBN 978-3-540-32612-0Die
  • Ferreira, AJM (2009). MATLAB-Codes für die Finite-Elemente-Analyse . Springer. ISBN 978-1-4020-9199-5Die
  • Lynch, Stephen (2004). Dynamische Systeme mit Anwendungen in MATLAB . Birkhäuser. ISBN 978-0-8176-4321-8Die
  • Sargiotis, Dimitrios (2025). MATLAB für Bauingenieure: Von den Grundlagen bis zu fortgeschrittenen Anwendungen . Springer. ISBN 978-3-031-84672-4Die