Presentation laddar. Vänta.

Presentation laddar. Vänta.

1 Matlab, föreläsning 1 Oktober 4 2007 MATLAB Perspektiv på materialdesign Lina Kjellqvist Rum: K324 Telefon: 790 8313.

Liknande presentationer


En presentation över ämnet: "1 Matlab, föreläsning 1 Oktober 4 2007 MATLAB Perspektiv på materialdesign Lina Kjellqvist Rum: K324 Telefon: 790 8313."— Presentationens avskrift:

1 1 Matlab, föreläsning 1 Oktober 4 2007 MATLAB Perspektiv på materialdesign Lina Kjellqvist Email: lina@mse.kth.se Rum: K324 Telefon: 790 8313

2 2 Matlab, föreläsning 1 Oktober 4 2007 Upplägg 2 föreläsningar. 3 laborationer, i grupper om 2-3 personer. De två första laborationerna redovisas muntligt. Den tredje redovisas i form av en skriftlig rapport och betygsätts enligt skalan A, B, C, D, E, Fx eller F.

3 3 Matlab, föreläsning 1 Oktober 4 2007 Exempel på matematiska verktyg Fortran, C,.... Matlab - förenklat, men ganska effektivt. Finns en mängd fördefinierade funktioner. Maple - symboliskt, långsamt för stora problem.

4 4 Matlab, föreläsning 1 Oktober 4 2007 Användning Matlab är ett mjukvaruverktyg för tekniska beräkningar och är ett av de dominerande verktyget för ingenjörer. Används inom många tekniska områden. Numerisk lösning av komplexa problem. Visualisering. 2D och 3D. Kan importera data från en mängd olika format. Välutvecklat stöd för programmering. Målet med kursen är att ge kunskaper om grunderna i Matlab.

5 5 Matlab, föreläsning 1 Oktober 4 2007 Variabler Alla variabler i Matlab är av typen matris av flyttal. En variabel har ett namn bestående av bokstäver och siffror, samt _. å, ä och ö får inte förekomma. Matlab skiljer på stora och små bokstäver, dvs man kan kalla en variabel för X och en annan för x. Matrisens dimension slås fast i och med att variabeln tilldelas en given matris. Matrisens dimension kan ändras genom att tilldela den ett nytt värde. a = 0.5 definierar en skalär a (=1x1 matris). v = [1 0.5 0] definierar en vektor v (=1x3 matris). A = [1 2 3;4 5 6;7 8 9] definierar en 3x3 matris A.

6 6 Matlab, föreläsning 1 Oktober 4 2007 Grundläggande operationer +, -, *, /, ^ pi, inf, eps sin, cos, tan, exp sqrt, min, max, mean, sum, sort, find, size

7 7 Matlab, föreläsning 1 Oktober 4 2007 En vektor är en lista med tal. Vektorer utgör ett smidigt sätt att lagra flera tal i en variabel. v = [1 2 3 4] Exempel på operationer: length(v) = 4 v(2) = 2 v(3:4) = [3 4] Vektorer som inte är lika långa går inte att addera. Om vi ändå försöker svarar Matlab med ett felmedellande. Vektorer v+2 = [3 4 5 6] 2*(v+1) = [4 6 8 10] v.*v = [1 4 9 16]

8 8 Matlab, föreläsning 1 Oktober 4 2007 Vektorer Ett smidigt sätt att tillverka vektorn v (= [1 2 3 4]) är med följande syntax: v = 1:1:4 eller v = linspace(1,4,4) Vektorn börjar med talet 1, dvs talet före första kolonet. Resterande tal i vektorn fås genom att addera 1, dvs talet mellan kolonen till föregående tal. Detta forstätter tills vi når sista talet, dvs 4. Långa vektorer vill man ofta inte ha utskrivna. Detta slipper man genom att avsluta raden med ett semikolon.

9 9 Matlab, föreläsning 1 Oktober 4 2007 Matriser A = [1 2 3;4 5 6;7 8 9] i Matlab

10 10 Matlab, föreläsning 1 Oktober 4 2007 Matris-operationer Matlab har en mängd inbyggda funktioner som behandlar matriser. T ex: inv(A) det(A) eig(A) transpose(A) eller A'... Det enklaste sättet att lösa ekvationssystem i Matlab är med 'backslash'-operatorn. För att lösa ekvationssystemet där A och b är kända skriv:

11 11 Matlab, föreläsning 1 Oktober 4 2007 Matrismultiplikation / elementvisa operationer a=[1 2 3] b=[1 2 3;3 4 5;5 6 7] matrismultiplikation, ex: elementvisa operationer (.), ex:

12 12 Matlab, föreläsning 1 Oktober 4 2007 Elementvisa operationer Operationen genomförs för varje par av element, ex: om b är en kolumnvektor med N element.

13 13 Matlab, föreläsning 1 Oktober 4 2007 Ekvationssystem

14 14 Matlab, föreläsning 1 Oktober 4 2007 Överbestämda ekvationssystem

15 15 Matlab, föreläsning 1 Oktober 4 2007 Skript-filer I stället för att skriva varje kommando ett och ett i Matlabs kommando-fönster kan man samla alla dessa i en s.k. skriptfil, och sedan exekvera denna fil genom att skriva filens namn vid prompten. Skriptfiler skrivs enklast i Matlabs egen texteditor. Skriptfiler slutar med.m.

16 16 Matlab, föreläsning 1 Oktober 4 2007 if-satser Med en s.k. if-sats kan man kontrollera om ett villkor är uppfyllt eller ej. if end if elseif else end

17 17 Matlab, föreläsning 1 Oktober 4 2007 Exempel på villkor i Matlab

18 18 Matlab, föreläsning 1 Oktober 4 2007 Logiska operatorer i Matlab

19 19 Matlab, föreläsning 1 Oktober 4 2007 Loopar En for-loop används när man vill göra samma sak många gånger. for = end Ett annat sätt att upprepa kod är med en s.k. while-loop. En while-loop upprepar alla rader mellan orden while och end tills det logiska testet efter ordet while blir falskt. while end

20 20 Matlab, föreläsning 1 Oktober 4 2007 Loopar break avbryter den 'innersta' for- eller while-loopen du befinner dig i. for = while if break end

21 21 Matlab, föreläsning 1 Oktober 4 2007 Funktionsfiler function y = enFunktion(a,b) x = 0:0.01:1; y = a*x + b; En funktionsfil tar inget, ett eller flera argument och returnerar inget, ett eller flera svar: Om du vill använda samma variabel i flera funktioner måste du skriva i varje funktion: global var1 var2 Man kan ha nästlade funktioner i hur många nivåer som helst.

22 22 Matlab, föreläsning 1 Oktober 4 2007 Plottning Antag att vi vill rita funktionen f(x)=x 2 på intervallet 0 ≤ x ≤ 1 Öppna en ny figur med figure. För att rita flera grafer i samma figur använd hold on. För att rita flera figurer i samma fönster använd subplot. Skriv förklarande text med xlabel, ylabel, title, legend... alternativt använd menyerna i figuren. x= 0:0.01:1; f = x.^2; plot (x,f)

23 23 Matlab, föreläsning 1 Oktober 4 2007 Tips Använd hjälpen - help kommando eller helpdesk. Skriv kommentarer i era m-filer. Allt efter % är kommentar. Radera alla existerande variabler i Matlab med clear all. Visa alla variabler med whos. Stäng alla figurer med close all. Med piltangenterna kan gamla kommandon bläddras fram och användas igen. Matlab är skrivet för att hantera matriser. På grund av detta är det väldigt ineffektivt att använda snurror. Ofta går det att undvika om man skriver smart, men ibland är man tvungen att använda for eller while.


Ladda ner ppt "1 Matlab, föreläsning 1 Oktober 4 2007 MATLAB Perspektiv på materialdesign Lina Kjellqvist Rum: K324 Telefon: 790 8313."

Liknande presentationer


Google-annonser