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

Relevanta dokument
LABORATION cos (3x 2 ) dx I =

Laboration 3. Funktioner, vektorer, integraler och felskattning

Laboration 3. Funktioner, vektorer, integraler och felskattning

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

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

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

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

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

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

Icke-linjära ekvationer

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Konvergens för iterativa metoder

Sammanfattning (Nummedelen)

2D1240 Numeriska metoder gk2 för F2 Integraler, ekvationssystem, differentialekvationer

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

Kurs DN1215, Laboration 3 (Del 1): Randvärdesproblem för ordinära differentialekvationer

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

Icke-linjära ekvationer

Ickelinjära ekvationer

Teorifrågor. 6. Beräkna konditionstalet för en diagonalmatris med diagonalelementen 2/k, k = 1,2,...,20.

Föreläsning 1. Numeriska metoder grundkurs II, DN1240. Carina Edlund Mottagningstid i rum 4516: onsdagar kl.

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

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

Beräkning av integraler

SF1625 Envariabelanalys Lösningsförslag till tentamen

KTH 2D1240 OPEN vt 06 p. 1 (5) J.Oppelstrup

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

Del I: Lösningsförslag till Numerisk analys,

Sammanfattninga av kursens block inför tentan

Numeriska metoder för fysiker Lördag , kl 10-14

2D1240, Numeriska metoder gk2 för F2 och CL2 MATLAB-introduktion, minstakvadratmetoden, differensapproximationer,

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

Omtentamen i DV & TDV

Laboration 1. x = 1±0.01, y = 2±0.05. a) Teoretiskt med hjälp av felfortplantningsformeln (Taylor-utveckling).

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 2

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Fredag 26 augusti 2005 TID:

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

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:

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

TAIU07 Matematiska beräkningar med Matlab

Labb 3: Ekvationslösning med Matlab (v2)

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

DN1212 Numeriska Metoder och Grundläggande Programmering DN1214 Numeriska Metoder för S Lördag , kl 9-12

SF1664 Tillämpad envariabelanalys med numeriska metoder Lösningsförslag till tentamen DEL A

Laboration 2. Laborationen löses i grupper om två och redovisas individuellt genom en lappskrivning den 3/10. x = 1±0.01, y = 2±0.05.

Inbyggda funktioner i MATLAB

Newtons metod och arsenik på lekplatser

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Från förra gången: Newton-Raphsons metod

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Uppgift 1 R-S. Uppgift 2 R-M. Namn:...

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

Teknisk Beräkningsvetenskap I Tema 3: Styvhetsmodellering av mjuk mark med icke-linjära ekvationer

Tentamen i Beräkningsvetenskap I (1TD393)

ALA-a Innehåll RÄKNEÖVNING VECKA 7. 1 Lite teori Kapitel Kapitel Kapitel Kapitel 14...

Intervallhalveringsmetoden, GKN sid 73. Sekantmetoden, GKN sid 79

Gruppuppgifter 1 MMA132, Numeriska metoder, distans

Matematik: Beräkningsmatematik (91-97,5 hp)

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

Kontrollskrivning KS1T

Laboration 1. 1 Matlab-repetition. 2 Störningsräkning 1. 3 Störningsräkning 2

Linjärisering och Newtons metod

Laboration 3. Ergodicitet, symplektiska scheman och Monte Carlo-integration

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Laboration 1. Ekvationslösning

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

Lösningar tentamen i kurs 2D1210,

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

Numerisk Analys, MMG410. Lecture 10. 1/17

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

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

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

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

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

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

Varning!!! Varning!!!

Introduktion till MATLAB

Lösningsförslag till tentamensskrivningen i Numerisk analys

2D1210, Numeriska Metoder, GK I för V 2.

ELLER (fyll bara i om du saknar tentamenskod): Datum: 32 maj Bordsnummer: Kontrollera att du fått rätt tentamensuppgifter

DN1212 för M: Projektrapport. Krimskramsbollen. av Ninni Carlsund

Ordinära differentialekvationer,

MAPLE MIKAEL STENLUND

SF1669 Matematisk och numerisk analys II Lösningsförslag till modelltentamen DEL A

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

TATA42: Föreläsning 3 Restterm på Lagranges form

f (a) sin

Laboration 6. Ordinära differentialekvationer och glesa system

TMA226 datorlaboration

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

Kort sammanfattning av Beräkningsvetenskap I. Varning!!! Varning!!!

OH till Föreläsning 15, Numme K2, God programmeringsteknik

FMNF15 HT18: Beräkningsprogrammering Numerisk Analys, Matematikcentrum

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

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

Introduktion till Matlab

DN1212+DN1214+DN1215+DN1240+DN1241+DN1243 mfl Lördag , kl 9-12 Tentamen i Grundkurs i numeriska metoder Del 1 (av 2)

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Varför numeriska metoder? Vad är numeriska metoder?

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Felfortplantning och kondition

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

Transkript:

SF1518,SF1519,numpbd15 LABORATION 2 Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering - Genomför laborationen genom att göra de handräkningar och MATLAB-program som begärs. Var noga med att skriva upp resultaten och svaren på frågorna. Se även till att göra snygga grafer, där sådana efterfrågas. Det materialet ska du ha med som stöd på lappskrivningen den 7/10. Klarar du den så får du bonuspoäng (1,5) till tentan. Om skrivningen inte är godkänd eller om du uteblir, måste Lab2 redovisas muntligt enligt särskilt schema, men då ges ingen bonus. Föreläsningsbilder, Pohl avsnitt 5.1, 5.4, kapitel 3, avsnitt 4.2 och exempel 2.10, och NAM (Gerd Eriksson) avsnitt 6.1-6.8, 5.2.1, 1.3 och 3.8, ger kött på benen för denna laboration, liksom MATLAB-böckerna av Moore, kap.6, 12, och Chapman, kap.5. 1. Trapetsregeln för numerisk integrering - noggrannhetsordning Följande integral ska beräknas.. I = 1 1 x + 2 dx 1A. Gör först följande laborationsförberedande uppgifter a)-c): a) Rita först en graf över integranden, dvs y = x + 2. Uppskatta den sökta integralens värde ur grafen. Svar: I b) Använd MATLABs symboliska matematik för att beräkna obestämda integralen, F (x), och bestämda integralen, F (1) F ( 1), som används som referensvärde. Gör om det exakta uttrycket till decimaltal med eval. Svar: F (x) = I ref = F (1) F ( 1) = I nedanstående tabell har ett antal trapetsvärden, T (h), som approximerar I med konstant steglängd, x i = h, redan beräknats: h T (h) E T = T (h) I ref E T /h E T /h 2 1 0.5 0.25 2.796336 0.125 2.797160 0.0625 2.797366 c) Räkna ut och fyll i för hand de värden som ska stå i de tomma rutorna. För de två sista kolumnerna räcker två eller tre värdesiffror. Felet avtar ungefär proportionellt mot en potens av steglängden h; vilken? Vad säger det om trapetsregelns noggrannhetsordning?

1B. Skriv sedan ett MATLAB-program som beräknar integralen numeriskt med trapetsregeln. Undersök hur trunkationsfelet, E T, beror av steglängden, h, genom att rita felen som funktion av följande steglängder h = 1/8, 1/16, 1/32, 1/64, 1/128, 1/256, 1/512, 1/1024. Använd MATLABs kommando loglog för uppritningen. Visa hur man uppskattar metodens noggrannhetsordning, p, med hjälp av grafen. För trapetsregelns noggrannhetsordning gäller E T = I T (h) Ch p där C är en konstant, p är noggrannhetsordningen, T (h) är det approximativa integralvärdet (ur trapetsregeln med konstant steglängd h), och I kan ersättas med det noggranna referensvärdet I ref. Vad blir p? 2. Programmering av funktioner i MATLAB Börja med att skapa en funktion för f(x) = e x x 3, kalla den funk1. Skapa sedan flera (minst 2) funktioner med namn och utseenden som du väljer själv. De ska vara funktioner av en variabel och ligga på separata filer med lämpliga namn. Skriv nu ett program som kan tabellera, plotta, integrera och bestämma nollställen till funktioner. Programmet ska först fråga efter namnet på funktionen och läsa in det som en textsträng (läs i MATLABs hjälptext för input om hur man läser in strängar). Programmet ska förutom era egna tre funktioner också fungera för MATLABs inbyggda funktioner, som t ex sin och log). Programmet för alltså inte vara skrivet så att det i förväg vet funktionernas namn. använd MATLAB-funktionen str2func för att omvandla textsträngen till ett funktionshandtag som kan skickas som argument mellan programmets olika delar; gör help str2func eller läs den mer utförliga referenssidan för den funktionen. Sedan ska programmet upprepat för denna funktion erbjuda tabellering, uppritning, integration och/eller nollställeberäkning med hjälp av en meny. Man ska sedan kunna byta funktion och fortsätta med den nya funktionen eller avsluta. Ni kan använda er av MATLABs inbyggda funktioner som integral och fzero for integration och nollställesberäkning. Dialogen kan se ut enligt exemplet nedan. Vad heter funktionen? funk1 Ditt val: 1 Tabellering: Ange undre gränsen: 1 Ange övre gränsen: 3 Ange antal punkter: 7

x f(x) 1.0000 1.7183 1.5000 1.1067 2.0000-0.6109 2.5000-3.4425 3.0000-6.9145 Ditt val: 4 Beräkna nollställe: Ange ett startvärde: 2 Ett nollställe är x =1.8572 Ditt val: 5 Välja ny funktion: Vad heter den nya funktionen? sin Ditt val: 4 Beräkna nollställe: Ange ett startvärde: 6.3 Ett nollställe är x = 6.2832 Ditt val: 6 Tack och hej!

3. Olinjär skalär ekvation Man vill bestämma samtliga rötter till följande ekvation 7x 20 cos (3x 5) = 0 (a) Hitta en övre och en undre gräns för intervallet där rötter kan tänkas finnas. (b) Rita med MATLAB grafen för funktionen y(x) = 7x 20 cos (3x 5) i ett intervall som är stort nog att innehålla samtliga nollställen till y(x). Hur många rötter finns det? (c) Skriv ett program i MATLAB som använder intervallhalvering för att beräkna roten närmast x = 0 med relativfel högst 0.5 10 9. Ange vilket startintervall ni väljer. Hur många iterationer krävs? (d) Genomför, med papper, penna och miniräknare två iterationer med Newton- Raphsons metod och startvärdet x 0 = 1.5. (e) Skriv ett program för Newton-Raphsons metod i MATLAB som beräknar samtliga rötter med relativfel högst 0.5 10 9. Låt programmet skriva ut tabeller som visar hur iteraten konvergerar mot rötterna. Utöka tabellerna så att följande storheter kan avläsas: 1) Antal iterationer som krävs för att få önskat relativfel, 2) Konvergenshastigheten (linjär eller kvadratisk). (f) Visa att ekvationen kan skrivas om till fixpunktsiterationen x n+1 = 7 8 x n + 5 14 cos (3x n 5). Genomför med papper, penna och miniräknare två iterationer med startvärdet x 0 = 0. (g) förklara teoretiskt vilka av ekvationens rötter i just denna fixpunktsiteration kan konvergera mot om man väljer startgissningar nära rötterna. (h) Skriv ett MATLAB-program som undersöker praktiskt mot vilka rötter just denna fixpunktsiteration konvergerar om man väljer startgissningar nära rötterna. Avbryt fixpunktsiterationen efter ett maximalt antal iterationer, t.ex. 200, för att undvika en oändlig slinga om metoden inte konvergerar. Stämmer (b)? (i) Välj startvärdet x 0 = 0. Hur många iterationer behövs för att få relativfel högst 0.5 10 9? Skriv ut en tabell som visar hur snabbt korrektionerna avtar och använd denna för att bestämma och konvergensen är linjär eller kvadratisk? 4. Skärning mellan ellipser, ickelinjärt ekvationssystem Beräkna alla skärningspunkter mellan den sneda ellipsen som definieras av 0.4x 2 + y 2 xy = 10 och den ellips med centrum i (4, 2) och halvaxlarna a = 4 och b = 6 (parallella med koordinataxlarna) som beskrivs av (x 4) 2 /a 2 + (y 2) 2 /b 2 = 1. Ellipserna ska ritas 1 och de erhållna skärningspunkterna markeras med en ring. Hur är det med egenskapen kvadratisk konvergens i algoritmen? 1 Den sneda ellipsen skrivs bäst i polär form inför uppritningen.

5. Numerisk derivering, felskattning och extrapolation Vi vill approximera derivatan av funktionen numeriskt i punkten x = 2. f(x) = sin (0.6x 2 ) (a) Börja med att derivera funktionen analytiskt med hjälp av MATLAB. Substituera x mot 2, vad blir resultatet?. Evaluera detta resultat. Gör om derivatan till en numerisk MATLAB-funktion och beräkna värdet av f (2) = med hjälp av denna. Svar: f (x) = Med substitution f (2) = Med numeriska funktionen f (2) = (b) Fyll i de tomma rutorna i nedanstående tabell, där: D(h) är centraldifferensapproximationen av derivatan med steglängd h, skillnaden D(h) = D(h) D(2h), felskattningen E skatt (h) = D(h)/(2 p 1) är trunkeringsfelets ledande term, (där p är centraldifferensens noggrannhetsordning vad är p?), felet E(h) = D(h) f (2), extrapolerade värdet D extr (h) = D(h) + E skatt (h) är approximationen förbättrad med Richardsonextrapolation. Hur bra är felskattningen här? (c) Skriv ett MATLAB-program som räknar ut D(h) för de fyra steglängderna i tabellen och sedan halverar steglängden minst fyra gånger till. Beräkna felskattningen E skatt (h) och Richardsonextrapolationen D extr (h) samt felen i både D(h) och D extr (h). Plotta felen som en funktion av steglängderna med kommandot loglog och visa hur man kan se nogrannhetsordningen av centraldifferensapproximationen och värdet efter Richardsonextrapolation. h D(h) D(h) E skatt (h) E(h) D extr (h) 0.1 1.101802 0.025139 0.05 1.082702 0.019100 0.006039 0.025 1.078158 0.001495 0.0125