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: 8p av totalt 20p Tid: 21:a April klockan

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

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

TANA17 Matematiska beräkningar med Matlab

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

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: 8p av totalt 20p Tid: 18:e augusti klockan

TANA17 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab

2 februari 2016 Sida 1 / 23

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

Introduktion till MATLAB

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

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. 20 november 2015 Sida 1 / 30

TAIU07 Matematiska beräkningar med Matlab

MMA132: Laboration 2 Matriser i MATLAB

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

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

TANA17 Matematiska beräkningar med Matlab

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

Ickelinjära ekvationer

TANA17 Matematiska beräkningar med Matlab

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

4.3. Programmering i MATLAB

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

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

TANA17 Matematiska beräkningar med Matlab

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

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

TANA81: Simuleringar med Matlab

MMA132: Laboration 1 Introduktion till MATLAB

Labb 3: Ekvationslösning med Matlab (v2)

Matlabövning 1 Funktioner och grafer i Matlab

Block 5: Ickelineära. ekvationer? Läroboken. Löpsedel: Icke-lineära. ekvationer. Vad visade laborationen? Vad visade laborationen?

MMA132: Laboration 1 & 2 Introduktion till MATLAB

LABORATION cos (3x 2 ) dx I =

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

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

Laboration: Grunderna i MATLAB

TMV225 Inledande Matematik M

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

Matlabövning 1 Funktioner och grafer 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

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

TAIU07 Matematiska beräkningar med Matlab

15 februari 2016 Sida 1 / 32

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Facit Tentamen i Beräkningsvetenskap I (1TD393) STS ES W K1

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

Introduktion till Matlab

TANA17 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab

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

TMV156/TMV155E Inledande matematik E, 2009

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

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

Linjärisering och Newtons metod

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

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

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

Introduktion till Matlab

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

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

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

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

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

Talmängder. Målet med första föreläsningen:

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

Laborationstillfälle 1 Lite mer om Matlab och matematik

Newtons metod och arsenik på lekplatser

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

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

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

x) 3 = 0. 1 (1 + 2x) Bestäm alla reella tal x som uppfyller att 0 x 2π och att tangenten till kurvan y = sin(cos(x)) är parallell med x-axeln.

SF1624 Algebra och geometri Lösningsförslag med bedömningskriterier till kontrollskrivning 2 Måndagen den 24 september, 2012

Inbyggda funktioner i MATLAB

Tentamen i matematik. f(x) = 1 + e x.

Talmängder N = {0,1,2,3,...} C = {a+bi : a,b R}

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

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

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

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

) + γy = 0, y(0) = 1,

Mer om funktioner och grafik i Matlab

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

Uppgift 1 ( Betyg 3 uppgift )

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

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

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

Tentamen för kursen TME135 Programmering i Matlab för M1

Transkript:

TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 8-12, 19:e Mars, 2019 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 Fredrik Berntsson (telefon 282860) Besök av jourhavande lärare sker ungefär 14.45 och 16.45. 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 kontrollera om en vektor x ast innehåller positiva tal. function [test] = Positiv(x) for i=1:length(x) if x(i)>0 test=1; else test=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) = 2e 2x sin(πx) 2 x/2, på intervallet 0 x 1, och undersöka var dess nollställe 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 tillsammans med funktionen abs för att hitta det värde i f vektorn med minst absolutbelopp. Detta approximerar funktionens nollställe. Hitta även motsvarande x-värde. c) Markera punkten (x noll,f noll ) du hittat i b) i den graf du ritat upp i a) med ett rött +. (3p) 3: Normen av en vektor beräknas enligt formeln x 2 = x 2 1 +x 2 2 +...+x 2 n, där n är vektorns längd. a) Skriv en Matlabfunktion MinNorm med en vektor x som inparameter och resultatet av normberäkningen som utparameter. b) Skapa de två vektorerna x = (0,2, 3,6) T och y = ( 1,2,6) T i Matlab och använd funktionen MinNorm för att beräkna deras normer. Tips I Matlab finns en inbyggd funktion norm som utför 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. 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 är diagonaldominant om det, för varje rad, gäller att a ii j i a ij, i = 1,2,...,n. Dessutom skall strikt olikhet( dvs <) gälla för minst en rad. Skriv en funktion DiagDom med en matris A som inparameter, och en logisk variabel som utparameter. Funktionen skall kontrollera om matrisen är diagonaldominant och returnera sant eller falskt. Använd funktionen för att testa om matrisen 3 1 2 A = 1 2 1 0 2 2 är diagonaldominant eller inte. 4

Lösningsförslag till tentan 19:e Mars 2019. 1: Problemet är att ast sista testen räknas. Enklast är att avbryta om ett negativt tal hittas. (2p) 1: Följande funktion är tänkt att kontrollera om en vektor x ast innehåller positiva tal. function [test] = Positiv(x) for i=1:length(x) if x(i)>0 test=1;break; else test=0; 2: a) Vi skapar vektorn, beräknar funktionsvärden, och plottar med kommandona >> N=50; x=(0:n-1)/(n-1); >> f=2*exp(-2*x)-sin(pi*x).^2-x.^2; >> plot(x,f) b+c) Vi hittar minsta beloppet med kommandot 3: a) Funktionen blir b) Vi får >> [m,k]=min(abs(f));disp(m),disp(x(k)) % m=0.0118 och x=0.3673 >> hold on,plot( x(k),f(k), r+ );,hold off function [S]=MinNorm( x ) S=0; for i=1:length(x) S=S+x(i)^2; ; S=sqrt(S); >> MinNorm([0,2,-3,6] ) 7 >> MinNorm([-1,2,6] ) 6.4031 5

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: Vi löser uppgiften genom att skriva >> f=@(t) 2*exp(-t/2); >> integral( f,0,0.6) 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) 0.5754 Testar vi så blir integral(f,0,0.5754) väldigt nära 1. 6: Funktionen blir function [Test]=DiagDom(A) [n,m]=size(a); EnStrikt=0; AllaRader=1; for i=1:n S=sum(abs(A(i,:)); % räknar även med diagonalelementet. if 2*abs(A(i,i)) > S, AllaRader=0;, if 2*abs(A(i,i)) < S, EnStrikt=0;,break;, Test = AllaRader & EnStrikt; ; Använder vi den på matrisen fås 6

>> A=[ 3 1 2 ; 1 2-1 ; 0 2 2]: >> Test = DiagDom( A ) Test = 0 alltså är inte matrisen diagonaldominant. 7