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

Relevanta dokument
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

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

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

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

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 Tid: 14:e januari klockan

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

TANA17 Matematiska beräkningar med Matlab

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

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

TAIU07 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab

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

TAIU07 Matematiska beräkningar med Matlab

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

Introduktion till MATLAB

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

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

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

TANA17 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:

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

2 februari 2016 Sida 1 / 23

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

MMA132: Laboration 1 & 2 Introduktion till MATLAB

Preliminärt lösningsförslag till del I, v1.0

MMA132: Laboration 2 Matriser i MATLAB

MMA132: Laboration 1 Introduktion till MATLAB

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

TANA17 Matematiska beräkningar med Matlab

TANA81: Simuleringar med Matlab

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

TMV156/TMV155E Inledande matematik E, 2009

Matlabövning 1 Funktioner och grafer i Matlab

TANA17 Matematiska beräkningar med Matlab

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

15 februari 2016 Sida 1 / 32

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

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

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

Matlabövning 1 Funktioner och grafer i Matlab

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

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

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

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

TMV225 Inledande Matematik M

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

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

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

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

TANA17 Matematiska beräkningar med Matlab

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

Laboration: Grunderna i MATLAB

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

Akademin för utbildning, kultur och kommunikation MMA132 Numeriska Metoder Avdelningen för tillämpad matematik Datum: 2 juni 2014

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

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

Labb 3: Ekvationslösning med Matlab (v2)

TAIU07 Matematiska beräkningar med Matlab

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

Mer om funktioner och grafik i Matlab

Frågorna 1 till 6 ska svaras med sant eller falskt och ger vardera 1

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

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

Tentamen i matematik. f(x) = ln(ln(x)),

Ickelinjära ekvationer

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik Lösningsförslag till del I

HI1024 Programmering, grundkurs TEN

Matematisk Modellering

f(x) = x 2 g(x) = x3 100 h(x) = x 4 x x 2 x 3 100

4.3. Programmering i MATLAB

Chalmers tekniska högskola Datum: kl Telefonvakt: Christoffer Standar LMA033a Matematik BI

Ansvariga lärare: Yury Shestopalov, rum 3A313, tel (a) Problem 1. Använd Eulers metod II (tre steg) och lös begynnelsevärdesproblemet

FÖRSÄTTSBLAD TILL TENTAMEN. ELLER (fyll bara i om du saknar tentamenskod): Datum: 16 januari Bordsnummer:

Lab 1, Funktioner, funktionsfiler och grafer.

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

När man vill definiera en matris i MATLAB kan man skriva på flera olika sätt.

Tentamen, del 2 DN1240 Numeriska metoder gk II för F

Lösningsförslag, preliminär version 0.1, 23 januari 2018

Datorövning 1 Fördelningar

1 Förberedelser. 2 Att starta MATLAB, användning av befintliga m-filer. 3 Geometriskt fördelad avkomma

Uppgift 1 ( Betyg 3 uppgift )

Förkortning och förlängning av rationella uttryck (s. 29 Origo 3b)

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

För teknologer inskrivna H06 eller tidigare. Skriv GAMMAL på omslaget till din anomyna tentamen så att jag kan sortera ut de gamla teknologerna.

LABORATION cos (3x 2 ) dx I =

Newtons metod. 1 Inledning. 2 Newtons metod. CTH/GU LABORATION 6 MVE /2013 Matematiska vetenskaper

TSBB14 Laboration: Intro till Matlab 1D

Polynomanpassningsprogram

v0.2, Högskolan i Skövde Tentamen i matematik

Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik

Tentamen, del 2 Lösningar DN1240 Numeriska metoder gk II F och CL

5B1134 Matematik och modeller Lösningsförslag till tentamen den 13 januari T = 1 ab sin γ. b sin β = , 956 0, 695 0, 891

Newtons metod och arsenik på lekplatser

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

Transkript:

TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 13:e Mars, 2018 Provkod: TEN1 Hjälpmedel: Inga. Examinator: Fredrik Berntsson Maximalt antal poäng: 18 poäng. För godkänt krävs 8 poäng. Jourhavandelärare Fatemeh Ghasemi (telefon 282657) och Nils Hassan Quttineh (telefon 282185) Besök av jourhavande lärare sker ungefär 15.15 och 16.45. Lösningsförslag finns på kurshemsidan efter tentans slut. Lycka till!

Redovisning Lös först uppgifterna i Matlab. När du har en färdig lösning skriv ner de kommandon du använde på papper. Redovisa även eventuella resultat då du körde dina Matlabkommadon. Grafer behöver inte redovisas. (2p) 1: Följande funktion är tänkt att skapa tre slumpmässiga heltal och sedan kontrollera om alla är lika: function t = draw() d1=randi([1 6],1); d2=randi([1 6],1); d3=randi([1 6],1); if d1 == d2 == d3 t=1; else t=0; Förklara tydligt vad som går fel och gör lämpliga ändringar så att funktionen ger förväntat resultat. (3p) 2: Vi vill studera funktionen f(x) = cos(2 x)+x 2, på intervallet 0 x 1, och undersöka var dess maximum inträffar. a) Skapa en vektor x som innehåller N = 50 jämt utspridda tal på intervallet [0, 1]. Beräkna även en vektor f med motsvarande funktionsvärden och utnyttja dessa vektorer för att plotta funktionen på aktuellt intervall. b) Använd Matlabkommandot min för att hitta det minsta värdet i vektorn f. Detta approximerar funktionens minsta värde på intervallet. Hitta även det x-värde där funktionen antar sitt minsta värde. c) Markera punkten (x min,f min ) du hittat i b) i den graf du ritat upp i a) med ett rött x. (3p) 3: Skapa ett tredjegradspolynom p(x) med rötter x 1 = 0.3, x 2 = 1.5 och x 3 = 2.9 genom att använda polyfit för att hitta det polynom av grad 3 som interpolerar tabellen x 0 0.3 1.5 2.9 y 1.0 0.0 0.0 0.0 Plotta även polynomet på intervallet 0 x 3 som en blå heldragen linje och rita in punkterna (x i,y i ) i samma graf med röda x så att det tydligt syns att polynomet får rätt rötter. 2

(3p) 4: Talföljden 6 12 7 14 9 18 13... fås genom att omväxlande multiplicera med 2 och subtrahera med 5. En sådan talföljd är växande om den startar med 6 eller ett större tal. Skriv ett Matlab program som, givet ett startvärde, beräknar antalet tal i följden som är mindre än 1000. Gör en utskrift enligt mönstret: 2*10=20 20-5=15 2*15=30 30-5=25 : 2*325=650 650-5=645 2*645=1290 Antalet tal mindre än 1000 är 16 där startvärdet är 10. Du behöver inte tänka på att ditt program skall ge vettiga resultat för de fall då talföljden inte blir växande. Tips Utskriften kan göras med hjälp av att kombinera num2str med textbitar. Sista raden kan exempelvis skapas med >> disp([ Antalet tal mindre än 1000 är,num2str(n)]) (3p) 5: Vi vill lösa en ekvation Gör därför följande: g(x) = 1 x 0 f(t)dt = 0, där f(t) = 2exp( t/2). a) Skapa ett funktionshandtag som motsvarar funktionen f(t) ovan. Funktionshandtaget skall klara att t är en vektor. b) Använd funktionen integral för att beräkna 0.6 0 f(t)dt, Är x 0 = 0.6 en bra uppskattning av roten x till ekvationen ovan? c) Skapa ett funktionshandtag som beräknar funktionen g(x) för ett givet värde x. Använd även kommandot fzero, och start gissningen x 0 = 0.6, för att hitta roten till ekvationen g(x) = 0. 3

(4p) 6: En matris sägs vara diagonaldominant om n j=1,j i a ij a ii, i=1,2,...,n, med sträng olikhet för åtminstone ett i. Skriv en funktion DiagonalDominant med en matris A som inparameter som retunerar sant (dvs 1) om A är diagonaldominant, och falskt (dvs 0) annars. Du skall kunna anropa din funktion som >> A = [ 3 1 0 ; 1 2 1 ; 0 0 1 ] >> DiagonalDominant( A ) ans = 1 där funktionen alltså returnerar 1 då matrisen i detta fallet är diagonaldominant. 4

Lösningsförslag till tentan 13:e Mars 2018. 1: Problemet är att jämförelser måste utföras på två av talen i taget. Vi gör två jämförelser och kombinerar med &. function t = draw() d1=randi([1 6],1); d2=randi([1 6],1); d3=randi([1 6],1); if ( d1 == d2 ) & ( d2 == d3 ) t=1; else t=0; 2: a) Vi skapar vektorn, beräknar funktionsvärden, och plottar med kommandona >> N=50; x=linspace(0,1,n); >> f=cos(2*sqrt(x))+x.^2; >> plot(x,f) b+c) Vi hittar minimum med kommandot 3: Programmet blir >> [m,k]=min(f);disp(m),disp(x(k)) >> hold on,plot( x(k),f(k), rx );,hold off >> x=[0 0.3 1.5 2.9]; >> y=[1 0 0 0]; >> p=polyfit(x,y,3); >> p=polyfit(x,y,3); >> xx=0:0.01:3; >> plot(xx,polyval(p,xx)) >> hold on, plot(x,y, rx ),hold off 4: Programmet blir x=10;n=1; while x<1000 disp([ 2*,num2str(x), =,num2str(2*x)]) x=x*2;n=n+1; if x>1000, break, disp([num2str(x), -5=,num2str(x-5)]) x=x-5;n=n+1; disp([ Antalet tal mindre än 1000 är,num2str(n)]) 5

5: Vi löser uppgiften genom att skriva >> f=@(t) 2*exp(-t/2); >> integral( f,0,0.6) ans = 1.0367 Alltså är x 0 = 0.6 en bra uppskattning då g(0,6) 0.0367. skapa nu handtaget för g(x) och lös ekvationen >> g=@(x) 1 - integral(f,0,x); >> fzero(g,0.6) ans = 0.5754 Testar vi så blir integral(f,0,0.5754) väldigt nära 1. 6: På filen DiagonalDominant.m skriver vi function [D]=DiagonalDominant( A ) [n,m]=size(a); EnStrikt=0; % Sann om vi hittat en strikt olikhet AllaSanna=1; % Sätt till falsk ifall vi hittar en ogiltig olikhet for i=1:n % beräkna summan över raden S=0; for j=1:m, S=S+abs(A(i,j));, if S>2*abs(A(i,i)), % diagonal elementet ingår i S AllaSanna=0; break if S<2*abs(A(i,i)) % hittat en strikt olikhet EnStrikt=1; if EnStrikt & AllaSanna % Alt D = EnStrikt & AllaSanna; D=1; else D=0; 6