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

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

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

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 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

Mer om funktioner och grafik i Matlab

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: 21:a April klockan

Linjär algebra med tillämpningar, lab 1

Introduktion till MATLAB

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

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

Lösningar kommer att läggas ut på kurshemsidan första arbetsdagen efter tentamenstillfället. Resultat meddelas via epost från LADOK.

Mer om funktioner och grafik i Matlab

Skriv väl, motivera och förklara vad du gör. Betygsgränser: p. ger betyget 3, p. ger betyget 4 och 40 p. eller mer ger betyget

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

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

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

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

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

Matlabövning 1 Funktioner och grafer i Matlab

Laboration: Grunderna i MATLAB

MATLAB. Vad är MATLAB? En kalkylator för linlär algebra. Ett programspråk liknande t.ex Java. Ett grafiskt verktyg.

LAB 4. ORDINÄRA DIFFERENTIALEKVATIONER. 1 Inledning. 2 Eulers metod och Runge-Kuttas metod

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

4 Numerisk integration och av differentialekvationer

Kort om programmering i Matlab

Funktioner och grafritning i Matlab

Introduktion till 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 TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan

KPP053, HT2016 MATLAB, Föreläsning 3. Plotter och diagram Läsa och skriva data till fil

TAIU07 Matematiska beräkningar med Matlab

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

TAIU07 Matematiska beräkningar med Matlab

Språket Python - Del 1 Grundkurs i programmering med Python

Du kan söka hjälp efter innehåll eller efter namn

Grafik och Egna funktioner i Matlab

Laboration: Grunderna i Matlab

Matlabövning 1 Funktioner och grafer i Matlab

Linjära ekvationssystem

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

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

Matlab övningsuppgifter

Funktioner och grafritning i Matlab

Laboration 2 Ordinära differentialekvationer

TAIU07 Matematiska beräkningar med Matlab

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

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

Matriser och Inbyggda funktioner i Matlab

Laborationstillfälle 1 Lite mer om Matlab och matematik

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

TANA17 Matematiska beräkningar med Matlab

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

Geometriska transformationer

Lab 1, Funktioner, funktionsfiler och grafer.

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

Introduktion till Matlab

Matriser. Vektorer. Grunderna i MATLAB 2. Informationsteknologi. Informationsteknologi.

TAIU07 Matematiska beräkningar med Matlab

Kort om programmering i Python

Beräkningsverktyg HT07

Introduktion till Matlab

Parametriserade kurvor

x (t) = 2 1 u = Beräkna riktnings derivatan av f i punkten a i riktningen u, dvs.

TSBB14 Laboration: Intro till Matlab 1D

Matriser och linjära ekvationssystem

Introduktion till Matlab

Ordinära differentialekvationer (ODE) 1 1

Hemuppgift 1, SF1861 Optimeringslära, VT 2017

Matriser och vektorer i Matlab

Datatyper i MATLAB Tal

TEKNISKA HÖGSKOLAN Matematik Fredrik Abrahamsson. Introduktion till MATLAB

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

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

Transformationer i R 2 och R 3

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

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

f(x + h) f(x) h f(x) f(x h) h

MAM283 Introduktion till Matlab

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

TANA81: Simuleringar med Matlab

Matriser och Inbyggda funktioner i Matlab

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

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

Linjära ekvationssystem i Matlab

Mathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x

1.1 MATLABs kommandon för matriser

TANA17 Matematiska beräkningar med Matlab

TMV036 Analys och linjär algebra K Kf Bt, del C

15 februari 2016 Sida 1 / 32

MATLAB - en kompakt introduktion av Tore Gustafsson

Programmeringsuppgift Game of Life

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

Laboration 6. Ordinära differentialekvationer och glesa system

Föreläsningen ger en introduktion till differentialekvationer och behandlar stoff från delkapitel 18.1, 18.3 och 7.9 i Adams. 18.

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

GeoGebra i matematikundervisningen - Inspirationsdagar för gymnasielärare. Karlstads universitet april

Transkript:

Matematik Chalmers tekniska högskola 2014-08-27 kl. 08:30-12:30 Tentamen MVE355, Programmering och numeriska beräkningar med matlab. Ansvarig: Katarina Blom, tel 772 10 97. Plats: L Inga hjälpmedel. Kalkylator ej tillåten. Betygsgränser: 16-23 p. ger betyget 3, 24-31 p. ger betyget 4 och 32 p. eller mer ger betyget 5. Maxpoäng är 40. Lösningar kommer att läggas ut på kurshemsidan första arbetsdagen efter tentamenstillfället. Resultat meddelas via epost från LADOK. 1 I figuren nedan har man ritat f(x) = xsin(x) på intervallet 10 x 10. 8 6 4 2 0 2 4 6 10 8 6 4 2 0 2 4 6 8 10 (a) Skriv en matlabsekvens som genererar en liknande figur som den ovan. (b) Man vill beräkna ett värde på integralen labsekvens: n = 100; a = -1; b = 1; f = @(x)x.*sin(x); x = linspace(a,b,n); h = (b-a)/(n-1); Q1 = sum(h*f(x)); Q2 = sum(h*f(x(1:n-1)); Q3 = sum(h*f(x(2:n)); 1 1 (2p) x sin(x)dx. Betrakta följande mat- (2p) I vilken av summorna Q1, Q2, Q3 har man använt höger rektangelregel för att beräkna integralen ovan? Motivera ditt svar. (c) Som synes i figuren ovan har xsin(x) två max-punkter på intervallet 10 x 10, en nära -8 och en nära 8. Skriv en matlabsekvens som beräknar (3p) ett värde på integralen 0 a xsin(x)dx där a är den vänstra max-punkten (den nära -8).

(d) Skriv en matlabsekvens som, i figuren ovan, fyller området som begränsas av (3p) linjen y = 6, och f(x) = xsin(x) med grön färg. 2 (a) Formulera Eulers metod för lösning av differentialekvationer. (3p) (b) Skriv en matlabsekvens som löser följande begynnelsevärdesproblem { u (t) = 4u(t),t [0,2] u(0) = 1 (4p) Använd Eulers metod med steglängden h = 0.1. (c) Använd ode45 och skriv ett program i Matlab som löser följande begynnelsevärdesproblem u (t) = 4u(t)+4,t [0,2] u(0) = 1 u (0) = 1 (4p) 3 Man vill ha ett matlabprogram som fungerar enligt följande: Programmet ska simulera en hiss i ett hus med 10 våningar (se figuren nedan). Rutorna är våningarna hissen kan åka till. Den ifyllda rutan markerar hissens nuvarande placering (hissen är på första våningen i figuren). Man flyttar hissen till en ny våning genom att klicka (vänsterklicka) med musen på den våning hissen ska åka till. Texten ( 22 våningar ) anger hur många våningar hissen har passerat sedan programmet startade (se (a)-uppgiften nedan). Man avslutar programmet genom att högerklicka i figuren. 10 8 6 4 2 22 våningar 0 6 4 2 0 2 4 6 8 (a) Skriv en funktion (function) som beräknar antalet våningar en hiss har passe- (4p) rat. Låt funktionen ha en inparameter, en vektor, som innehåller vilka våningar hissen har åkt till. Exempel: Antag hissen börjar på våning 1, åker sedan till våning 9, sedan till våning 7 följt av våning 10 så har hissen passerat totalt 9 1 + 7 9 + 10 7 = 13 våningar. (b) Skriv programmet så att det fungerar enligt ovan. Använd funktionen från (a)- (8p) uppgiften i din lösning. 4 Låt A vara en 100 100-matris med heltal och låt x vara en 100 1-vektor. (a) Skriv en sekvens i matlab som bestämmer den kolumn i A som har flest 1:or. (3p) (b) I matlabsekvensen nedan har man beräknat produkten AAx på två olika sätt. (4p) S1 = (A*A)*x; S2 = A*(A*x);

Bestäm ungefär hur många multiplikationer av element som behöver göras då man beräknar S1 respektive S2.

Formelblad Matlab Några matematiska funktioner abs(x) absolutbeloppet av x sqrt(x) kvadratroten ur x exp(x),log(x) exponentialfunktionen och (naturliga) logaritmen av x sin(x), cos(x), tan(x) sinus, cosinus respektive tangens av x round(x), ceil(x), floor(x) avrundar x till närmsta heltal, uppåt respektive nedåt mod(x,y) resten vid heltalsdivisionen x/y Kontrollstrukturer if uttryck while uttryck for i=start:steg:slut elseif uttryck end end else end (else och elseif delen kan utelämnas). Funktioner function ut = funktionsnamn(parameterlista) ut är returvärdet och parameterlista anger inparametrarna. utgör funktionskroppen och funktionsnamn är namnet på funktionen. Anonym funktion: funktionsnamn = @(parameterlista); funktionsnamn är namnet på funktionen, parameterlista anger inparametrarna och består bara av en rad och utgör funktionskroppen. Vektorer och matriser x = A\b löser det linjära ekvationssystemet Ax = b där A är koefficientmatrisen och b är högerledet. rref beräknar radreducerad trappstegsform av en matris. Några funktioner för vektorer och matriser length(x) antal element i x max(x), min(x) största respektive minsta elementen i x find(x) index för nollskilda (true) element. X måste bestå av logiska element sum(x), prod(x) summan respektive produkten av elementen i x mean(x), median(x) medelvärdet, medianvärdet av x [y i]=sort(x) sorterar elementen i x i stigande ordning, (y är den sorterade vektorn och i är indexvektorn). size(a) antal rader och kolumner i matrisen A nnz(a) antal nollskilda element i A diag(a,n) n:e diagonalen i A Några övriga funktioner rand(m,n) ger mxn slumtal i intervallet ]0,1[ randi([a b],m,n) ger mxn slumtal (heltal) i intervallet [a,b] pause(n) pausar programmet i n sekunder.

Figurer figure(n) Figur n blir aktuell. plot(x,y, egenskaper ) ritar elementen i y relativt elementen i x. egenskaper anger hur kurvan ska ritas (tex färg). bar(x,y, egenskaper ) y-värdena som stapeldiagram istöllet för kurva (jämför plot). fill(x,y,f) Färglägger polygonområdet vars hörnpunkter ges av elementen i x och y med färgen f. hold on, hold off Håller kvar/släpper aktuell kurva i aktuell figur. text(x,y, text ) Skriv texten text på position (x,y) i aktuell figur. title( titel ), xlabel( xaxel ), ylabel( yaxel ) Ange titel på aktuell figur och på x-axeln respektive y-axeln. axis([xmin xmax ymin ymax]) ange gränser på x- och y- axel. axis on, axis off Sätter dit/tar bort koordinataxlarna i en figur. imagesc(a) Illustrera elementen i matrisen A. colormap(c) Bestäm färgerna när tex imagesc används. Färgerna anges radvis i C enligt andel rött/grönt/blått. spy(a) Markerar nollskilda element i A i en figur. I/O disp(x) Skriver ut värdet på x fprintf( sträng med formatkoder, variabler) Skriver ut strängen med infogade variabler. Utskriftens utseende bestäms av formatkoder: Tal i exponentform %a.be, tal i decimalform %a.bf, heltal %u (a anger hur många positioner ett tal ska uppta, b anger hur många av de a positionerna som ska vara decimaler). x = input( Text ) Används för att mata in värden på x load fil Skapar en vektor (eller matris) som heter fil med de värden som finns i (text-) filen med namnet fil save variabel Sparar värdet på variabel i en fil som heter varaibel.mat [x y k]=ginput(n) läser in n st musklick i en figur. x och y är positionerna ((x,y)- koordinater) i figuren, k anger vilken musknapp som tryckts ner. Numerisk ekvationslösning fzero(f,x0) returnerar nollställe till funktionen f nära x0 Numerisk integrering quadl(f,a,b) beräknar en approximation till integralen b a f(x)dx. Ordinära differentialekvationer [t,u]=ode45(f,[a b],u0) beräknar en lösning till begynnelsevärdesproblemet { u = f(t,u),a t b u(a) = u0