Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Matlab Einführung Tobias Wunner 16. Oktober 2006.

Ähnliche Präsentationen


Präsentation zum Thema: "Matlab Einführung Tobias Wunner 16. Oktober 2006."—  Präsentation transkript:

1 Matlab Einführung Tobias Wunner 16. Oktober 2006

2 Matlab eine Einführung Vorteile –Interpreter und interaktive Befehlseingabe Schnelles Implementieren von wissenschaftlichen Methoden Gutes Hilfesystem >> lookfor 'sum' TRACE Sum of diagonal elements. CUMSUM Cumulative sum of elements. SUM Sum of elements....

3 Matlab eine Einführung Vorteile –Interpreter und interaktive Befehlseingabe Schnelles Arbeiten zum Entwickeln von Programmen Gutes Hilfesystem >> help sum SUM Sum of elements. S = SUM(X) is the sum of the elements of the vector X. If X is a matrix, S is a row vector with the sum over each...

4 Matlab eine Einführung Vorteile –Modulorientiert / Offen Sämtliche Matlabskripte sind einsehbar >> edit sum

5 Matlab eine Einführung Vorteile –Erweiterbar C oder FORTRAN Code durch mex Bibliotheken

6 Matlab eine Einführung Vorteile –Profiler ab Version 7! Hilft beim Auffinden von Ressourcen-Verbrauchenden Programmteile

7 Matlab eine Einführung Vorteile –Umfangreiche Softwarepakete vorhanden z.B.Toolboxes –Image Processing Toolbox –Neural Network Toolbox –Hier findet ihr alles was ihr nicht findet… :)

8 Matlab eine Einführung Nachteile –Nicht Objektorientiert (kein JAVA) –Effiziente Programme nur durch Vektorisierung >> x=1:5 X = >> y=sqrt(1:5); for x=1:5 y = sqrt(x); end statt Umdenken

9 Matlab eine Einführung Nachteile –Fast Alles ist erlaubt! Keine Variablendeklaration nötig Variablenneubelegungen (Typänderung) Funktionen mit gleichen Ein- und Ausgabeparametern >> x=2 >> x=super function x = myfun(x)... x = x*2;

10 Matlab eine Einführung Nachteile –Fast Alles ist erlaubt! Sogar Build-In Matlab Funktionen können als Variablen genutzt werden => ACHTUNG tötet eingebaute Funktionen!!! >> sum = 1:5; >> sum([ ]) 3 4% intuitiv erwartet =15 >> who% zeigt alle variablen im speicher an ans sum >> tmp = sum% sichern von variable sum >> clear sum% löschen von variablesum >> sum(tmp)% richtig! 15

11 Matlab eine Einführung MATLAB starten –UNIX z.B. Remote via Putty –Windows option matlab matlab –nojvm -nodisplay

12 Matlab eine Einführung Handwerkzeug zum starten –Arbeitsverzeichnis >> pwd >> ls >> cd projekt1 –Variablen im Speicher >> who –Variablen löschen/speichern >> clear y >> save dateiname >> load dateiname –History Cursor

13 Matlab eine Einführung Matrizen –Beliebige Matrizen >> [ ; ] –Spezielle Matrizen >> eye(3) >> ones(2,4) >> zeros(1,3) –Zufallszahlen >> rand(3) >> rand(100,100)

14 Matlab eine Einführung Matrizen indizieren –Dimension >> x=rand(3,4) % M-by-N Matrix >> size(x,1) % M = Zeilen >> size(x,2) % N = Spalten –Alle Elemente als Liste >> x(:) –k-tes bis Letztes Element >> y(k:end)

15 Matlab eine Einführung Matrizen indizieren –Mit Logik >> x=2: >> x> –Indizes ausgeben >> find(x>3) 5 6 7

16 Matlab eine Einführung Vergleichsoperatoren –kleiner/größer –gleich/ungleich ==,~= –größergleich >= Logische Operatoren –Und & –Oder | –Nicht ~

17 Matlab eine Einführung Matrizen sortieren/umformen –sortieren >> x=6:-1: >> sort(x) –umformen >> reshape(x,2,3)

18 Matlab eine Einführung Matrix Algebra –Kronecker Produkt >> kron([1 1 1],[1 2 5]) –Weiter nützliche Matrixoperationen >> help matfun

19 Matlab eine Einführung Komponentenweise Operationen –Inneres Produkt >> x=[1 -1] (x ist hier >> x*x Spaltenvektor!) 2 –Äußeres Produkt >> x*x

20 Matlab eine Einführung Vektormanipulationen –Eintragsweise Operationen >> [1 2 3].*[ ] >> [ ]./[ ] >> [2 4 8].^

21 Matlab eine Einführung Programmierung –Schleifen for i=[ ] sprinft(´Round%d\n´,i); end while BEDINGUNG... end

22 Matlab eine Einführung Programmierung –Abbruch von Schleifen for i=1:10... if (error<.1) break; % bricht Schleife ab end

23 Matlab eine Einführung Programmierung –Bedingungen if BEDINGUNG... end if BEDINGUNG... else... end

24 Matlab eine Einführung Datentypen –Arrays matrix = [Peter,Hans] PeterHans matrix = [Peter;Hans] geht nicht! –Cells cell = {Peter,Hans} m = char(cell) Peter Hans Lösung >> m(2,:) Hans >> cell{2} Hans

25 Matlab eine Einführung Datentypen –Cells -> beliebiege Datentypen cell2 = {12,cell,m} cell2{3} Peter Hans –Ähnliche Idee bei Struct struct1.a = cell2; struct1.b = rand(10,10); struct1.a{2}{3}(2,:)% Zugriff auf Hans

26 Matlab eine Einführung Ein-/Ausgabe disp(Hello World);% Einfache Ausgabe sprinft(Zahl=%d\n,x);% Formatierte Ausgabe x = input(Zahl eingeben:,x);% Einfache Eingabe S = 1 2 3; x = sscanf(S,%f);% Formatierte Eingabe

27 Matlab eine Einführung Grafische Ausgabe von Daten –neues Ausgabefenster öffnen figure –Daten in einem 2D Bild ausgeben x=rand(10,10); x2=x*x; figure, imagesc(x2), colorbar sc = scaled image Skala Kovarianzmatrix

28 Matlab eine Einführung Grafische Ausgabe von Daten –Funktionen Plotten plot(XVALUES,YVALUES) xval = 0:.1:30 yval = sin(3.*cos(xval)) plot(xval,yval,r) –Mehrere Funktionen yval2 = sin(xval) plot(xval,yval,xval,yval2) oder plot(xval,yval,:b) hold on plot(xval,yval2,r)

29 Matlab eine Einführung Grafische Ausgabe von Daten –3D Plot von Oberflächen (surfaces) x = imread(...); surf(x);shading flat;

30 Matlab eine Einführung


Herunterladen ppt "Matlab Einführung Tobias Wunner 16. Oktober 2006."

Ähnliche Präsentationen


Google-Anzeigen