Instruktion för laboration 1

Relevanta dokument
Instruktion för laboration 1

Laboration: Grunderna i Matlab

Introduktion till Matlab

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

Introduktion till Matlab

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

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

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

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

TAIU07 Matematiska beräkningar med Matlab

Introduktion till MATLAB

TSBB14 Laboration: Intro till Matlab 1D

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 the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

Laboration: Grunderna i MATLAB

Introduktion till Matlab

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

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

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

En introduktion till MatLab

Introduktion till Matlab

Beräkningsverktyg HT07

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

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

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

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

Matriser och vektorer i Matlab

Matriser och vektorer i Matlab

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

MMA132: Laboration 2 Matriser i MATLAB

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

TANA17 Matematiska beräkningar med Matlab

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

TAIU07 Matematiska beräkningar med Matlab

SF1520, Numeriska Metoder och Grundläggande Programmering för K2 Lab1.

Introduktion till Matlab

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

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

Introduktion till Matlab

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

Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.

Mer om funktioner och grafik i Matlab

SF1520, Numeriska Metoder och Grundläggande Programmering för K2 Lab1.

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

Introduktion till Matlab

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

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

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

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

Matlabövning 1 Funktioner och grafer i Matlab

Laboration: Vektorer och matriser

Introduktion till Matlab

Extramaterial till Matematik Y

DN1212/numpp Numeriska metoder och grundläggande programmering Laboration 1 Introduktion

DN1240, Numeriska metoder. Laboration 0 (frivilliga delar) (dvs uppgifterna behöver inte redovisas) Introduktion till UNIX och MATLAB

Introduktion till MATLAB

Matlabövning 1 Funktioner och grafer i Matlab

TANA17 Matematiska beräkningar med Matlab

Numeriska metoder, grundkurs II. Dagens program. Hur skriver man en funktion? Administrativt. Hur var det man gjorde?

kommando -fl argument

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

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

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

Datorövning 1 Fördelningar

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

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

Linjära ekvationssystem i Matlab

HI1024 Programmering, grundkurs TEN

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

STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. Matematisk statistik Anders Björkström

Introduktion till MATLAB Föreläsning 1

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB

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

Matriser och linjära ekvationssystem

Beräkningsvetenskap föreläsning 2

Linjär algebra med tillämpningar, lab 1

MAPLE MIKAEL STENLUND

TANA17 Matematiska beräkningar med Matlab

Extramaterial till Matematik Y

MATLAB övningar, del1 Inledande Matematik

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

Kapitel 15: Data/Matrix Editor

Introduktion till Matlab

Börja programmera. Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner. Läs inte avsnitt 4.2.3

TANA17 Matematiska beräkningar med Matlab

Laboration 0: Del 2. Benjamin Kjellson Introduktion till matriser, vektorer, och ekvationssystem

Laboration 1 - Simplexmetoden och Modellformulering

Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson Plot och rekursion

Datorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv

Miniprojekt: Vattenledningsnäten i Lutorp och Vingby 1

MMA132: Laboration 1 Introduktion till MATLAB

MATLAB 6 i kursen experimentella metoder. Sten Hellman Fysikum Stockholms Universitet

Övningsuppgifter till föreläsning 2 Variabler och uttryck

Datorövning 1: Introduktion till MATLAB

Laboration 1 Introduktion till Visual Basic 6.0

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

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

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Matriser och Inbyggda funktioner i Matlab

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Transkript:

STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. för matematisk statistik MD, ANL, TB (rev. JM, OE) SANNOLIKHETSTEORI I Instruktion för laboration 1 De skriftliga laborationsrapporterna skall vara skrivna så att en läsare allmänt bevandrad i sannolikhetsteori, men inte specifikt i laborationsuppgifterna, kan tillgodogöra sig resultaten. Observera att examinationen av laborationerna också beaktar den skriftliga framställningen förutom att uppgifterna är korrekt lösta. Kort introduktion till Linux Tryck Alt-F2 och skriv konsole. Om du skriver ls och trycker Enter får du en lista på kataloger och filer som ligger i din hemkatalog. Du kan skapa en katalog kallad sanno1 genom att skriva: mkdir sanno1 För att flytta dig till denna katalog, skriv cd sanno1 För att ta dig tillbaka kan du skriva cd.. Om du har rört dig mellan många kataloger fram och tillbaka och har tappat bort dig kan du skriva pwd För att ta dig tillbaka till hemkatalogen skriver du bara cd För att öppna ett program som till exempel Firefox (webbläsare) eller Thunderbird (Epostprogram) skriver du programmets namn. Vi ska i denna laboration använda Matlab, så öppna det genom att skriva matlab & (& gör att du kan använda samma Konsole till att öppna fler program.) Kort introduktion till Matlab Om du har använt Matlab förut kan du hoppa över den här delen. Gå till fönstret Command Window. Här kan man skriva kommandon som man vill ska utföras direkt. Säg att vi vill skapa en parameter p. p = 0.5 1

Observera att Matlab använder decimalpunkt istället för decimalkomma. Om vi vill att programmet inte ska skriva ut värdet på p lägger vi till ett semikolon p = 0.5; och om du vill att datorn skriver ut värdet på p senare så skriver du då p Om man vill att en parameter eller variabel ska vara en funktion av andra variabler går det bra. Exempel: q = 1-p Med om men sedan ger p ett nytt värde så ändras inte q automatiskt. Om man vill att Matlab ska skriva ut text så skriver man disp( min text ) Då man vill köra flera kommandon efter varandra så är det enklast att skriva in dem i en särskild fil, som Matlab sedan kan läsa in och utföra. Du kan använda vilken texteditor som helst för att skriva och redigera din kod, men mest praktiskt är till att börja med att använda Matlabs inbyggda. Öppna en ny fil under File New M-file. Spara den med ett lämpligt namn som skall sluta på.m (undvik att använda åäö i filnamn eller variabelnamn). Prova att skapa en ny m-fil som får heta Testfil.m med följande innehåll: x = 1 + 1; x^2 Se till att Matlab står i samma katalog där du sparade filen. (cd, pwd etc. fungerar även Matlabs Command Window.) Du kör filen genom att i Command Window skriva Testfil Blev resutatet vad du väntade dig? Något som används mycket när man gör beräkningar är s.k. loopar. I en loop upprepas ens kod ett antal gånger fast vi bara skriver ut den en gång. Exempel på en loop: Summa = 0; for i = 1:10 Summa = Summa + 2 Här kommer Matlab att räkna 0 + 2, 2 + 2,..., 18 + 2. En vektor U=(2,3 3,4 10 12) skrivs i Matlab U=[2.3 3.4 10 12]. Hakparenteser fås med tangenterna Alt Gr och 8 respektive 9. En vektor V=[0 1 2 3] kan man skapa genom kommandot V=0:3. Om man vill titta bara på en del av en vektor, till exempel det fjärde elementet i U eller de två första: U(4) U(1:2) 2

Att summera elementen i en vektor gör man mest effektivt genom att använda kommandot sum. Till exempel: sum(u) För att bara summera de första två elementen i U: sum(u(1:2)) Matriser skriver man in så här: W = [1 5; 4 5] Z = [4 4 6; 1 2 0.4] På samma sätt som man kan plocka ut delar av en vektor, kan man plocka ut delar av en matris. Prova W(1,2) W(1,1:2) Z(1:2,1:2) Z(1,:) Z(:,3) Multiplikation och division görs med hjälp av symbolerna * och /. Matlab uppfattar alltid * som matrismultiplikation. Prova t.ex. W*Z. Z*W fungerar inte eftersom Z är en 2 3-matris medan W är en 2 2-matris. För att transponera en matris Z skriver man Z. Z *W skall nu fungera. Om man sätter en punkt framför * och / så sker multiplikationen resp. divisionen elementvis. Prova t.ex. U.*V och U./V Det är mycket praktiskt att skriva kommentarer i sin kod så man kommer ihåg vad den handlar om. Kommentarer skriver man efter %, exempel: vektorn = zeros(1,5) % Skapar en matris med en rad och fem kolumner % som bara består av nollor for k = 1:5 vektorn(k) = k^3; % Element nr k ska vara lika med k^3 för k = 1,...,5 För den här laborationen kan det vara bra att veta att binomialkoefficienten ( n r) heter nchoosek(n,r). Om man vill veta mer om en funktion i Matlab så kan man skriva t.ex. help nchoosek eller help sum. Slutligen tar man bort en variabel så här: clear U tar bort variabeln U, och kommandot clear tar bort alla sparade variabler. Det kan vara bra att börja ditt program med det så att inte några gamla värden på variablerna påverkar din beräkning. 3

Spelet Keno Spelet Keno går till så här: Totalt finns 70 nummer (1 70) att välja på. Svenska Spel kommer att dra 20 nummer av dessa. Den som spelar ska (i förväg) försöka pricka in så många av dessa 20 som möjligt. Spelaren kan välja att totalt gissa mellan 1 och 11 nummer. Väljer han att gissa bara på ett nummer så kallas det Keno 1, gissar han på två nummer kallas det för Keno 2, osv. Denna laboration kommer att handla om Keno 11, dvs spelaren väljer 11 nummer och hoppas att Svenska Spel ska dra så många av dem som möjligt bland de 20 nummer de drar. Utdrag ur vinstplanen på Svenska Spels hemsida: Keno Antal rätt Vinst Genomsnittlig vinstchans Keno 4 160 kr 3 10 kr Keno 4 2 5 kr 1 0 kr 0 0 kr 1 på 3,1 Keno Antal rätt Vinst Genomsnittlig vinstchans Keno 11 5 000 000 kr 10 125 000 kr 9 3 000 kr 8 300 kr 7 30 kr 6 10 kr Keno 11 5 5 kr 4 0 kr 3 0 kr 2 0 kr 1 0 kr 0 0 kr 1 på 6,2 Redovisning av laborationen Svara på nedanståe uppgifter med hjälp av koden på följande sida. Räkna ut sannolikheten att få 0, 1, 2,..., 11 rätt på Keno 11. Kontrollera att summan av sannolikheterna blir ett! Gör ett diagram över sannolikheterna för olika antal rätt. Beräkna totala vinstsannolikheten, dvs chansen att överhuvud taget vinna något (0 kr = ingen vinst), och jämför med vad Svenska Spel påstår. 4

Kod till Keno 4 Vi ska nedan genomföra labben för Keno 4 men du ska göra den för Keno 11 (du måste alltså anpassa koden till Keno 11). Vid p(i+1) =... ska du skriva in ett eget uttryck (på föreläsningen ges uttrycket för Keno 4). % Laboration 1 % Uppgift 1 clear K = 4; % Keno 4 p = zeros(1,k+1); % Vi gör detta så att p ska ha rätt storlek. % p är en vektor som skall innehålla sannolik- % heterna för 0,1,...,K rätt, dvs K+1 tal. % OBS: p(1) kommer att vara sannolikheten för % noll rätt, p(2) sannolikheten för ett rätt, osv. for i = 0:K p(i+1) =... % p(i+1) är sannolikheten att få i rätt. disp( LABORATION 1 ) disp( Vinstsannolikheter ) p % Detta är alla sannolikheterna. sum(p) % Detta bör vara lika med ett. % Uppgift 2 x = 0:K; plot(x,p, *r ) % Kolla med help plot hur kommandot funkar title( Keno 4 )% om du vill ha en annan stil på plotten. xlabel( Antal rätt ) ylabel( Sannolikhet ) % Uppgift 3 disp( Jämförelse med Svenska spel ) Vinstsannolikhet = sum(p(3:k+1)) disp( Vinstsannolikhet enligt Svenska Spel är 1/3,1 ) 1/3.1 % Slut 5