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

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

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

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

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

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

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

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

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

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

TANA17 Matematiska beräkningar med Matlab

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

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

TANA17 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med 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:

Introduktion till MATLAB

TANA17 Matematiska beräkningar med Matlab

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

TANA17 Matematiska beräkningar med Matlab

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

TAIU07 Matematiska beräkningar med Matlab

2 februari 2016 Sida 1 / 23

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

TAIU07 Matematiska beräkningar med Matlab

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

Laboration: Grunderna i MATLAB

TANA17 Matematiska beräkningar med Matlab

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

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,

TANA17 Matematiska beräkningar med Matlab

MMA132: Laboration 1 Introduktion till MATLAB

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

Mer om funktioner och grafik i Matlab

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

Tillämpning: Bildinterpolation. Ekvationslösning. Integraler. Tillämpning: En båt. Räkning med polynom. Projekt. Tentamensinformation.

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

Labb 3: Ekvationslösning med Matlab (v2)

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

Introduktion till Matlab

Beräkningsverktyg HT07

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

TMV225 Inledande Matematik M

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

Instruktion för laboration 1

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

MMA132: Laboration 1 & 2 Introduktion till MATLAB

Kort om programmering i Matlab

TAIU07 Matematiska beräkningar med Matlab

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

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

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

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

Ickelinjära ekvationer

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

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

MMA132: Laboration 2 Matriser i MATLAB

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

Lab 1, Funktioner, funktionsfiler och grafer.

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

Matriser och Inbyggda funktioner i Matlab

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

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

2. (a) Skissa grafen till funktionen f(x) = e x 2 x. Ange eventuella extremvärden, inflektionspunkter

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

TANA81: Simuleringar med Matlab

15 februari 2016 Sida 1 / 32

Introduktion till Matlab

Matriser och Inbyggda funktioner i Matlab

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

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

Newtons metod. 1 Inledning. CTH/GU LABORATION 3 MVE /2014 Matematiska vetenskaper

Envariabelanalys 5B1147 MATLAB-laboration Derivator

Introduktion till Matlab

Laborationstillfälle 1 Lite mer om Matlab och matematik

Matlabövning 1 Funktioner och grafer i Matlab

Matlabövning 1 Funktioner och grafer i Matlab

4.3. Programmering i MATLAB

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

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

En introduktion till MatLab

Lösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp,

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

Newtons metod och arsenik på lekplatser

Konvergens för iterativa metoder

Matriser och linjära ekvationssystem

MATLAB handbok Introduktion

Demonstration av laboration 2, SF1901

TSBB14 Laboration: Intro till Matlab 1D

TMV156/TMV155E Inledande matematik E, 2009

Lab 2, Funktioner, funktionsfiler och grafer.

Lösningsförslag till inlämningsuppgift 3 i Beräkningsprogrammering Problem 1) function condtest format compact format long

Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

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

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

Miniprojekt: Vattenledningsnäten i Lutorp och Vingby 1

LABORATION 2. Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering

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

Programmering i Matlab

Transkript:

MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab. Då du har en färdig lösning skriv då ner de kommandon du använde på papper. Redovisa även eventuella resultat du fick då körde dina Matlab kommadon. Grafer behöver inte redovisas. (2p) 1: Använd kolon-notation för att skapa en vektor som innehåller talen 1,2,3,...,9,10. Använd sedan elementvisa operationer och kommandot sum för att beräkna summan 10 S = k 2 k. (2p) 2: Använd polyfit för att anpassa ett andragradspolynom till följande tabell k=1 x 0 0.5 1.0 1.3 1.7 y 1.3 1.8 1.5 1.1 0.5 Plotta polynomet på intervallet 0 x 2 som en blå heldragen linje. Rita även in punkterna (x i,y i ) i samma graf med röda x. (1p) 3: Låt matrisen A vara A = 1 2 2 3 2 1 2 1 3 Matrisens determinant kan beräknas med hjälp av funktionen det. Skapa först matrisen A och beräkna både (det(a)) 1 och det(a 1 ) för att verifiera den välbekanta räkneregeln. Redovisa resultatet. Stämmer räkneregeln? (2p) 4: Följande kommandon är tänkta att kontrollera ifall en vektor är sorterad i stigande ordning: for i=2:length(x) if x(i)>x(i-1) Stigande=1; Stigande=0;

Förklara vad som går fel och gör de ändringar som krävs för att programmet skall fungera som det är tänkt. (2p) 5: Låt A vara en matris av storlek n m. Skriv ett Matlabscript som använder forloopar för att beräkna antalet positiva tal i matrisen. Testa ditt program på matrisen 1 1 0 3 A = 3 2 1 0. 2 1 3 1 (2p) 6: Då man samlar in mätresultat är man ofta intresserade av att uppskatta hur stor variationen i mätningarna är. Ett sådant mått är standardavvikn. Den definieras som ( ) 1/2 1 n σ = (x i m) 2. n 1 där m är medelvärdet i=1 m = 1 n n x i. Skriv en funktion StandardAvvik med en vektor x inparametrar och med σ som utparameter. i=1 Testa funktionen för att beräkna standard avvikn för vektornx = (2, 1, 3, 2, 2, 1) T. OBS I Matlab finns en inbyggd funktion std som kan utföra precis denna beräkning. Du kan använda den för att kontrollera att du gjort rätt men får inte utnyttja den för att lösa uppgiften. (3p) 7: En rot till ekvationen f(x) = xe x 1 = 0 kan hittas genom att beräkna gränsvärdet för talföljden, { x0 = 1, x n = e x n 1, n = 1,2,3... Skriv ett program som beräknar talföljdens gränsvärde. Du skall fortsätta att bilda nya tal x n ända tills avbrottskriteriet x n x n 1 < 10 4 är uppfyllt. Vi vill även studera konvergenshastigheten. Ditt program skall därför skriva en tabell innehållande iterationsnummer n, x n, samt skillnaden x n x n 1 till skärmen. Utskriften skall göras enligt följande mönster: n x(n) x(n)-x(n-1) --------------------------------------- 1 0.3678794-6.32e-01 2 0.6922006 3.24e-01 3 0.5004735-1.92e-01 (2p) 8: Vi vill undersöka funktionen f(x) = cos(x)e 2x 2x, 0 x 1. 2

a) Rita en graf över funktionen f(x) på intervallet 0 x 1. b) Vi ser att ekvationen f(x) = 0 har en rot nära x = 0.3. För att kunna hitta roten skall du skriva en Matlab funktionfunk med en vektorxsom inparameter som beräknar en vektor y med motsvarande funktionsvärden. Din funktion skall vara skriven på ett sådant sätt att det går att beräkna roten med kommandot >> x = fzero( funk, 0.3 ) (4p) 9: Du skall skriva en funktion som för ett godtyckligt udda värde N 3, skriver ut en kvadrat med ett mönster beståe av omväxlande asterixer och minustecken till en fil kvadrat.txt. Mönstret som skall skrivas ut skall bildas enligt mönstren i nedanståe exempel. För N = 9 skall filen kvadrat.txt innehålla ********* *-------* *-*****-* *-*---*-* *-*-*-*-* *-*---*-* *-*****-* *-------* ********* och för fallet N=13 skall resultatet vara ************* *-----------* *-*********-* *-*-------*-* *-*-*****-*-* *-*-*---*-*-* *-*-*-*-*-*-* *-*-*---*-*-* *-*-*****-*-* *-*-------*-* *-*********-* *-----------* ************* 3

Lösningsförslag till tentan för TANA17 Januari 2017. 1: Vi beräknar summans värde med kommandona >> k=1:10; >> S=sum( k.^2-k ) S = 330 2: Vi använder kommandona >> x=[0 0.5 1.0 1.3 1.7];y=[ 1.3 1.8 1.5 1.1 0.5]; >> p2 = polyfit(x,y,2); >> xx=0:0.1:2; >> plot( xx,polyval( p2, xx ), b- ) >> hold on >> plot( x,y, rx ) >> hold off Vi ser att linjen ligger nära punkterna. 3: Bilda matrisen och utförberäkningarna med >> A=[ 1-2 2 ; 3 2-1 ; 2-1 3]; >> 1/det(A) ans = 0.0769 >> det(inv(a)) ans = 0.0769 Räkneregeln stämmer. 4: Problemet är att ast sista kontrollen räknas. Enklaste lösningen är att avbryta då vi hittar två element som inte ligger i stigande ordning med break. Vi får for i=2:length(x) if x(i)>x(i-1) Stigande=1; Stigande=0; break Det finns flera alternativa lösningar som ger enklare kod. Exempelvis 4

Stigande=1; for i=2:length(x) if x(i) < x(i-1) % Vänt på jämförn! Stigande=0; break 5: Vi bildar matrisen och beräknar antalet positiva element med A=[ 1-1 0 3 ; -3 2 1 0 ; 2-1 3-1]; [n,m]=size(a); S=0; for i=1:n for j=1:m if A(i,j)>0, S=S+1; disp(s) vilket ger värdet S = 6. 6: Funktionen blir function [S]=StandardAvvik(x) n=length(x); m=mean(x); for i=1:n S=S+( x(i)-m )^2; S=S/(n-1); vilket ger >> StadardAvvik( [2 1 3 2 2 1] ) ans = 0.7528 7: På filen hittarot.m skriver vi % Inför variabler x0 och x1 som representerar två på varandra % följande approximationer x0=-1;x1=1;n=0; % Med x0=-1 blir abvrottsvikkloret falskt tol=10^-4; fprintf(1, n x(n) x(n)-x(n-1)\n ); 5

fprintf(1, -----------------------------------\n ); while abs(x0-x1)>tol % beränka nästa approximation x0=x1; x1=exp(-x0); n=n+1; % Skriv ut en rad i tabellen fprintf(1, %i %9.7f %9.2e\n,n,x1,x1-x0); 8: Foljande kommandon plottar grafen >> x=0:0.01:1; >> f=cos(x).*exp(-2*x)-2*x; >> plot( x, f ; På filen funk.m skriver vi sedan function y=funk(x) y=cos(x).*exp(-2*x)-2*x; I Matlab kan vi sedan beräkna roten med 9: Funktionen blir: >> x=fzero( funk,0.3) x = 0.2766 function kvadrat(n); fid=fopen( matris.txt, w ); for i=1:n,row(i)= * ;,; fprintf(fid,[row, \n ]); for i=2:(n-1)/2+1 for j=i:n-i+1 if row(j)== * row(j)= - ; row(j)= * ; ; ; fprintf(fid,[row, \n ]); 6

; for i=(n-1)/2+1:-1:2 for j=i:n-i+1 if row(j)== * row(j)= - ; row(j)= * ; ; ; fprintf(fid,[row, \n ]); ; fclose(fid); 7