Start Inhalt Einstieg in MATLAB 1(33) 1. Einstieg in MATLAB 1.1 Vorbemerkungen Allgemeines. Starten und Stoppen von MATLAB. 1.2 MATLAB Desktop Arbeitsumgebung. Online Hilfe. 1.3 Grundlagen Arbeit im Command window. Daten und Rechenoperationen.
Start Inhalt Einstieg in MATLAB Vorbemerkungen 2(33) Besonderheiten von MATLAB Integriertes interaktives System für numerische Rechnung. Schnelle Programmentwicklung mittels höherer Programmiersprache. Debugger. Profiler. OOP. Datenstrukturen erfordern minimale Beachtung (keine Deklarationen nötig). Aufwändige Graphik steht zur Verfügung. MATLAB (und damit MATLAB-Programme) laufen auf folgenden Plattformen: Linux (64 bit), Windows (32 und 64 bit), MAC OS X (32-bit-Linux nur bis Version 2012a) Erweiterungen für spezielle Anwendungen durch Toolboxen z.b. optimization, statistic, financial, spline, symbolic math,... (ca. 40 Toolboxen verfügbar) MATLAB Compiler (Zusatzprodukt) zur Erzeugung von Binaries.
Start Inhalt Einstieg in MATLAB Vorbemerkungen 3(33) Starten und Beenden von MATLAB Starten: Unter Windows: am Besten durch Anklicken einer Verknüpfung (Deren Pfad vorher auf geeignetes Verzeichnis setzen). START-Knopf geht auch. Eingabe von Kommandos im Kommandofenster (Prompt: >>). z.b. in Linux /usr/local/bin/matlab & ( installationsabhängig!! ) oder Verknüpfung auf dem Desktop anlegen. Beenden: Durch Eingabe von quit oder exit. Anklicken des Matlab-Logos links oben und Auswahl von Schließen.
Start Inhalt Einstieg in MATLAB MATLAB Desktop 4(33) Desktop Wichtigstes Fenster: Command Window Fenster: Current Folder, Workspace, Command History weiter: Anzeige/Änderung aktuelles Verzeichnis, Symbolbereich weitere Fenster: Editor, Grafik, Debugger, Variableneditor (später)
Start Inhalt Einstieg in MATLAB MATLAB Desktop 5(33) Hilfe in MATLAB Umfangreiche Online Hilfe Aktivierung durch <F1> Button Aktivierung über Symbolbereich Help Eingabe von doc am Prompt für die schnelle Hilfe im Arbeitsfenster Benutzung des Matlabkommandos help z.b. help kommando zeigt Hilfe zu kommando an.
Start Inhalt Einstieg in MATLAB Grundlagen 6(33) 1.3 MATLAB Grundlagen 1.3.1 Arbeit an der Kommandozeile 1.3.2 Daten, Anweisungen, Arbeit mit Matrizen 1.3.3 Workspace 1.3.4 Eigene Funktionen 1.3.5 Einfache Grafik
Start Inhalt Einstieg in MATLAB Grundlagen 7(33) Arbeit an der Kommandozeile Grundlegendes zum Command Window. Erste Beispiele. Zahldarstellung und Formatierung.
Start Inhalt Einstieg in MATLAB Grundlagen 8(33) Grundlegendes zum Command Window MATLAB unterscheidet Groß- und Kleinschreibung. Tippen eines Variablen- oder Funktionsbezeichners liefert deren Wert. Semikolon am Ende einer Anweisung unterdrückt die Ausgabe des Wertes. Mit den - und -Tasten kann man durch vorangehende Befehle scrollen. Tippen der ersten Zeichen vorangehender Befehle gefolgt von -Taste liefert den nächsten zurückliegenden Befehl, der mit diesen Zeichen beginnt. Alternative: Suchen des Befehls im Command History Fenster und Anklicken des Befehls.
Start Inhalt Einstieg in MATLAB Grundlagen 9(33) Arbeiten an der Kommandozeile >> a = [1 2 3] a = 1 2 3 Unterdrückung von Leerzeilen: format compact. >> c = [4; 5; 6] c = 4 5 6
Start Inhalt Einstieg in MATLAB Grundlagen 10(33) Matrixmultiplikation >> a*c ans = 32 >> A = c*a A = 4 8 12 5 10 15 6 12 18 >> a*a??? Error using ==> * Inner matrix dimensions must agree.
Start Inhalt Einstieg in MATLAB Grundlagen 11(33) Komponentenweise Funktionsauswertung >> exp(a) ans = 2.7183 7.3891 20.0855 >> log(ans) ans = 1 2 3 Beachte: ans enthält stets letztes nichtzugewiesenes Zwischenergebnis. >> sqrt(a) ans = 1.0000 1.4142 1.7321
Start Inhalt Einstieg in MATLAB Grundlagen 12(33) Zahldarstellung und format-anweisung Intern: doppelt genaue (64 Bit) Gleitkommazahlen (gemäß IEEE 754) Ausgabe: defaultmäßig 5 Dezimalstellen. Dieses Standardformat kann mittels format gändert werden: >> format long >> sqrt(a) ans = 1.00000000000000 1.41421356237310 1.73205080756888 >> format >> 2^(-24) ans = 5.9605e-008
Start Inhalt Einstieg in MATLAB Grundlagen 13(33) Daten, Anweisungen, Arbeit mit Matrizen Vordefinierte Variable Datentypen Matrizen. Eingabe, Zugriff, Funktionen. Operatoren
Start Inhalt Einstieg in MATLAB Grundlagen 14(33) Vordefinierte Variable Spezielle MATLAB-Variable: i, j, pi, ans, eps, Inf, NaN, intmax, intmin, realmax, realmin Diese können überschrieben werden. >> i, j, pi, eps ans = 0 + 1.000000000000000i ans = 0 + 1.000000000000000i ans = 3.141592653589793 ans = 2.220446049250313e-16
Start Inhalt Einstieg in MATLAB Grundlagen 15(33) Datentypen (1) Daten werden automatisch angelegt. Keine Typdeklaration notwendig. Numerische Datentypen (Standard: double) Gleitpunktzahlen: double, single x=23.4, y=1.e-6, s=single(25.7), t=double(s) Integer (bei Bedarf int8, uint8, int16,...) k=12, m=int8(78), n=int16(k) Komplexe Zahlen: z = 4 + 3i nicht: z = 4 + i3, korrekt ist z = 4 + i*3
Start Inhalt Einstieg in MATLAB Grundlagen 16(33) Datentypen (2) Weitere MATLAB-Datentypen: Zeichenketten z1= G, z2= das ist ein string Logische Variable Realisierung durch Werte 0 (false) oder 1 (true) x=false, y=1, x y, ans = 1 Structures Cell Arrays Function handles
Start Inhalt Einstieg in MATLAB Grundlagen 17(33) Matrizen >> B = [-3 0 1; 2 5-7; -1 4 8] B = -3 0 1 2 5-7 -1 4 8 Spaltentrennung durch Leerzeichen oder Komma, v = [ 12.3, 3.6, 8 ] Zeilentrennung durch Semikolon ; w = [ 12.3; 3.6; 8 ]
Start Inhalt Einstieg in MATLAB Grundlagen 18(33) A, B, a siehe frühere Folien Matrizen zusammenbauen >> C = [A,[8;9;10]], D = [B; a] C = 4 8 12 8 5 10 15 9 6 12 18 10 D = -3 0 1 2 5-7 -1 4 8 1 2 3... und auf Elemente zugreifen: >> C(2,3) ans = 15
Start Inhalt Einstieg in MATLAB Grundlagen 19(33) Extrem nützlich: der Doppelpunkt (1) >> v = 1:6 v = 1 2 3 4 5 6 >> w = 2:3:10, y = 1:-0.25:0 w = 2 5 8 y = 1.0000 0.7500 0.5000 0.2500 0
Start Inhalt Einstieg in MATLAB Grundlagen 20(33) Doppelpunkt (2) >> zeilen = 1:2, spalten = 3:4, C(zeilen,spalten) zeilen = 1 2 spalten = 3 4 ans = 12 8 15 9 >> D(2,:), D(:,3) ans = 2 5-7 ans = 1-7 8 3
Start Inhalt Einstieg in MATLAB Grundlagen 21(33) Hilfsmittel zur Matrixkonstruktion Folgende MATLAB Funktionen sind häufig sehr nützlich beim Umgang mit Matrizen (Auswahl). eye, zeros, ones tril, triu, diag rand, randn size, length max, min, sum Details siehe Online Hilfe (ca. 60 Funktionen zu diesem Thema).
Start Inhalt Einstieg in MATLAB Grundlagen 22(33) Beispiele: Funktionen zur Matrixkonstruktion >> I3 = eye(3), Y = zeros(3,5), Z = ones(2) I3 = 1 0 0 0 1 0 0 0 1 Y = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Z = 1 1 1 1
Start Inhalt Einstieg in MATLAB Grundlagen 23(33) Anweisungen Eine Anweisung var = expr weist den Wert von expr der Variablen var zu, wobei var entweder neu angelegt oder überschrieben wird. >> N = namelengthmax N = 63 Mehrere Anweisungen pro Zeile: durch Komma trennen >> X=ones(4,3), dim=size(x) Anweisungsfortsetzung auf nächster Zeile:... >> s = 1 + 2... + 3 s = 6 am Zeilenende Zuweisung an mehrere Variable: [ var1, var2 ] = expr >> [ dim1, dim2 ] = size(x)
Start Inhalt Einstieg in MATLAB Grundlagen 24(33) Operatoren Arithmetische Operatoren + - * / ^.*./.^ \.\ : Vergleichsoperatoren < <= > >= == ~= Logische Operatoren & ~ weitere Operatoren && Weitere Operatoren (z.b. Bitoperationen) sind über Funktionen realisiert. Einen schnellen Überblick erhält man durch die Eingabe von >> help + oder >> help / oder...
Start Inhalt Einstieg in MATLAB Grundlagen 25(33) Workspace Allgemeines zum Arbeitsbereich.. Das Workspace Fenster.
Start Inhalt Einstieg in MATLAB Grundlagen 26(33) Der Arbeitsbereich (Workspace) Alle bisher zugewiesenen Variablen sind im Arbeitsbereich sichtbar. >> who Your variables are: A C F I3 Y a b e w y B D G Z ans c v x clear a löscht a aus dem Arbeitsbereich. clear löscht den gesamten Arbeitsbereich. whos gibt eine detailliertere Übersicht.
Start Inhalt Einstieg in MATLAB Grundlagen 27(33) Workspace Fenster Im Workspace Fenster sind alle aktuellen Variablen mit gelistet. Name, Typ, Größe, Wert.... (Anzeige konfigurierbar) Durch Anklicken einer Variablen öffnet sich ein neues Fenster: Variable Editor In diesem sind die Werte editierbar.
Start Inhalt Einstieg in MATLAB Grundlagen 28(33) Eigene Funktionen Funktionen als m File. Anonyme Funktion. Funktion als inline - Objekt.
Start Inhalt Einstieg in MATLAB Grundlagen 29(33) Definition eigener Funktionen Beispiel: sin(α t) als Funktion der 2 Parameter α und t, d.h. g(alpha,t) := sin(alpha*t) wird benötigt. m File (separate Datei) function fwert=g(alpha,t) fwert = sin(alpha*t); Benutzung wie ein Matlab-Kommando: g(alpha,t) (Details später) anonyme Funktion Definition: g1=@(alpha, t) (sin(alpha*t)) Benutzung in Matlab: g1(alpha,t) inline Objekt Definition: g2= inline( sin(alpha*t) ) Benutzung in Matlab: g2(alpha,t)
Start Inhalt Einstieg in MATLAB Grundlagen 30(33) Einfache Grafik Funktionsplot mit plot. Funktionsplot mit fplot. Ein anderes Beispiel.
Start Inhalt Einstieg in MATLAB Grundlagen 31(33) Funktionsplot (1) >> t = 0:0.005:1; z = exp(10*t.*(t-1)).*sin(12*pi*t); >> plot(t,z) 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Start Inhalt Einstieg in MATLAB Grundlagen 32(33) Funktionsplot (2) Als häufig schnellere Alternative steht zum Zeichnen von Funktionsgraphen die Anweisung fplot zur Verfügung. >> myfun = @(t) exp(10*t.*(t-1)).*sin(12*pi*t); >> fplot(myfun, [0, 1])
Start Inhalt Einstieg in MATLAB Grundlagen 33(33) Noch ein Grafikbeispiel >> hist(randn(1000,1)) 250 200 150 100 50 0 4 3 2 1 0 1 2 3 4