Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Relevanta dokument
Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Innehåll. Vad är MATLAB? Vad är MATLAB? Informationsteknologi. Grunderna i MATLAB. Informationsteknologi. Informationsteknologi. Vad är MATLAB?

Beräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Användningsområden. Vad är MATLAB? Grunderna i Matlab. Beräkningsvetenskap == Matlab?

Vad är MATLAB? Vad är MATLAB? Vad är MATLAB? Användningsområden. Att börja använda MATLAB. Informationsteknologi. Grunderna i MATLAB

Vad är MATLAB? Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Beräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Vad är MATLAB? Användningsområden. Informationsteknologi. Grunderna i MATLAB

MATLAB Matrix laboratory

Grunderna i MATLAB. Beräkningsvetenskap och Matlab

Beräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Vad är MATLAB? Användningsområden. Informationsteknologi. Informationsteknologi

Grunderna i MATLAB. Beräkningsvetenskap och Matlab

Matriser. Vektorer. Grunderna i MATLAB 2. Informationsteknologi. Informationsteknologi.

Vad är MATLAB? Användningsområden. Var kan man köra MATLAB? MATLAB-miljön: avsluta. MATLAB-miljön: Start. Informationsteknologi. Grunderna i MATLAB

Grunderna i MATLAB. Beräkningsvetenskap och Matlab

Matriser. Vektorer. Forts. Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Laboration: Grunderna i MATLAB

Laboration: Grunderna i Matlab

Introduktion till Matlab

Introduktion till Matlab

Introduktion till Matlab

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

Introduktion till Matlab

Introduktion till Matlab

Datorövning 1: Introduktion till MATLAB

Introduktion till Matlab

TEKNISKA HÖGSKOLAN Matematik Fredrik Abrahamsson. Introduktion till MATLAB

TSBB14 Laboration: Intro till Matlab 1D

Introduktion till MATLAB

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Introduktion till Matlab

Introduktion till Matlab

Introduktion till Matlab

Introduktion till Matlab Föreläsning 1. Ingenjörsvetenskap

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

MATLAB övningar, del1 Inledande Matematik

Datorövning 1 Fördelningar

Introduktion till Matlab

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Introduktion till MATLAB Föreläsning 1

Beräkningsverktyg HT07

Introduktion till Matlab

Exempel att testa. Stora problem och m-filer. Grundläggande programmering 4. Informationsteknologi. Informationsteknologi.

En introduktion till MatLab

SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 Sida 1 / 23

Instruktion för laboration 1

Laboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08

Linjär algebra med tillämpningar, lab 1

TANA17 Matematiska beräkningar med Matlab

Lägg märke till skillnaden, man ser det tydligare om man ritar kurvorna.

Department of Physics Umeå University 27 augusti Matlab för Nybörjare. Charlie Pelland

Datorövning 1: Fördelningar

Matematisk Modellering

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26

MATLAB. Vad är MATLAB? En kalkylator för linlär algebra. Ett programspråk liknande t.ex Java. Ett grafiskt verktyg.

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

TAIU07 Matematiska beräkningar med Matlab

Laborationstillfälle 1 Lite mer om Matlab och matematik

SF1672, Linjär Algebra med Matlab för F1 Lab0

Introduktion & MATLABrepetition. (Kap. 1 2 i MATLAB Programming for Engineers, S. Chapman)

Matematisk Modellering

Introduktion till MATLAB

Liten MATLAB introduktion

Kapitel 4. Programmet MATLAB

TSKS08 Introduktionskurs i Matlab Föreläsning 2

DN1212, Numeriska metoder & grundläggande programmering. Laboration 1 del 1-3 (frivilliga delar) Del 1-3 (dvs upg ) behöver inte redovisas

At=A' % ' transponerar en matris, dvs. kastar om rader och kolonner U' % Radvektorn U ger en kolonnvektor

MMA132: Laboration 2 Matriser i MATLAB

Matriser och Inbyggda funktioner i Matlab

MATLAB handbok Introduktion

ATT RITA GRAFER MED KOMMANDOT "PLOT"

MAPLE MIKAEL STENLUND

Instruktion för laboration 1

MATLAB. En kort praktisk introduktion. Olof Hultin FAFA Omarbetad efter original av Henrik Persson

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan

Matlabövning 1 Funktioner och grafer i Matlab

Datorövning 1 Introduktion till Matlab Fördelningar

Laboration 1: Linjär algebra

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 27 oktober 2015 Sida 1 / 31

M0043M Integralkalkyl och Linjär Algebra, H14, Matlab, Föreläsning 1

Motivering för programmering. F1: Introduktion, Matlabrepetition (kap. 1 2) Att kunna programmera. Interpreterat/kompilerat

Introduktion till Matlab Föreläsning 2

(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan.

Detta dokument skall ge en kortfattad introduktion till Jasmine installationen vid DSV.

Du kan söka hjälp efter innehåll eller efter namn

Matematisk Modellering

CTH/GU LABORATION 1 MVE /2013 Matematiska vetenskaper. Mer om grafritning

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

Matriser och Inbyggda funktioner i Matlab

Mer om funktioner och grafik i Matlab

OBS! Snabbinsatt Matlab-intro vissa fönsterhanteringsdetaljer kan vara fel men gör gärna Matlab-uppgifterna. DN1240, Numeriska metoder för OPEN1.

Grafritning och Matriser

Matlabövning 1 Funktioner och grafer i Matlab

Lab 1, Funktioner, funktionsfiler och grafer.

Sanningar om programmering

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

SF1546, Numeriska Metoder för O1 Lab0 - frivillig. (dvs uppgifterna behöver inte redovisas!)

MATLAB-modulen Programmering i MATLAB. Höstterminen hp. Vad är MATLAB

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 1: TIDSSERIER.

Grundläggande kommandon

Transkript:

Grunderna i MATLAB stefan@it.uu.se Innehåll Vad är MATLAB? Användningsområden MATLAB-miljön Variabler i MATLAB Funktioner i MATLAB Exempel och smakprov: Grafik Beräkningar Bilder GUI Vad är MATLAB? Utvecklat av MathWorks, Inc. http://www.mathworks.com Första versionen klar i slutet av 70-talet Matematisk labbmiljö för Numeriska beräkningar Grafik Programmering En enkel miljö för att snabbt testa idéer och för att studera resultat 1

Vad är MATLAB? Avancerat interaktivt mjukvarupaket för beräkningar och visualiseringar. Ursprungligen MATrix LABoratory. Många kraftfulla fördefinierade funktioner med möjlighet att definiera egna. Eget objektorienterat programmeringsspråk. Samverkan med C, C++, Java och FORTRAN möjlig. Vad är MATLAB? Över 25 tilläggsprogram (toolboxar) finns för speciella tillämpningsområden, t ex: signalbehandling bildbehandling statistik symbolisk matematik finansiell matematik Körs under UNIX/Linux, Windows eller Macintosh. Var kan man köra MATLAB? MATLAB finns i datorsalor på Polacksbacken och på IBG Kan köpa speciell student-cd som, kostar ca 500 kr. Köps på IT-stöd (hus 3, Polacksbacken) 2

Användningsområden Överallt där det förekommer beräkningsproblem! Undervisning: matematik, särskilt linjär algebra, beräkningsvetenskap, fysik, kemi, teknik, ekonomi, etc. Forskning: tekniska beräkningar, algoritmutveckling, analys av metoder och visualisering av resultat. Industrin: signalbehandling, bildbehandling, reglerteknik, optimering, simulering m.fl. Användningsområden MATLAB kan användas interaktivt som en avancerad räknedosa (kalkylator). Enkelt! MATLAB kan också användas som ett programmeringsspråk på ett mer avancerat sätt. MATLAB kommer att användas mer avancerat i kursen Beräkningsvetenskap I (period 23) MATLAB-miljön: Start Utvecklingsmiljön (MATLAB desktop) har ett flertal verktyg, t ex kommandofönstret Här är kommandofönstret 3

MATLAB-miljön: kommandon MATLAB styrs vanligen från kommandofönstret (Command Window). Kommandon ges efter»-promptern och utförs när return-tangenten tryckts ned. Exempel: >> 42 + 19 ans = 61 MATLAB-miljön: interaktiv I kommandofönstret kan man arbeta interaktivt som en avancerad miniräknare. Semikolon undertrycker utskrift. Om inget variabelnamn anges läggs variabeln i ans (=answer) >> a = 75 a = 75 >> b = 34; >> c = a*b c = 2550 >> a+b ans = 109 MATLAB-miljön: avsluta MATLAB avslutas genom att man antingen ger kommandot quit eller exit >> exit väljer Exit MATLAB i File-menyn 4

MATLAB-miljön: hjälp Hjälp fås via MATLAB help i menyn Help Klicka t ex på MATLAB documentation MATLAB-miljön: hjälp Hjälp för enstaka kommandon kan göras direkt i kommandofönstret >> help kommando Exempel Vad gör kommandot exit? >> help exit EXIT Exit from MATLAB. EXIT terminates MATLAB. Matlab-miljön: demonstration Demonstration av MATLABs olika kommandon och tillämpningsområden fås genom att Ge kommandot demo >> demo Välja Demos i menyn Help Testa t ex Graphics -> 2D-plots Graphics -> 3D-plots More examples -> 3d drawing 5

Variabler i MATLAB En variabel i MATLAB har alltid ett namn (måste börja på bokstav) kan ses som behållare som innehåller ett värde av en viss typ (heltal, rella tal, text, ) kan tilldelas ett värde skapas när de behövs, utan speciell deklaration (är av typen matris ). kan vara fördefinierad (t ex pi) >> a = 3 a = 3 >> pi ans = 3.1416 Variabler i MATLAB Variabler i MATLAB visas i delfönstret Workspace Om inte workspace syns markera workspace i menyn View Workspace Variabler i MATLAB Kan listas med kommando who, whos >> who Your variables are: a ans >> whos Name Size Bytes Class a 1x1 8 double array ans 1x1 8 double array Grand total is 2 elements using 16 bytes whos ger samma information som workspace 6

Variabler i MATLAB kan skrivas ut i olika format, sparas och laddas upp >> format long >> pi ans = 3.14159265358979 >> format long e >> pi >> 3.141592653589793e+000 >> format short e >> pi ans = 3.1416e+000 Observera att noggrannheten i pi är lika, det är bara utskriftsformatet som ändras. Funktioner: fördefinierade Det finns mängder av fördefinierade funktioner, t ex för elementär matematik linjär algebra grafik i 2D och 3D integraler och differentialekvationer statistik Kurvanpassning Exempel: abs(x), sqrt(x), sin(x), log(x), log10(x), Funktioner: egendefinierade Man kan också skapa egna funktioner...mer om detta i kursen Beräkningsvetenskap I 7

Vektorer MATLAB arbetar på vektorer och matriser vektor är en följd av tal, t ex 1 3 5 7 9 en vektor är en typ av matris, t ex matris med 1 rad och 5 kolonner (1x5-matris) ett enskilt tal, en skalär betraktas som en 1x1-matris Matriser/vektorer skapas med hakparantes >> v1 = [1 3 5 7] v1 = 1 3 5 7 Vektorer Radbyte i en matris/vektor görs med kolon >> v2 = [1;3;5;7] v2 = 1 3 5 7 Alla funktioner i MATLAB arbetar på vektorer >> sin(v1) ans = 0.8415 0.1411-0.9589 0.6570 Vektorer Finns också speciella funktioner för att skapa vektorer >> x = 1:2:7 x = 1 3 5 7 >> x = 1:7 x = 1 2 3 4 5 6 7 Detsamma som >> x = 1:1:7 från 1 till 7 med steglängd 2 från 1 till 7 med steglängd 1 8

Vektorer En annan funktion är linspace >> x = linspace(1,7,5) x = från 1 till 7 med steglängd 2 1.0000 2.5000 4.0000 5.5000 7.0000 från 1 till 7 i 5 steg Vektorer kan alltså skapas genom x = linspace(x0,x1,antal_pkt); eller x = x0:steglangd:x1; Komplexa tal Komplexa tal kan skapas med complex >> z = complex(1.2, 2.5) z = 1.2000 + 2.5000i eller i en beräkning >> z = sqrt(-2) z = 0 + 1.4142i Komplexa tal Givetvis fungerar vektorer >> z = complex([1.2 3],[-1 2.5]) z = 1.2000-1.0000i -3.0000 + 2.5000i Speciella funktioner real(z) ger realdelen av z imag(z) ger imaginärdelen av z conj(z) konjugatet till z abs(z) - absolutbeloppet av z angle(z)- fasvinkeln i radianer 9

Några små tips Piltangent återkallar tidigare kommando pl återkallar senaste kommando vars namn började med pl (plot t ex) Man behöver sällan (aldrig?) skriva om samma kommando igen om man vill göra en liten modifiering Några små tips kan också använda delfönstret command history. öppnas under menyn View Dubbelklicka på ett kommando för att upprepa drag och släpp kommandon från command history till kommandofönstret Command history Några små tips ctrl-c avbryter körningen av ett kommando (men stoppar inte MATLAB) diary kan användas för att spara skärmutskrifter i en fil >> diary uppg1.txt Allt som skrivs på skärmen hamnar nu i filen uppg1.txt >> diary off % stänger diary Lämpligt att använda för att redovisa körexempel i inlämningsuppgifterna 10

Enkel grafik (2D) Gången när en graf ska ritas är Skapa en horisontell axel (t ex x-axel) Beräkna funktionsvärden (y-axel) Plotta x mot y, plot(x,y) >> x = linspace(0,2*pi,50); >> y = cos(x)+sin(x); >> plot(x,y) Enkel grafik (2D) x-axel skapas genom x = linspace(x0,x1,antal_pkt); eller x = x0:steglangd:x1; Plotkommandot kan utvidgas på många olika sätt, t ex >> plot(x,cos(x), -,x,sin(x), o ) Enkel grafik (2D) Namnge axlar med xlabel resp ylabel och sätt titel med title >> x = linspace(0,2*pi,50); >> y = cos(x)+sin(x); >> plot(x,y) >> xlabel( x ); >> ylabel( y ); >> title( Min figur );...ger resultatet 11

Enkel grafik (2D) xlabel xlabel xlabel Enkel grafik (2D) Kan ändra i plot interaktivt genom att markera Edit Plot under menyn Tools Kan sedan dubbelklicka på linjer, axlar, titel etc och ändra egenskaper Spara kod i M-filer En kommandofil är ett sätt att lagra kommandon som annars skulle skrivas interaktivt i kommandofönstret Genom att köra filen så exekveras (utförs) alla kommandon i filen och resultat visas i kommandofönstret (eller grafikfönstret) Ändelse på kommandofil måste vara.m, t ex minfil.m OBS! Fördel att lagra kod i fil vid inlämningsuppgifter. Filen (=koden) kan ju då redovisas. 12

Spara kod i M-filer M-filer skapas enklast i MATLABs editor skriv edit i kommandofönstret eller använd menyn File: File -> New -> M-file Ett nytt fönster med en editor öppnas där man kan skriva in sin kod Spara kod i M-filer Matlabs editor Skriv in koden precis på samma sätt som i kommandofönstret Spara kod i M-filer Spara filen! Viktigt att ha kontroll på i vilken katalog m-filen sparas Enklast är att se till att man befinner sig i den katalog man vill befinna sig i genom (Current Directory) i MATLABs huvudfönster. För att gå till annan katalog klicka på -knappen 13

Spara kod i M-filer Kör koden, dvs utför de kommandon som skrivits in genom ett av alternativen i kommandofönstret, skriva filnamnet utan ändelse (.m) >> MinFil kör koden i filen MinFil.m i editorn, klicka på -knappen Spara kod i M-filer Ett litet exempel MATLABs editor öppnas och följande kod skrivs in % Lisas ritprogram, LisasFil.m x0 = 0; x1 = 2*pi; n = 100; x = linspace(x0, x1, n); y = sin(x); plot(x,y); Spara kod i M-filer Spara koden och skriv i kommandofönstret >> LisasFil Koden körs då och ger resultatet 14

Grafik i 3D, några smakprov Funktioner av två variabler kan visualiseras på många olika sätt mesh(x,y,z) Grafik i 3D, några smakprov surf(x,y,z) Grafik I 3D, några smakprov contour(x,y,z) 15

Grafik: strömlinjer, smakprov Grafik: film och bildspel, smakprov Oscillerande klockkurva Bildbehandling, smakprov 16

MATLAB-exempel Visualisera redan beräknade data, exempel från aerodynamik, rymdfärja med chockvågor 17