Schöpfer | Cleve Moler |
---|---|
Entwickelt von | MathWorks |
Erste Version | 1984 |
Letzte Version | R2021a (17. März 2021) |
Geschrieben in | C , C ++ , Fortran und Java |
Betriebssystem | Microsoft Windows , macOS und GNU/Linux |
Umgebung | Linux , Unix , Mac OS , Windows |
Formate lesen | MATLAB M-Datei ( d ) , Hierarchisches Datenformat , MAT-Datei ( d ) , MAT4 ( d ) , MAT-Datei, Level 5, Version 6 ( d ) , MAT-Datei, Level 5, Version 7 ( d ) , MAT-Datei, Level 5, Version 7.3 ( d ) , BigTIFF ( d ) , MATLAB Simulink Model Template ( d ) , MATLAB Lizenzpasscode ( d ) , MATLAB Mac 64bit kompilierte Funktion ( d ) , MATLAB Linux 64bit kompilierte Funktion ( d ) , MATLAB Support Package ( d ) , MATLAB App Installer ( d ) und MATLAB Compiler Project ( d ) |
schriftliche Formate | MATLAB M-File ( d ) , Hierarchical Data Format , MATLAB Simulink Model Template ( d ) , MATLAB Mac 64bit kompilierte Funktion ( d ) , MATLAB Linux 64bit kompilierte Funktion ( d ) , MATLAB Support Package ( d ) , MATLAB App Installer ( d .) ) ) und MATLAB Compiler Projekt ( d ) |
Art | Numerische Berechnung |
Lizenz | Inhaber |
Webseite | fr.mathworks.com |
MATLAB (" Matrix-Labor ") ist eine Skriptsprache, die von einer gleichnamigen Entwicklungsumgebung emuliert wird ; es wird für numerische Berechnungszwecke verwendet . MATLAB wurde von The MathWorks entwickelt und ermöglicht es Ihnen, Matrizen zu manipulieren , Kurven und Daten anzuzeigen , Algorithmen zu implementieren , Benutzeroberflächen zu erstellen und mit anderen Sprachen wie C , C++ , Java und Fortran zu kommunizieren .
MATLAB-Anwender (rund 4 Millionen im Jahr 2019) kommen aus sehr unterschiedlichen Hintergründen wie Ingenieurwesen, Wissenschaft und Wirtschaft, sowohl in Industrie- als auch in Forschungskontexten.
Matlab kann allein oder mit Toolboxen verwendet werden .
Die MATLAB-Sprache wurde Ende der 1970er Jahre von Cleve Moler aus zwei in Fortran geschriebenen Bibliotheken entwickelt : LINPACK und EISPACK .
Der damalige Mathematikprofessor an der University of New Mexico wollte seinen Studenten die Nutzung dieser beiden Bibliotheken ermöglichen, ohne Fortran zu kennen. Cleve Moler verwendete es dann für Kurse an der Stanford University, wo es von Mathematikstudenten, die an Fortran gewöhnt waren, gemischt aufgenommen wurde.
Deutlich stärker interessiert waren dagegen Studenten der Technik, insbesondere der Signalverarbeitung . Der Ingenieur Jack Little (in) verstand schnell seine Fähigkeiten und unternahm mit einem Kollegen, Steve Bangert, eine Umcodierung in die Sprache C. Jack Little, Cleve Moler und Steve Bangert gründeten 1984 die Firma The MathWorks, um die Version 1.0 von . zu vermarkten MATLAB.
MATLAB entwickelte sich dann weiter, beispielsweise durch die Integration der LAPACK- Bibliothek im Jahr 2000, durch den Erwerb zahlreicher Toolboxen und durch die Einbeziehung der Möglichkeiten anderer Programmiersprachen wie C++ oder Java .
MATLAB-Software basiert auf der MATLAB-Sprache. Eine Befehlszeilenschnittstelle , die Teil des MATLAB-Desktops ist, ermöglicht die Ausführung einfacher Befehle . Befehlssequenzen können in einer Textdatei, typischerweise mit dem MATLAB-Editor, als "Skript" oder gekapselt in einer Funktion gespeichert werden .
Variablen werden mit dem Zuweisungsoperator definiert =. MATLAB ist eine schwach typisierte Sprache (in dem Sinne, dass Typkonvertierungen implizit sind). Variablen werden nicht mit ihrem Typ deklariert, mit Ausnahme von symbolischen Objekten, zum Beispiel:
>> x = 17 x = 17 >> x = 'hat' x = hatWie der Name schon sagt, besteht das Interesse von MATLAB darin, Arrays mit einer Dimension („Vektor“ im MATLAB-Vokabular) oder zwei Dimensionen („Matrizen“) oder mehr problemlos handhaben zu können. Standardmäßig sind alle Variablen Arrays, MATLAB erlaubt die Matrixprogrammierung (in) . In der Praxis sind die Tabellen wie folgt definiert:
>> A = [3*4, pi/2] A = 12.0000 1.5708 >> B = 3*sin(A) B = -1.6097 3.0000 >> C = 1:2:9 C = 1 3 5 7 9 >> D = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1] D = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 >> D(2,3) ans = 11Wenn wir die benannte Variable definieren C(oder dieser Variablen einen neuen Wert zuweisen, wenn sie bereits existiert), erstellen wir ein Array mit den Zahlen 1, 3, 5, 7 und 9. d.h. ein Array, das mit 1 (Anfangswert ), inkrementiert . beginnt bei jedem Wert um 2 (der Inkrement) und stoppt mit dem Wert (oder nach Überschreiten) von 9 (Endwert). Die Variable D ist eine Matrix.
Die Indizierung von Arrays beginnt bei 1, was die Konvention für Matrizen in der Mathematik und der Fortran- Sprache ist , aber im Gegensatz zu einigen Programmiersprachen, bei denen die Indizierung bei 0 beginnt (z. B. C oder Python ).
Die meisten MATLAB-Funktionen akzeptieren Matrizen und gelten für jedes ihrer Elemente. mod(2*J,n)Multiplizieren Sie beispielsweise jedes Element von "J" mit 2 und teilen Sie dann jedes Element modulo "n". Außerdem, wenn es möglich ist, „For“- oder „While“-Schleifen zu verwenden; es ist möglich, Vektornotationen zu verwenden, um sie zu ersetzen. Der folgende Code erstellt beispielsweise ein magisches Quadrat der Dimension n für n ungerade .
[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;Mit der Funktion meshgridkönnen quadratische Matrizen erstellt werden, die 1: n enthalten.
MATLAB wird durch mehrere Toolkits ergänzt. Unter den am häufigsten verwendeten finden wir: