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

Relevanta dokument
TANA19 NUMERISKA METODER

a = a a a a a a ± ± ± ±500

Gruppuppgifter 1 MMA132, Numeriska metoder, distans

2 Matrisfaktorisering och lösning till ekvationssystem

7 november 2014 Sida 1 / 21

5B1147. Envariabelanalys. MATLAB Laboration. Laboration 1. Gränsvärden och Summor

Datoraritmetik. Från labben. Från labben. Några exempel

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

Komplettering till kursboken i Numeriska beräkningar. 1 Beräkningsfelsanalys. 1.1 Uttryck med kancellation

LAB 3. INTERPOLATION. 1 Inledning. 2 Interpolation med polynom. 3 Splineinterpolation. 1.1 Innehåll. 3.1 Problembeskrivning

Sidor i boken f(x) = a x 2 +b x+c

Fel- och störningsanalys

n Kap 4.1, 4.2, (4.3), 4.4, 4.5 n Numerisk beräkning av derivata med n Felen kan t ex vara avrundningsfel eller mätfel n Felet kan mätas

Teknisk Beräkningsvetenskap I Tema 1: Avrundning och populationsmodellering

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

Kontrollskrivning KS1T

Fel- och störningsanalys

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

4. Bestäm eventuella extrempunkter, inflexionspunkter samt horisontella och vertikala asymptoter till y = 1 x 1 + x, och rita funktionens graf.

Introduktion till MATLAB

4 Fler deriveringsregler

Fixpunktsiteration. Kapitel Fixpunktsekvation. 1. f(x) = x = g(x).

Moment 1.15, 2.1, 2.4 Viktiga exempel 2.2, 2.3, 2.4 Övningsuppgifter Ö2.2ab, Ö2.3. Polynomekvationer. p 2 (x) = x 7 +1.

Lösandet av ekvationer utgör ett centralt område inom matematiken, kanske främst den tillämpade.

Komposanter, koordinater och vektorlängd Ja, den här teorin gick vi igenom igår. Istället koncentrerar vi oss på träning inför KS3 och tentamen.

Envariabelanalys 5B1147 MATLAB-laboration Derivator

Lab 1, Funktioner, funktionsfiler och grafer.

e x x + lnx 5x 3 4e x (0.4) x 0 e 2x 1 a) lim (0.3) b) lim ( 1 ) k. (0.3) c) lim 2. a) Lös ekvationen e x = 0.

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Anteckningar för kursen "Analys i en Variabel"

Laboration 3. Funktioner, vektorer, integraler och felskattning

Polynomekvationer. p 2 (x) = x x 3 +2x 10 = 0

6 Derivata och grafer

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

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

Laboration: Grunderna i Matlab

vux GeoGebraexempel 3b/3c Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

Planering för kurs C i Matematik

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

Matematik 1. Maplelaboration 1.

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

En vanlig uppgift är att bestämma max resp min för en trigonometrisk funktion och de x- värden för vilka dessa antas.

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

TANA17 Matematiska beräkningar med Matlab

Ekvationer & Funktioner Ekvationer

MMA132: Laboration 2 Matriser i MATLAB

SF1625 Envariabelanalys Lösningsförslag till tentamen

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

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

5B1134 Matematik och modeller Lösningsförslag till tentamen den 11 oktober 2004

Polynomekvationer. p 2 (x) = x x 3 +2x 10 = 0

1 Föreläsning 12, Taylors formel, och att approximera en funktion med ett polynom

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

Sammanfattninga av kursens block inför tentan

Labb 3: Ekvationslösning med Matlab (v2)

Kan du det här? o o. o o o o. Derivera potensfunktioner, exponentialfunktioner och summor av funktioner. Använda dig av derivatan i problemlösning.

f(x) = x 2 g(x) = x3 100

Interpolation Modellfunktioner som satisfierar givna punkter

f (a) sin

10x 3 4x 2 + x. 4. Bestäm eventuella extrempunkter, inflexionspunkter samt horizontella och vertikala asymptoter. y = x 1 x + 1

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Lösa ekvationer på olika sätt

Institutionen för Matematik, KTH Lösningar till tentamen i Analys i en variabel för I och K (SF1644) 1/ e x h. (sin x) 2 1 cos x.

2D1240 Numeriska metoder gk II för T2, VT Störningsanalys

MATEMATIK Datum: Tid: eftermiddag Hjälpmedel: inga. Mobiltelefoner är förbjudna. A.Heintz Telefonvakt: Tim Cardilin Tel.

Intervallhalveringsmetoden, GKN sid 73. Sekantmetoden, GKN sid 79

Laboration 3. Funktioner, vektorer, integraler och felskattning

Vi ska titta närmare på några potensfunktioner och skaffa oss en idé om hur deras kurvor ser ut. Vi har tidigare sett grafen till f(x) = 1 x.

SF Numeriska metoder, grundkurs Föreläsning 5: Felanalys, felkalkyl och kondition KTH - SCI

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

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

TANA19 NUMERISKA METODER

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

13 Potensfunktioner. Vi ska titta närmare på några potensfunktioner och skaffa oss en idé om hur deras kurvor ser ut. Vi har tidigare sett grafen till

vux GeoGebraexempel 1b/1c Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker

Prov 1 2. Ellips 12 Numeriska och algebraiska metoder lösningar till övningsproven uppdaterad a) i) Nollställen för polynomet 2x 2 3x 1:

5B1134 Matematik och modeller Lösningsförslag till tentamen den 29 augusti 2005

TANA17 Matematiska beräkningar med Matlab

x sin(x 2 )dx I 1 = x arctan xdx I 2 = x (x + 1)(x 2 2x + 1) dx

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

TAIU07 Matematiska beräkningar med Matlab

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

Instuderingsfrågor i Funktionsteori

5B1134 Matematik och modeller

Repetitionsuppgifter i Matematik inför Basår. Matematiska institutionen Linköpings universitet 2014

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

Lösningar och kommentarer till uppgifter i 3.1

Lösningsförslag till Tentamen i SF1602 för CFATE 1 den 20 december 2008 kl 8-13

Introduktion till Matlab

TDDC74 Programmering, abstraktion och modellering DUGGA 1

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

Lösningar och kommentarer till uppgifter i 1.1

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

MAA7 Derivatan. 2. Funktionens egenskaper. 2.1 Repetition av grundbegerepp

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

Tentamen i Envariabelanalys 2

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

Lab 2, Funktioner, funktionsfiler och grafer.

Transkript:

TANA21+22/ 5 juli 2016 LAB 1. FELANALYS 1 Inledning I laborationerna används matrishanteringsprogrammet MATLAB. som genomgående använder dubbel precision vid beräkningarna. 1.1 Innehåll Du ska 1. bestämma den avrundningsenhet, µ, som MATLAB använder (dubbel precision). 2. bestämma största och minsta tal som kan lagras. 3. studera hur beräkningsfelen påverkar resultaten i olika situationer. 4. använda MATLAB:s grafik för att illustrera. 5. tolka praktiska resultat och göra jämförelser mellan teori och praktik. 2 Flyttal Ett binärt (basen b = 2) flyttal representeras som en följd av nollor och ettor i ett s.k. ord. I MATLAB används 64 binära positioner (dubbel precision) för att lagra ett flyttal. Exponentdelens storlek bestämmer hur stort talområde som kan användas. Alla tal större än ett visst tal lagras som inf medan tal vars absolutbelopp är mindre än ett visst tal sätts till noll. Taldelens storlek bestämmer vilken noggrannhet som kan erhållas. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M Ettpositivtbinärtflyttal,x,kanskrivassomx = m 2 exp,därmärtaldelenoch1 m < 2. Om t bitar används för att lagra taldelens bråkdel blir övre gränsen för relativa felet vid flyttalslagring av talet x x x ε M 2 = µ = 0.5 2 t. Eftersom endast ett begränsat utrymme finns för att lagra taldelen blir 1 + x = 1 vid flyttalslagring om x är alltför litet. I IEEE-standarden, som används av MATLAB, gäller att 1+x = 1, för alla x µ. Detta kan användas för att praktiskt bestämma µ. Uppgift 2.1 Bestämning av t och µ Beräkna a = 1+0.5 2 n. Pröva med olika positiva heltal n mellan 50 och 60 och bestäm det minsta n för vilket a = 1 (enbart 1 skrivs ut). Så länge a > 1 skrivs det avrundade värdet ut (exempelvis 1.0000). Ange t, som är det minsta n för vilket a = 1? t = Räkna ut värdet på avrundningsenheten µ. µ = 1

Uppgift 2.2 Bestämning av antal signifikanta siffror för ett flyttal Bestäm en gräns för beloppet av absoluta felet vid lagring av talen b = e 30 ( i MATLAB: b=exp(30) ) och c = 0.13 18. Utnyttja att övre gränsen för relativa felet är µ. Ange värden på b och c med felgränser. b = c = Hur många korrekta decimaler 1 har närmevärdena till b respektive c? För b gäller: för c gäller: Hur många signifikanta siffror 1 har närmevärdena till b respektive c? För b gäller: för c gäller: Hur många decimala signifikanta siffror 2 får man ungefär för ett godtyckligt flyttal i MATLAB? Observera att antalet signifikanta siffror är 0.3 t + 1. Stämmer detta med vad du erhöll för b och c? Uppgift 2.3 Bestämning av det största flyttal som kan lagras Studera a = 1.99999 2 n, där n är ett positivt heltal. Bestäm det största n, som ger ett värde på a. Ange i decimal form ett ungefärligt värde på det största talet som kan lagras. Uppgift 2.4 Bestämning av det minsta positiva tal som kan lagras Bestäm på motsvarande sätt det minsta positiva tal som kan lagras genom att beräkna a = 2 n. 1 Använd regeln i rutan på sid 13 i Eldén/Wittmeyer-Koch. 2 Se tumregeln i slutet på kap 2.5 i Eldén/Wittmeyer-Koch 2

3 Andragradsekvationer Rötterna till ekvationen ax 2 +bx+c = 0 ges av följande uttryck x 1 = b+ b 2 4ac 2a, x 2 = b b 2 4ac. 2a Uppgift 3.1 MATLAB-körning Använd format long e, som skriver ut 16 siffror. Låt a = 1.1 och c = 0.7 hela tiden medan vi ska använda två olika värden på b (se tabellen). Ge a, c och b värden, räkna sedan ut x 1 och x 2 med formeln. Bestäm också de exakta värdena på rötterna med hjälp av MATLAB-funktionen roots som anropas med roots([a,b,c]) Fyll i antalet signifikanta siffror i tabellen nedan. Det fungerar om ni tittar på hur många siffror som överensstämmer. Antal sign. siffror Antal sign. siffror b i x 1 i x 2 8.48 10 5 8.48 10 7 (i MATLAB: b=8.48e5) Uppgift 3.2 Tolkning av resultaten Vilken rot (x 1 eller x 2 ) får dålig noggrannhet? Förklara varför just den roten får dålig noggrannhet. Förklara varför problemet med dålig noggrannhet ökar när beloppet av b blir större. Uppgift 3.3 Alternativ formel Ta fram en alternativ formel för att beräkna rötterna (se boken, sid 20). Uppgift 3.4 MATLAB-resultat med den alternativa formeln Räkna ut båda rötterna med den nya formeln och fyll i tabellen: Antal sign. siffror Antal sign. siffror b i x 1 i x 2 8.48 10 5 8.48 10 7 Vilken rot får sämst resultat i detta fall? Jämför med körningen i Uppgift 3.1 och förklara skillnaden. 3

4 Praktisk beräkning av ett gränsvärde Vi ska studera f(x) = 1 cosx x 2. Om vi Maclaurin-utvecklar cosx och sätter in i f(x) erhålls g(x) = 1 2! x2 4! + x4 6!. Uppgift 4.1 Gränsvärdet Bestäm gränsvärdet för f(x) då x 0. lim x 0 f(x) = Uppgift 4.2 MATLAB-beräkningar Vi ska räkna ut f(x) för x = 1,10 1,10 2,...,10 16, för att se om de praktiskt bestämda f(x)-värdena närmar sig gränsvärdet när x minskar. Skriv i MATLAB: (eller i en skript-fil) format long e ställer om utskriftsformatet. x=logspace(0,-16,17) ger de önskade x-värdena. x=x(:) ger en kolumnvektor. f=(1-cos(x))./x.^2./ och.^ gör elementvis division resp upphöjt till. [x f f-gränsvärdet ] genererar en tabell. format ställer tillbaks utskriftsformatet. Svara på följande frågor: För vilket x hamnade vi närmast gränsvärdet? Hur stor är avvikelsen från gränsvärdet i detta fall? Uppgift 4.3 Illustrationer Vi vill studera lite noggrannare hur nära gränsvärdet vi kan komma och ska därför rita f(x) i intervallet x [3 10 5,10 3 ] ( x=linspace(3e-5,1e-3,2000); ). Bestäm sedan f för dessa x-värden och plotta: plot(x,f) (Utnyttja tidigare MATLAB-kommandon som kan plockas fram genom att skriva första tecknet/tecknen (tex f) och uppåt-pil. Skriv semikolon efter uttrycket, så undertrycks utskriften.) Tyvärr kan vi inte, med hjälp av skalan på y-axeln, se hur nära gränsvärdet vi har hamnat. Rita därför en bild av felfunktionen ( fel=abs(f-gränsvärdet) ). Ta ut en papperskopia av felkurvan eller gör en skiss. Följ topparna på felkurvan och rita för hand en kurva som ligger precis ovanför värdena. Studera den och ange minsta felgräns och motsvarande x-värde= x opt. Minsta felgräns x opt 4

Uppgift 4.4 Tolkning av resultatet Felet vi ser är summan av två fel: trunkeringsfelet, R T, eftersom vi bara tar första termen i serien, och felet från beräkningarna, R B. R T kan uppskattas med beloppet av den andra termen i g(x). Om vi endast tar hänsyn till hur felet från beräkningen av cosx fortplantas, kan vi cosx µ uppskatta (hur?) R B < x 2 µ < x 2. Identifiera R T och R B i felkurvan. Markera i figuren ungefär för vilka x som R T resp. R B dominerar. Beräkna också det teoretiska totalfelet i x opt, dvs bestäm R TOT (x opt ) < R T (x opt ) + R B (x opt ). R TOT (x opt ) < + Jämför det teoretiska och det praktiskt avlästa värdet på R TOT (x opt ). Verkar resultatet rimligt? Motivera svaret! 5