Matematisk Modellering

Relevanta dokument
Matematisk Modellering

Matematisk Modellering

Matematisk Modellering

Matematisk Modellering

Beräkningsverktyg HT07

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

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

TANA17 Matematiska beräkningar med Matlab

TSBB14 Laboration: Intro till Matlab 1D

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

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

TAIU07 Matematiska beräkningar med Matlab

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

Mer om funktioner och grafik i Matlab

KPP053, HT2016 MATLAB, Föreläsning 2. Vektorer Matriser Plotta i 2D Teckensträngar

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

Matriser och Inbyggda funktioner i Matlab

Mer om funktioner och grafik i Matlab

Grafritning och Matriser

Matriser och Inbyggda funktioner i Matlab

Datorövning 1 Fördelningar

Introduktion till MATLAB

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

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

Matriser och vektorer i Matlab

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

Datorövning 1 Introduktion till Matlab Fördelningar

MMA132: Laboration 2 Matriser i MATLAB

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

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

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

Matematisk modellering

TEKNISKA HÖGSKOLAN Matematik Fredrik Abrahamsson. Introduktion till MATLAB

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

Datorövning 1: Fördelningar

TAIU07 Matematiska beräkningar med Matlab

MAM283 Introduktion till Matlab

Laboration 3: Stora talens lag, centrala gränsvärdessatsen och enkla punktskattningar

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

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

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

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

MMA132: Laboration 1 Introduktion till MATLAB

TANA17 Matematiska beräkningar med Matlab

Matlabföreläsningen. Lite mer och lite mindre!

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

Beräkningsvetenskap föreläsning 2

Instruktion för laboration 1

Matriser och vektorer i Matlab

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Matriser och linjära ekvationssystem

Linjära ekvationssystem i Matlab

Syftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik

5 Linjär algebra. 5.1 Addition av matriser 5 LINJÄR ALGEBRA

% Föreläsning 4 22/2. clear hold off. % Vi repeterar en liten del av förra föreläsningen:

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

MATLAB Matrix laboratory

MATLAB. Introduktion. Syfte. Tips. Oktober 2009

Mer om linjära ekvationssystem

TMV166 Linjär algebra för M. Datorlaboration 2: Matrisalgebra och en mekanisk tillämpning

Laboration: Grunderna i MATLAB

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

jsp?d=&a=827474&sb2231i0=1_

Linjär algebra. 1 Inledning. 2 Matriser. Analys och Linjär Algebra, del B, K1/Kf1/Bt1. CTH/GU STUDIO 1 TMV036b /2013 Matematiska vetenskaper

Programmering från början

TANA17 Matematiska beräkningar med Matlab

Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 4 december 2015 Sida 1 / 26

4.4. Mera om grafiken i MATLAB

Introduktion till MATLAB Föreläsning 1

Introduktion till MATLAB, med utgångspunkt från Ada

Introduktion till Matlab

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

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

Hemuppgift 1, SF1861 Optimeringslära för T

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

Datatyper i MATLAB Tal

linjära ekvationssystem.

Grunderna i MATLAB. Beräkningsvetenskap och Matlab

Matriser och linjära ekvationssystem

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

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 8 december 2015 Sida 1 / 22

Föreläsning 7. Felrättande koder

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Användarmanual till Maple

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

Matematisk Modellering. Redovisning projekt 2. Redovisning projekt 3. Matlabtenta. Matlabtenta. Matlabtenta. Matlabtenta. Föreläsning 4.

% Föreläsning 3 10/2. clear hold off. % Vi börjar med att titta på kommandot A\Y som löser AX=Y

Programmeringsuppgift Game of Life

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat

4.3. Programmering i MATLAB

Laborationstillfälle 1 Lite mer om Matlab och matematik

TAIU07 Matematiska beräkningar med Matlab

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 3: MULTIPEL REGRESSION.

Presentationsteknik. Om mig. Josef Hallberg Josef Hallberg Doktor i Medieteknik Forskningsintressen:

Koda ett mattetest (lektion 4 av 5)

Konvergens för iterativa metoder

Introduktion till Matlab

Linjär algebra med tillämpningar, lab 1

Transkript:

Matematisk Modellering Föreläsning läsvecka 3 Magnus Oskarsson Matematikcentrum Lunds Universitet Matematisk Modellering p.1/33

Denna föreläsning (läsvecka 3) Kursadministration (hur går projektarbetet?) Matematisk modellering - fördjupning Modelleringsexempel Muntlig presentation Matlab (programmering, matriser, grafik) Matematisk Modellering p.2/33

Matematisk modellering - fördjupning Första föreläsningen och projektet: förenkla Nu även förstå vikten av fördjupning Modellen och analysen/lösningen/implementationen måste hänga samman! Matematisk Modellering p.3/33

Modeller och modellering Varför modeller? Kompakt kunskapsrepresentation Reduktionism Tycho Brahe, Kepler och Newton Kommunikation Utbildning Enklare och säkrare än originalet Nödvändigt om förlagan inte finns ännu Matematisk Modellering p.4/33

Matematiska modeller använder Fysik Matematik Statistik Numerisk analys Datavetenskap Mjukvaruutveckling Reglerteknik Systemteori Matematisk Modellering p.5/33

Drivande krafter Ekonomi och resursoptimering Kvalitets- och prestationskrav Säkerhetskrav Miljökrav Lagar Nya teknologier och möjligheter Matematisk Modellering p.6/33

Användning Förståelse Analys Simulering Optimering av design Reglerteknik Implementation Matematisk Modellering p.7/33

Projekt 1 har gått bra! Projekt 1 Förslag på lösning har jag lagt ut på nätet http://www.maths.lth.se/matematiklth/ personal/magnuso/matmod1/ Matematisk Modellering p.8/33

En statistisk modell Språkmodell En sträng med n tecken. På varje position är sannolikheten för ett visst tecken oberoende av övriga tecken. Sannolikheten för bokstäver skattas ur en text. Matematisk Modellering p.9/33

Språkmodell Språkmodellen är en text Z = (z 1, z 2,..., z n ), där varje tecken z i är slumpmässigt vald ur fördelningen. Exempel: Z = the, P ( the ) = P ( t )P ( h )P ( e ) = 0.10 0.03 0.13 = 0.00039 Matematisk Modellering p.10/33

Språkmodell - kritik Modellen är ganska grov Möjliga förbättringar Betingade sannolikheter, t ex P (z 3 = e z 1 = t, z 2 = h ), bigram, trigram ordlistor grammatik Matematisk Modellering p.11/33

Språkmodell - förbättringar Om man multiplicerar sannolikheter så blir resulaten väldigt små (10 150 ) i exemplet. Bättre att logaritmera log P (Z) = log(p (z 1 )) + log(p (z 2 )) +... + log(p (z n )) Kanske bra att även normera med avseende på textlängden, dvs använda log(p (Z))/n Felkriteriet log(p (Z)) kan förenklas ytterligare för att få snabbare kod. Man kan generera slumpvisa strängar av olika längder för att testa hur bra systemet fungerar. På så viss kan man testa olika modeller. Vilken är effektivast? Matematisk Modellering p.12/33

Muntlig presentation Bestäm vad du vill uppnå Skall åhörarna minnas något? Skall de ha tänkt över en problemställning? Vill du övertyga dem om en ståndpunkt?...sedan är det lättare att planera...och avgöra om du lyckats. Sätt rimliga mål! Matematisk Modellering p.13/33

Muntlig presentation - Åhörarna Åhörares uppmärksamhet varierar Typiskt är man ganska uppmärksam i början och slutet, men har en dipp på mitten. Dessutom tänker man på andra saker lite då och då Börja med helheten Matematisk Modellering p.14/33

Muntlig presentation Det kan vara bra att fånga uppmärksamheten, t ex genom Närhet Igenkänning Personifiering Konsekvenser Börja med helheten. Sammanfatta budskapet i en enda mening. Matematisk Modellering p.15/33

Muntlig presentation - löpsedelsmodellen Är en enkel dispositionsmodell Börja med rubrik, sedan sammanfattning Sedan kan du fördjupa dig i exempel, frågor, mer fördjupning, mer exempel. Detta ger fler möjligheter till frågor Lättare att hitta tillbaks om man tappat tråden Lättare att minnas Lättare att se vad som är centralt Matematisk Modellering p.16/33

Muntlig presentation - Föreläsaren Var engagerad Använd konkret språk, exempel, metaforer. Se folk i ögonen Variera röstläget Naturligt kroppsspråk Åhörarna vill också att det ska gå bra! Matematisk Modellering p.17/33

Muntlig presentation - Nervositet Förbered dig mentalt Jorda dig Tag en kort paus innan du börjar prata Skriv ner inledningsmeningen Titta i början på de som ser snällast ut Öva på din presentation Matematisk Modellering p.18/33

Matlab - repetition har likheter med andra programmeringsspråk har objektorientering (men det går vi inte in på här) kompileras inte Flera nivåer - (interaktivt, skript, funktioner) Matematisk Modellering p.19/33

Matlab - Exempel - primtal Kontrollera om ett tal q är ett primtal Matematisk Modellering p.20/33

Matlab - denna gång Matriser, vektorer, linjär algebra Strängar Grafik mer om skript och funktioner Matematisk Modellering p.21/33

Matlab - matriser Matriser är matlabs standarddatatyp Några operatorer är +, -, *,.*,,., ^,.^,./ För att bygga upp matriser kan man använda ones, zeros, eye, diag Några matrisfunktioner size, length, min, max, sort, sum, cumsum, find, prod, cumprod, diff, reshape, inv, diag Matematisk Modellering p.22/33

Matlab - matriser A = [1 2 3;4 5 6;7 8 9] det(a) Matematisk Modellering p.23/33 Man kan plocka ut ett element med A(1,3) Man kan sätta enskilda element, t ex A(1,3)=12 Man kan ta ut delmatriser med syntaxen A(vektor1,vektor2). Då bildas en matris där man kopierat de rader som finns i vektor1 och de kolumner som finns i vektor2. Vad händer om man skriver A([1 1],[1 2])? Man kan använda kolon för att plocka ut hela rader eller kolumner, tex A(:,1). Man kan ersätta delar av en matris/vektor med ny matris eller vektor. Vad händer om man skriver a = ones(1,10); a(2:2:10)=2*ones(1,5);

Matlab - matriser ones(3,4) - bildar en 3 4 matris med ettor zeros(2,3) - bildar en 2 3 matris med nollor. size(a) - ger storleken på matrisen size(a,1) - ger antalet rader size(a,2) - ger antalet kolonner Matematisk Modellering p.24/33

Matlab - matriser Matlab kan hantera komplexa matriser och vektorer. Observera skillnaden mellan A^2 och A.^2 Matematisk Modellering p.25/33

Matlab - logiska operationer Logiska operationer som <, >, <=, >=, ==, ~=, &,, ~, xor, 1, 0 fungerar elementvis på matriser och vektorer. Funktionen find är användbar för att hitta vilka positioner som är nollskillda. Funktioner som all, any kollar om alla eller någon av elementen är satta. Matematisk Modellering p.26/33

Matlab - matrisfunktioner Många funktioner, t ex sin, cos, exp, log, matriser. fungerar elementvis på Många kraftfulla funktioner som sort, min, max, sum, cumsum, prod, cumprod fungerar på vektorer och matriser. Vissa funktiner, t ex log,, exp går att definiera för matriser (alltså inte elementvis). Det får ni lära er i årskurs 2 i linjär analys. Dessa funktioner är implementerade i matlab logm, sqrtm, expm Fler matrisfunktioner, skriv help elmat, help matfun Matematisk Modellering p.27/33

Matlab - strängar Strängar kan skapas med, t ex s = fred Intern lagras strängen som en vektor med heltalskoden för tecknen. Här är de första 127 tecknen identiska med den så kallade ASCII koden. Man kan konvertera från heltalskod till sträng med v=double(s), s=char(v) Man kan konkatenera (sätta samman) strängar med samma syntax som när man skapar matriser, ex ny = [s och hobbe ] Matematisk Modellering p.28/33

Matlab - strängar Man kan också översätta en sträng som representerar ett tal till dess numeriska värde, t ex s = 102, x = str2num(s), s2 = num2str(x), Vanligt i utskrifter bmi = 22; disp([ Ditt BMI är num2str(bmi) Matematisk Modellering p.29/33

Matlab - strängar Mer funktioner för strängar, se help strfun Funktionen strcmp kan användas för att jämföra strängar. Funktionen eval tar en sträng som inargument och utför strängen tolkat som ett matlabkommando. favoritfunktion = sin ; ettkommando = [favoritfunktion (0.1); ]; disp(ettkommando); eval(ettkommando) Vad hade hänt om man bytt ut sin mot cos? Matematisk Modellering p.30/33

Matlab - grafik Matlab har flera funktioner för grafik. Skriv help plot, help graph2d, help graph3d så får du mer information. Ett användbart kommando är plot som ritar upp ett antal punkter i en graf. En vanlig användning är plot(x,y,plo) där x och y är vektorer med lika många element. Då ritas punkterna (x(1), y(1)),... (x(n), y(n)) upp. Man kan välja fler olika sätt att rita ut punkterna. plot(x,y, b* ) - med blå stjärnor plot(x,y, r- ) - med röda streck mellan dat x = 0:0.1:pi; plot(x,sin(x), b * ); plot(x,sin(x), r - ); Matematisk Modellering p.31/33

Matlab - grafik Andra vanliga plot kommandon är bar(v) % ritar ett stapeldiagram pie(v) % ritar tårtdiagram Matematisk Modellering p.32/33

För 3D grafik finns det Matlab - grafik [x,y]=meshgrid(-pi:0.1:pi,-pi:0.1:pi); t = -pi:0.1:pi; mesh(sin(x+y)); % ritar ett 3d landskap surfl(sin(x+y)); % med belysning imagesc(sin(x+y)); % ritar en matris som en plot3(t,sin(t),cos(t)); % Ritar 3d plot Matematisk Modellering p.33/33