Løsning ved iterasjon

Like dokumenter
Newtons metode for system av ligninger

Biseksjonsmetoden. biseksjonsmetode. Den første og enkleste iterativ metode for ikke lineære likninger er den så kalt

6 Numeriske likningsløsere TMA4125 våren 2019

Newtons metode. Gitt f(x) slik at f(a)f(b) < 0, Newtons metode genererer en følge {x k }, hvor. (Newton Raphson) x k+1 = x k f(x k) f (x k )

Finne løsninger på ligninger numerisk: Newton-Raphson metoden og Fikspunktiterasjon MAT111, høsten 2017

Numerisk integrasjon

Ikke lineære likninger

Numerisk lineær algebra

Numerisk løsning av ikke-lineære ligninger

EKSAMEN I EMNET Løsning: Mat Grunnkurs i Matematikk I Mandag 14. desember 2015 Tid: 09:00 14:00

Tangenten svarer til lineær approksimasjon av funksjonen. Likningen for tangenten finnes derfor fra 1. ordens Taylorutvikling:

TMA4122/TMA4130 Matematikk 4M/4N Høsten 2010

Fasit til utvalgte oppgaver MAT1110, uka 28/4-2/5

MAT jan jan feb MAT Våren 2010

Følger og rekker. Department of Mathematical Sciences, NTNU, Norway. November 10, 2014

MA2501 Numeriske metoder

Notat 4 - ST februar 2005

Flere anvendelser av derivasjon

MA1102 Grunnkurs i analyse II Vår 2019

UNIVERSITETET I OSLO

Matematikk Øvingsoppgaver i numerikk leksjon 7 Løsningsforslag

UNIVERSITETET I BERGEN Det matematisk-naturvitenskapelige fakultet. Eksamen i MAT111 Grunnkurs i matematikk I Løsningsforslag

Oppsummering TMA4100. Kristian Seip. 26./28. november 2013

MA2501, Vårsemestre 2019, Numeriske metoder for lineære systemer

Løsningsforslag til Mat112 Obligatorisk Oppgave, våren Oppgave 1

Eksamensoppgave i MA1102/6102 Grunnkurs i analyse II

MAT 100a - LAB 3. Vi skal først illustrerere hvordan Newtons metode kan brukes til å approksimere n-te roten av et positivt tall.

Matematikk Øvingsoppgaver i numerikk leksjon 6 Løsningsforslag

Oppsummering TMA4100. Kristian Seip. 17./18. november 2014

Viktig informasjon. 1.1 Taylorrekker. Hva er Taylor-polynomet av grad om for funksjonen? Velg ett alternativ

Numerisk løsning av ODL

Oppsummering TMA4100. Kristian Seip. 16./17. november 2015

UNIVERSITETET I OSLO

x n+1 = x n f(x n) f (x n ) = x n x2 n 3

TMA4100 Matematikk 1 Høst 2014

Newtons metode - Integrasjon Forelesning i Matematikk 1 TMA4100

Underveiseksamen i MAT-INF 1100, 17. oktober 2003 Tid: Oppgave- og svarark

Differensjalligninger av førsteorden

Sensitivitet og kondisjonering

Alle svar skal grunngis. Alle deloppgaver har lik vekt.

MA1102 Grunnkurs i Analyse II Vår 2015

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Deleksamen i MAT111 - Grunnkurs i Matematikk I

1 Mandag 1. februar 2010

Løsningsforslag. og B =

Matematikk 4 TMA4123M og TMA 4125N 20. Mai 2011 Løsningsforslag med utfyllende kommentarer

MA2501 Numeriske metoder

MA2501 Numeriske metoder

UNIVERSITETET I OSLO

Oppgave x d 1.0 for n from 1 by 1 to 200 do x d sin x end do

f (x) = a 0 + a n cosn π 2 x. xdx. En gangs delvisintegrasjon viser at 1 + w 2 eixw dw, 4 (1 + w 2 ) 2 eixw dw.

Taylorpolynom (4.8) f en funksjon a et punkt i definisjonsmengden til f f (minst) n ganger deriverbar i a Da er Taylorpolynomet til f om a

Eksamen i TMA4122 Matematikk 4M

Emnenavn: Eksamenstid: Faglærer: Christian F Heide

Bioberegninger - notat 4: Mer om sannsynlighetsmaksimering

Det matematisk-naturvitenskapelige fakultet

BYFE DAFE Matematikk 1000 HIOA Obligatorisk innlevering 4 Innleveringsfrist Fredag 11. mars 2016 Antall oppgaver: Løsningsforslag

UNIVERSITETET I OSLO

Oppgave Iterasjonen ser ut til å konvergere sakte mot null som er det eneste fikspunktet for sin x.

UNIVERSITETET I OSLO

5.8 Iterative estimater på egenverdier

NTNU Institutt for matematiske fag. TMA4100 Matematikk 1 høsten Løsningsforslag - Øving 8. Oppgave 1. Oppgave 2

= x lim n n 2 + 2n + 4

MAT Grublegruppen Uke 37

Løsningsforslag eksamen i TMA4100 Matematikk desember Side 1 av 7

UNIVERSITETET I OSLO

EKSAMEN I EMNET MAT160 Beregningsalgoritmer 1 Mandag 12 februar 2007 LØSNINGSFORSLAG

Eksamen i TMA4123/TMA4125 Matematikk 4M/N

Matematikk Øvingsoppgaver i numerikk leksjon 6. Løsningsforslag

UNIVERSITETET I OSLO

x 2 = x 1 f(x 1) (x 0 ) 3 = 2 n x 1 n x 2 n 0 0, , , , , , , , , , , 7124

EKSEMPLER TIL ETTERTANKE MAT1100 KALKULUS

arbeid - massesenter - Delvis integrasjon Forelesning i Matematikk 1 TMA4100

Fasit MAT102 juni 2016

Viktig informasjon. 1.1 Taylorrekker. Hva er Taylor-polynomet av grad om for funksjonen? Velg ett alternativ

x 2 = x 1 f(x 1) (x 0 ) 3 = 2 x 2 n n x 1 n 0 0, , , , , , , , , , , 7124

Oppgaver i funksjonsdrøfting

Eksamensoppgave i TMA4122,TMA4123,TMA4125,TMA4130 Matematikk 4N/M

UNIVERSITETET I BERGEN

TMA4123/TMA4125 Matematikk 4M/4N Vår 2013

Konvergenstester Forelesning i Matematikk 1 TMA4100

UNIVERSITETET I OSLO

Oversikt over Matematikk 1

SIF5003 Matematikk 1, 5. desember 2001 Løsningsforslag

UNIVERSITETET I OSLO

L(t 2 ) = 2 s 3, 2. (1. Skifteteorem) (s 2) 3. s 2. (Konvolusjonsteoremet) s 2. L 1 ( Z. = t, L 1 ( s 2 e 2s) = (t 2)u(t 2). + 1

x 3 x x3 x 0 3! x2 + O(x 7 ) = lim 1 = lim Denne oppgaven kan også løses ved hjelp av l Hôpitals regel, men denne må da anvendes tre ganger.

Potensrekker Forelesning i Matematikk 1 TMA4100

UNIVERSITETET I OSLO

Obligatorisk oppgave 1

EKSAMEN I NUMERISK MATEMATIKK (TMA4215)

Prøve i Matte 1000 ELFE KJFE MAFE 1000 Dato: 02. desember 2015 Hjelpemiddel: Kalkulator og formelark

EKSAMEN I MATEMATIKK 1000

Potensrekker Forelesning i Matematikk 1 TMA4100

UNIVERSITETET I OSLO

Prøveunderveiseksamen i MAT-INF 1100, H-03

Derivasjonen som grenseverdi

TMA4100 Matematikk 1 for MTDESIG, MTIØT-PP, MTMART og MTPROD høsten 2010

Transkript:

Løsning ved iterasjon Arne Morten Kvarving Department of Mathematical Sciences Norwegian University of Science and Technology 17. September 2009

Problem Gitt problemet f (x) = 0 for en eller annen funksjon f. Eksempel på slike problem kan være x 2 3x + 1 = 0 sin x = 0.5x ln 10x x = 0. Vi har kun eksakte formler for et fåtall problem på denne formen. Vi må derfor ty til numeriske løsninger.

Fikspunktiterasjoner - repetisjon Idé: Gjett på en løsning x 0 og finn en eller annen formel for forbedring av denne løsningen. En måte vi kan gjøre dette på er at vi transformerer ligningen over på formen x = g(x). Gitt en initiell gjetning x 0, lager vi så en iterativ prosess ut av dette ved å sette på iterasjonsnummer x n+1 = g(x n ). Løsningen x av denne ligningen kalles et fikspunkt for funksjonen g(x). Vi kaller derfor denne iterasjonsprosessen for fikspunktiterasjoner.

Problem med fikspunktiterasjoner Som vi har sett må funksjonen g(x) være en kontraksjon på intervallet vi betrakter for å garantere at fikspunktiterasjoner konvergerer. Selv om vi har en kontraksjon finner vi ikke nødvendigvis alle løsninger. Dette kravet er så sterkt at det begrenser anvendelsesområdet betraktelig. Av interesse å finne en mer generell anvendbar metode.

Krav til problem En slik metode er Newtoniterasjoner, også kjent som Newton-Raphsoniterasjoner. I fikspunktiterasjoner bruker vi ingen informasjon om den deriverte av funksjonen. Vi vet dog at metoden er avhengig av en kontinuerlig og skranket f (lokalt) for at vi skal oppnå konvergens. Vi antar nå at funksjonen har en kontinuerlig derivert.

Nytt problem Vi betrakter nå et problem f (x) = 0 hvor f C 1 (R). Eksempler på et slikt problem kan være f 1 (x) = x 2 3x + 1 = 0 f 2 (x) = sin x 0.5x = 0 Et eksempel på et problem vi ikke kan betrakte er f 3 (x) = ln 10x x = 0. da vi har et sprang i den deriverte for x = 0.

Newtoniterasjoner Idé: Vi approksimerer løsningen ved å følge tangenter. y f(x) f(x 0 ) x 2 x 1 x 0 x

Newtoniterasjoner Utleder nå metoden på en litt annen måte for å gjøre matematikken litt enklere. Anta at vi har en eller annen iterasjonsverdi x k. Definerer nå forskyvningsfeilen ɛ ved x = x k + ɛ. Å løse problemet er altså ekvivalent med å finne ɛ. Vi Taylorutvikler så f rundt x k : f (x) = f (x k + ɛ) = f (x k ) + ɛf (x k ) + = 0.

Newtoniterasjoner Vi trunkerer nå denne serien etter det lineære leddet, i.e. vi betrakter f (x) f (x k ) + ɛf (x k ) = 0. Løser så denne for ɛ og tar vår neste iteratverdi som x k+1 = x k + ɛ. Dette tilsammen gir Newtoniterasjoner; ɛ = f (x k) f (x k ) x k+1 = x k + ɛ = x k f (x k) f (x k ).

Eksempel Betrakter problemet Den deriverte er gitt ved f 1 (x) = x 2 3x + 1 = 0. f 1 (x) = 2x 3. Setter vi dette inn i iterasjonsskjemaet får vi x k+1 = x k x 2 3x + 1. 2x 3 Vi vet at de eksakte løsningene er gitt ved x = 3 2 ± 5 4 x 1 = 2.61804, x 2 = 0.381966.

Eksempel Først gjetter vi x 0 = 0. Iterasjonstabellen er gitt ved k x k ɛ x k+1 0 0 0.3333 0.3333 1 0.3333 0.0476 0.3810 2 0.3810 0.0010 0.3820 3 0.3820 4.591e-7 0.3820 4 0.3820 9.43e-14 0.3820 Gjetter så x 0 = 2. Iterasjonstabellen er gitt ved k x k ɛ x k+1 0 2.0000 1.000 3.0000 1 3.0000-0.333 2.6667 2 2.6667-0.048 2.6190 3 2.6190-0.001 2.6180 4 2.6180-4.591e-7 2.6180

Eksempel For referanse; resultatene fra fikspunktiterasjoner for den minste roten. k x k x k+1 0 0.0000 0.3333 1 0.3333 0.3701 2 0.3701 0.3800 3 0.3800 0.3812 4 0.3812 0.3818... 10 0.3820 0.3820

Observasjoner Ved å variere den intielle gjetningen oppnår vi begge de to røttene. Konvergensen virker til å være betraktelig kjappere enn i fikspunktiterasjoner. Hvor kjapp?

Konvergenshastighet Betrakt et generelt iterativt skjema på formen x = g(x). Både fikspunktiterasjoner og Newtoniterasjoner passer inn på denne formen, for Newtoniterasjoner er funksjonen g(x) gitt ved g(x) = x f (x) f (x). La x k være en approksimert løsning til en løsning s. Definerer som ovenfor forskyvningsfeilen x k = s + ɛ. Vi vet at hvis vi kan bestemme ɛ nøyaktig, vil x k+1 = s.

Konvergenshastighet Taylorutvikler og får x k+1 = g (x k ) = g(s) + g (s)ɛ + 1 2 g (s)ɛ 2 +.... Eksponenten for ɛ foran det første leddet i denne summen som ikke forsvinner kalles for konvergensorden for metoden. Fra denne definisjonen ser vi at fikspunktiterasjoner har lineær/først ordens konvergens siden vi ikke kan si noe om g (s) generelt. Men hva med Newton-iterasjoner?

Konvergenshastighet Som tidligere nevnt er g(x) gitt ved x f (x) f (x) Deriverer for Newton. g (s) = 1 f (s) 2 f (s)f (s) f (s) 2 = f (s)f (s) f (s) 2 Siden vi vet at f (s) = 0 er g (s) = 0 og følgelig er Newtons metode minst av andre orden. Deriverer vi enda en gang finner vi g (s) = f (s) f (s). Denne er ulik null generelt sett, slik at Newtons metode er av andre orden.

Newtoniterasjoner i Matlab - runde 1 Gitt x 0 = 0 og n, antall iterasjoner, kan en Matlab-realisering se ut som: function x = newton1 (x0,n) x = x0; for i =1: n eps = -(x ^2-3* x +1)/(2* x -3); x = x + eps ; end

Avbruddskriterium Vi er interessert i å gjøre minst mulig arbeid. Vi trenger ofte ikke veldig mange siffer nøyaktighet i svaret. Et forslag til et slikt avbruddskriterium kan være x k+1 x k γ x k.

Newtoniterasjoner i Matlab - runde 2 Gitt x 0 = 0, toleranse γ og n, maks antall iterasjoner, kan en Matlab-realisering se ut som: function x = newton2 (x0,n, gamma ) x = x0; for i =1: n x_old = x; eps = -(x ^2-3* x +1)/(2* x -3); x = x + eps ; if abs (x- x_old ) <= gamma * abs ( x_old ) break ; end end

Funksjonshåndtak Vi vil benytte Matlab-koden vår på mange forskjellige problem. Matlab har et nyttig verktøy for dette; funksjonshåndtak. Disse lar oss sende med funksjoner som parametere til andre funksjoner. Disse kan så evalueres med funksjonen feval.

Newtoniterasjoner i Matlab - runde 3 Implementer f (x) og f (x) som seperate funksjoner function y = test ( x) y = x ^2-3* x +1; function y = testd ( x) y = 2*x -3;

Newtoniterasjoner i Matlab - runde 3 kont Selve Newtonløseren ser nå ut som function x = newton3 (x0,n,gamma,f,fd) x = x0; for i =1: n x_old = x; eps = -feval (f,x)/ feval (fd,x); x = x + eps ; if abs (x- x_old ) <= gamma * abs ( x_old ) break ; end end

Sekantmetoden Noen ganger kan det være vanskelig å finne et uttrykk for den deriverte av funksjonen. Vi kan/må da ty til en approksimasjon til den deriverte av funksjonen. y f(x k+1) f (x k) f(xk+1) f(xk) xk+1 xk f(x k) x k x k+1 x

Sekantmetoden En måte å approksimere den deriverte av funksjonen på er å approksimere den deriverte som en differanseoperator. Vi bruker Setter inn og finner f (x k ) f (x k) f (x k 1 ) x k x k 1. x k+1 = x k f (x k ) x k x k 1 f (x k ) f (x k 1 ).

Sekantmetoden Det kan være fristende men vi skriver IKKE Hvorfor? x k+1 = x k 1f (x k ) x k f (x k 1 ). f (x k ) f (x k 1 ) Det kan vises at metoden har en superlineær konvergens, i.e. bedre enn lineær. Orden på metoden er ca 1.62. Vi trenger to initielle gjetninger for å sette i gang prosessen.

Sekantmetoden i Matlab function x = sekant (x0,x1,n,gamma,f) fx_old = feval (f,x0 ); x_old = x0; x = x1; for i =1: n fx = feval (f,x); eps = -fx *(x- x_old )/( fx - fx_old ); x_old = x; x = x + eps ; fx_old = fx; if abs (x- x_old ) <= gamma * abs ( x_old ) break ; end end