Numerikk TMA4125 - Matematikk 4N Einar Baumann 3. mai 2011
1 Forord Dette kompendiet er ment som en supplement til kompendiet i Matematikk 4 som selges på Tapir og ikke inneholder numerikkdelen i 4N og 4M. Hovedformålet var å lære stoffet selv, så jeg har skrevet det så utfyllende som jeg følte jeg selv trengte. Jeg har prøvd å få med alt som er nevnt i pensumlista som ligger på fagets nettside. Hvis jeg har glemt noe viktig er det fint om noen gir meg beskjed om det. Punkter som er merket som ikke eksamensrelevant er ikke tatt med. Kompendiet er skrevet utfra Kreyszig [1], samt notater publisert på fagsidene av faglærer Harald E. Krogstad våren 2011. Ekspemler er tatt fra øvinger våren 2011 og læreboka. Hvis du oppdager en feil, stor eller liten, setter jeg stor pris på det om du gir meg beskjed på e-post: einar.baumann@gmail.com.
Innhold 1 Generell numerikk 4 1.1 Introduksjon............................. 4 1.1.1 Signifikante siffer....................... 4 1.1.2 Avrunding........................... 4 1.1.3 Avrundingsfeil........................ 4 1.1.4 Algoritmisk stabilitet.................... 5 1.1.5 Feilproplantning....................... 5 1.1.6 Tap av signifikante siffer................... 5 1.2 Løsing av ligninger ved iterasjon.................. 5 1.2.1 Fikspunkt-iterasjon...................... 6 1.2.2 Newtons metode (Newton-Raphsons metode)....... 7 1.2.3 Konvergensen til Newtons metode og ordenen til iterasjonsmetoder......................... 7 1.3 Interpolasjon............................. 8 1.3.1 Lagrange interpolasjon.................... 8 1.4 Spline interpolasjon......................... 11 1.5 Numerisk integrasjon......................... 12 1.5.1 Trapes-metoden....................... 12 1.5.2 Simpsons regel........................ 13 2 Numerisk løsing av ligningssystemer 16 2.1 Matriser og Gauss eliminasjon.................... 16 2.1.1 Matriser............................ 16 2.1.2 Gauss eliminasjon...................... 17 2.2 LU-faktorisering........................... 17 2.3 Løsing ved iterasjon......................... 18 2.3.1 Gauss-Seidel iterasjonsmetode................ 19 2.3.2 Jacobi iterasjon........................ 20 2.4 Dårlig betingede systemer ( ill conditioning )........... 21 2
INNHOLD 3 3 Numerisk løsing av diff. lign. 22 3.1 Metoder for førsteordens ODL.................... 22 3.1.1 Eulers metode........................ 23 3.1.2 Heuns metode (forbedret Eulers metode)......... 24 3.1.3 Klassisk Runge-Kutta metode (RK4)............ 25 3.2 Metoder for systemer og høyere ordens ODL............ 26 3.2.1 Eulers metode for systemer................. 27 3.2.2 Runge-Kutta metoden for systemer............. 28 3.3 Metoder for elliptiske PDL..................... 28 3.3.1 Differensligninger for Laplace og Poisson ligingene.... 29 3.3.2 Dirchlet problem....................... 30 Bibliografi 31
Kapittel 1 Generell numerikk 1.1 Introduksjon 1.1.1 Signifikante siffer Signifikante siffer forklares best ved et eksempel. Alle de følgende fire tallene har fire signifikante siffer 1360 1, 360 0, 001360 Her er hvert siffer untatt nuller til venstre for første siffer ulik null et signifikant siffer. Det kan også vises som med floating point systemet som gjerne brukes av datamaskiner (og generelt for veldig store/små verdier). Alle de følgende tallene har også fire signifikante siffer 1.1.2 Avrunding 0, 6246 10 3 0, 2000 10 1 6, 247 10 2 1, 735 10 14 Generell regel: Når man vil ha k desimaler, fjerner man desimal (k + 1) og alle følgende desimaler. Hvis desimal (k + 1) er større enn 5 adderes 1 til desimal k. Hvis desimal (k + 1) er mindre enn 5, subtraheres 1 fra desimal k. Hvis desimal (k + 1) er lik 5 avrundes desimal k til nærmeste partall. 2,45 blir altså 2,4 og 2,55 blir 2,6. Den siste regelen er for å sørge for at det rundes opp og ned omtrent like ofte. 1.1.3 Avrundingsfeil Generelt kan man si at avrundingsfeil blir et større og større problem jo flere beregninger som foretas. Det er derfor viktig å organisere beregningene på en måte som minimerer avrundingsfeilene. 4
KAPITTEL 1. GENERELL NUMERIKK 5 1.1.4 Algoritmisk stabilitet En algoritme er stabil hvis små endringer i startdataene bare gir små endringer i sluttresultatet. Hvis små endringer i startdataene gir store endringer i sluttresultatet, sier man at algoritmen er ustabil. 1.1.5 Feilproplantning Den relative feilen ɛ r til en aproksimert verdi ã er definert fra feilen ɛ og den egentlige verdien a ɛ r = ɛ a = a ã (1.1.1) a Hvis ɛ ã kan vi bruke ã i stedet for a, og får da ɛ r = ɛ ã Usikkerheten β ( error bound ) er videre definert som β = ɛ (1.1.2) Denne usikkerheten forteller oss hvor langt fra den beregnede verdien ã den eksakte verdien a maksimalt kan ligge. For relativ feil er usikkerheten β r definert som β r = ɛ r (1.1.3) Man får da følgende teorem for feilforplantning over matematiske operasjoner: Teorem. a) Under addisjon og subtraksjon vil usikkerheten β være gitt fra summen av usikkerhetene for termene. b) Under multiplikasjon og divisjon vil usikkerheten β r til resultatet være gitt fra summen av usikkerhetene fra de relative feilene til de gitte tallene. 1.1.6 Tap av signifikante siffer Tap av signifikante siffer innebærer at resultatet av en beregning har færre korrekte siffer enn tallene som ble brukt i beregningen. Det kan for eksempel skje under en subtraksjon: 0, 1439 1, 1426 = 0, 0013. Det kan ofte unngås ved enkle forandringer i algoritmen. 1.2 Løsing av ligninger ved iterasjon I denne seksjonen skal metoder for å finne løsninger på ligningen f (x) = 0 (1.2.1) undersøkes. Løsningen er et tall s slik at f (s) = 0.
KAPITTEL 1. GENERELL NUMERIKK 6 1.2.1 Fikspunkt-iterasjon Når man skal bruke fikspunkt-iterasjon til å løse en ligning, omformes ligningen først til formen x = g (x) (1.2.2) Man velger så en x 0 og beregner x 1 = g (x 0 ), x 2 = g (x 1 ),..., og generelt har man at x n+1 = g (x n ) (n = 0, 1,... ) (1.2.3) Løsningen til (1.2.2) kalles fikspunktet til g. Denne løsningen er også en løsning av (1.2.1), siden x = g (x) kan omformes tilbake til den opprinnelige formen f (x) = 0. Eksempel 1. Sett opp en iterasjonsprosess for ligningen f (x) = x 2 3x + 1 = 0. Dette er en andregradsligning, og har derfor to løsninger. Disse løsningene er x = 1, 5 ± 1, 25, altså 2, 618034 og 0, 381966. Løsning: Skriver om ligningen til x = 1 3 Det gir følgende formel for iterasjonen x n+1 = 1 3 ( x 2 + 1 ) ( x 2 n + 1 ) Hvis man videre velger x 0 = 1, får man følgende sekvens x 0 = 1, x 1 = 0, 667, x 2 = 0, 481, x 3 = 0, 411, x 4 = 0, 390,... Som altså konvergerer mot den nedre løsningen. Observerer videre at x 0 = 2 også konvergerer mot den nedre løsningen, mens x 0 = 3 divergerer. Skriver derfor om ligningen til Som gir iterasjonsformelen x = 3 1 x x n+1 = 3 1 x n Velger x 0 = 1, som gir følgende sekvens x 0 = 1, x 1 = 2, 0, x 2 = 2, 5, x 3 = 2, 6, x 4 = 2, 615,... Som altså konvergerer mot den øvre løsningen.
KAPITTEL 1. GENERELL NUMERIKK 7 Konvergens En iterasjonsprosess definert av (1.2.3) konvergerer hvis den tilsvarende sekvensen x 0, x 1,... konvergerer. Teorem. La x = s være en løsning av x = g (x), og anta at g har kontinuerlig derivert i et intervall J som inneholder s. Da har man at iterasjonsprosessen definert av (1.2.3) konvergerer mot s for alle x 0 i J hvis g (x) er mindre enn 1 for alle verdier av x i intervallet J som undersøkes. 1.2.2 Newtons metode (Newton-Raphsons metode) Newtons metode forutsetter at ligningen f (x) = 0 har kontinuerlig derivert f. Den underliggende ideen er å aproksimere grafen til f med passende tangenter. Formelen for iterasjonen, gitt en startverdi x 0 er x n+1 = x n f (x n) f (x n ) (n = 0, 1,... ) (1.2.4) Hvis f (x n ) = 0 for en verdi av n velges en annen startverdi x 0. 1.2.3 Konvergensen til Newtons metode og ordenen til iterasjonsmetoder Ordenen til en iterasjonsmetode er et mål på konvergenshastigheten til metoden. Hvis man lar x n+1 = g (x n ) være en iterasjonsmetode og x n aproksimerer en løsning s av x = g (x) får man fra taylorformelen at x n+1 = g (s) g (s) ɛ n + 1 2 g (s) ɛ 2 n +... Eksponenten til ɛ n til den første termen som ikke forsvinner (er lik 0) kalles ordenen til iterasjonsmetoden. I Newtons metode er g (x) = x f (x) /f (x). Pr. definisjon har man da at g (x) = 1 f (x) 2 f (x) f (x) f (x) 2 = f (x) f (x) f (x) 2 Siden f (s) = 0 er også g (s) = 0. Dermed er Newtons metode minst av andre orden. Hvis vi deriverer igjen og setter x = s, finner man at g (s) = f (s) f (s) som generelt er ulik null. Dermed har man at Teorem. Hvis f (x) er tre ganger deriverbar og f og f er ulik null for en løsning s av f (x) = 0, er Newtons metode av andre orden når x 0 er tilstrekkelig nær s.
KAPITTEL 1. GENERELL NUMERIKK 8 1.3 Interpolasjon Interpolasjon vil si å finne de omtrentlige verdiene til en funksjon f (x) for en x mellom forskjellige gitte x-verdier x 0, x 1,..., x n som verdiene for f (x) er gitt for. Disse verdiene kan komme fra en matematisk funksjon, eller de kan være målte verdier. Disse verdiene kan skrives på formen eller som ordnede par f 0 = f (x 0 ), f 1 = f (x 1 ),..., f n = f (x n ) (x 0, f 0 ), (x 1, f 1 ),..., (x n, f n ) En standardmetode i er å finne et interpolasjonspolynom p n (x) av grad n (eller lavere) slik at p n (x 0 ) = f 0, p n (x 1 ) = f 1,..., p n (x n ) = f n (1.3.1) der x 0,..., x n er nodene. Hvis f (x) er en matematisk funksjon, kalles p n en approksimasjon av f. Merk at polynom-interpolasjon er ikke den eneste interpolasjonmetoden. Interpolasjonspolynomer fungerer utmerket hvis dataene kommer fra et polynom, men de er ofte også unøyaktige, og fungerer ofte ikke så bra hvis man vil ekstrapolere, se Figur 1.1. Figur 1.1: Grafen viser ekstrapolasjon (striplet) fra et 4. grads interpolasjonspolynom og et lineært interpolasjonspolynom for datapunktene. 1.3.1 Lagrange interpolasjon Gitt (x 0, f 0 ), (x 1, f 1 ),..., (x n, f n ) med vilkårlig avstand mellom hver x k. Langrange foreslo å multiplisere hver f k med et polynom som er 1 ved x k og 0 ved de n andre nodene, og så ta summen av disse n + 1 polynomene.
KAPITTEL 1. GENERELL NUMERIKK 9 Lineær interpolasjon Lineær interpolasjon er interpolasjon med den rette linja gjennom (x 0, f 0 ), (x 1, f 1 ) (se Figur 1.2). Det lineære Lagrangepolynomet p 1 er summen p 1 = L 0 f 0 + L 1 f 1 der L 0 er det lineære polynomet som er 1 i x 0 og 0 i x 1, og L 1 er det lineære polynomet som er 1 i x 1 og 0 i x 0. Man har generelt at L 0 (x) = x x 1 x 0 x 1, L 1 (x) = x x 0 x 1 x 0 Man får da Lagrangepolynomet fra følgende formel p 1 (x) = L 0 (x) f 0 + L 1 (x) f 1 = x x 1 x 0 x 1 f 0 + x x 0 x 1 x 0 f 1 (1.3.2) y=f(x) Feil f 1 p 1 (x) f 0 x 0 x x 1 Figur 1.2: Plott av lineært Lagrangepolynom (rett, rykk linje) for funksjonen f (x) (tynn kurve) med feil tegnet inn. Kvadratisk interpolasjon Kvadratrisk interpolasjon er interpolasjon av gitte verdier (x 0, f 0 ), (x 1, f 1 ), (x 2, f 2 ) med et andregradspolynom p 2 (x). Interpolasjonspolynomet er gitt ved p 2 (x) = L 0 (x) f 0 + L 1 (x) f 1 + L 2 (x) f 2 (1.3.3) L 0 (x) = l 0 (x) l 0 (x 0 ) = (x x 1) (x x 2 ) (x 0 x 1 ) (x 0 x 2 ) L 1 (x) = l 1 (x) l 1 (x 1 ) = (x x 0) (x x 2 ) (x 1 x 0 ) (x 1 x 2 ) L 2 (x) = l 2 (x) l 2 (x 2 ) = (x x 0) (x x 1 ) (x 2 x 0 ) (x 2 x 1 ) Man ser at tellerene gjør at L k (x j ) = 0 når j k, mens nevneren gjør at brøken blir lik 1 når x = x k, dermed er Lagrange sin idé oppfylt.
KAPITTEL 1. GENERELL NUMERIKK 10 Generelt Lagrange interpolasjonspolynom Den generelle formelen for et Lagrange interpolasjonspolynom for n datapunkter er n n l k (x) f (x) p n (x) = L k (x) f k = l k (x k ) f k (1.3.4) k=0 k=0 l 0 (x) = (x x 1 ) (x x 2 ) (x x n ) l k (x) = (x x 0 ) (x x k 1 ) (x x k+1 ) (x x n ) l n (x) = (x x 0 ) (x x 1 ) (x x n 1 ) der L k (x k ) = 1 og L k (x j ) = 0 når j k. Feilestimat Hvis f selv er et polynom av grad n (eller mindre) må feilen ɛ være null, fordi fordi de (n + 1) datapunktene definerer ett unikt polynom. Den (n + 1)-deriverte til denne f er lik null. For en generell f kan man si at den (n + 1)-deriverte til funksjonen ( f (n+1)) er et mål på feilen. Generelt, for en passende t mellom x 0 og x n har man at feilen er gitt ved ɛ n (x) = f (x) p n (x) = (x x 0 ) (x x 1 ) (x x n ) f (n+1) (t) (n + 1)! (1.3.5) Man ser da at ɛ n (x) er lik null ved nodene og små nær dem. ɛ n (x) vokser lenger unna nodene, ekstrapolajon er derfor risikabelt. Merknad. Hvis den deriverte i (1.3.5) er vanskelig eller umulig å finne kan man velge en til node og det tilhørende Lagrangepolynomet p n+1 (x). Et grovt feilestimat er da gitt fra ɛ n = p n+1 (x) p n (x) (1.3.6)
KAPITTEL 1. GENERELL NUMERIKK 11 1.4 Spline interpolasjon Et problem med interpolasjonspolynomer for mange datapunkter er at polynomet p n ofte vil oscillere mellom punktene (numerisk instabilitet, se Figur 1.3). Disse oscillasjonene kan ungås ved å bruke splines. Ideen bak metoden er å bruke n polynomer av lav grad (en mellom hvert sett av to noder) i stedet for å bruke ett polynom av høy grad over hele intervallet. Alle n polynomer brukes så til å sette sammen en interpolasjonsfunksjon kalt en spline som går gjennom alle datapunktene. Spline interpolasjon er altså stykkevis polynominterpolsjon. Se Figur 1.4 for et eksempel. Datapunkter y = 1/(1+x 2 ) Interpolasjonspolynom Figur 1.3: Plottet viser Runges klassiske eksempel på mislykket interpolasjon Figur 1.4: Plottet viser Matlabs anbefalte Monotone Hermitian Spline (heltrukket) for datapunktene som er angitt med sirkler.
KAPITTEL 1. GENERELL NUMERIKK 12 1.5 Numerisk integrasjon Numerisk integrasjon betyr numerisk evaluering av integraler på formen J = ˆb a f (x) dx der a og b er gitt, og f er en funksjon som er gitt enten analytisk eller som en tabell med verdier. 1.5.1 Trapes-metoden Når et integral skal aproksimeres med trapes-metoden deles først intervallet a x b opp i n underintervaller med lik lengde h = (b a) /n. f aproksimeres videre av flere korte linjestykker med endepunkter (x a, f (x a )) på kurven f (se Figur 1.5). Arealet under kurven aproksimeres deretter med de n trapesene. Summen av trapesene gir trapes-regelen J = ˆb a [ f0 f (x) dx h 2 + f 1 + f 2 +... f n 1 + f ] n 2 h = b a n, f k = f (a + h k), k = 0,..., n (1.5.1) Der h = (b a) /n og f k = f (a + h k), k = 0,..., n. Se side 15 for et eksempel på bruk av trapes metoden. Figur 1.5: Plottet viser en illustrasjon av trapesmetoden. Den heltrukne kurven er funksjonen f, de striplede linjene viser trapesene som brukes til å aproksimere arealet under f.
KAPITTEL 1. GENERELL NUMERIKK 13 Feiloverslag for trapes-metoden og ekstrapolert verdi Feilen ɛ til verdien beregnet fra (1.5.1) er gitt ved følgende ligning (b a)3 ɛ = 12n 2 f (b a) (t) = h 2 f (t), t (a, b) (1.5.2) 12 Merk at verdien til f er tilnærmet konstant for fine inndelinger. Hvis man setter h = h/2 inn i ligning (1.5.2) får man at ɛ h/2 ɛ h /4. Ligningene J = J h + ɛ h = J h/2 + ɛ h/2 gir da at ɛ h/2 J h/2 J h 3 (1.5.3) Hvis dette trekkes inn i beregningene får man en såkalt ekstrapolert verdi J ex ( ) Jh/2 J h J ex = J h/2 + = 4 3 3 J h/2 1 3 J h (1.5.4) Merknad. Verdien til J ex beregnet fra J h og J h/2 fra Trapesmetoden vil være lik verdien J h beregnet med Simpsons metode. 1.5.2 Simpsons regel Stykkevis lineær aproksimasjon av f gir trapesregelen, stykkevis kvadratisk aproksimasjon gir Simpsons regel, som er en del mer nøyaktig enn trapesregelen. Ideen bak Simpsons rege er å starter man med å dele opp integrasjonsintervallet i et partallig antall underintervaller. Man tar så to og to underintervaller og lager kvadratiske Lagrangepolynomer p 2 over de tre punktene i hvert sett med intervaller. Man integrerer deretter over hvert sett med underintervaller. Se Figur 1.6. Formelen for Simpsons regel er ˆb a f (x) dx h 3 (f 0 + 4f 1 + 2f 2 + 4f 3 + + 2f n 2 + 4f n 1 + f n ) (1.5.5) h = b a n, n = partall, f k = (a + hk), k = 0, 1,..., n
KAPITTEL 1. GENERELL NUMERIKK 14 Figur 1.6: Plottet illustrerer simpsons regel. Den heltrukne kurven er f (x), den striplete kurven er p 2 (x) for hvert av de 4 underintervallene. Feilestimat for Simpsons regel Feilen i verdien beregnet fra Simpsons metode er gitt ved formelen ɛ h = b a 180 h4 f (4) (t), t (a, b) (1.5.6) Hvis man setter h = h/2 går feilen ned med en faktor på omtrent 16. Dermed får man at ɛ h/2 = J h/2 J h (1.5.7) 15 og J ex = J h/2 + J h/2 J h 15 = 16 15 J h/2 1 15 J h (1.5.8)
KAPITTEL 1. GENERELL NUMERIKK 15 Eksempel 2. Aproksimering av et Fresnel integral (Øving 11, oppgave 4): J = ˆ2 0 cos ( x 2) dx Den eksakte verdien er 0,4615. Trapes Aproksimerer først integralet med n = 10 og trapes-metoden. n = 10 og a = 0, b = 2 gir h = 2 10 = 0, 2. Satt inn i (1.5.1) (trivielle beregninger gjort i Matlab) gir det J T rapes(10) = 0, 4716 Bruker igjen trapes-metoden, denne gangen med n = 20 = h = 0, 1. Det gir J T rapes(20) = 0, 4640 Simpson Bruker deretter Simpsons regel (1.5.5) med n = 10 og 20. J Simpson(10) = 0, 4612 J Simpson(20) = 0, 4614 Ekstrapolering Beregner videre den ekstrapolerte verdien fra J T rapes(10) og J T rapes(20) fra ligning (1.5.4): Konklusjon J T rapes, ex = 4 3 J T rapes(20) 1 3 J T rapes(10) = 0, 4614 = J Simpson(20) Ser at Simpsons regel gir langt mer nøyaktige resultater for like fin oppdeling. Den ekstrapolerte verdien fra J T rapes(10) og J T rapes(20) er lik J Simpson(20). Det er rimelig trivielt å bevise hvorfor det er slik. (hint: Sett inn formlene for J T rapes(10) og J T rapes(20) og triks litt med rekkene).
Kapittel 2 Numerisk løsing av ligningssystemer 2.1 Matriser og Gauss eliminasjon I denne seksjonen repeteres først noen generelle ting om matriser, deretter Gauss eliminasjon. 2.1.1 Matriser Et lineært system av n ligninger med n ukjente x 1,..., x n er sett med ligninger E 1,..., E n på formen E 1 : a 11 x 1 + a 12 x 2 + a 1n x n = b 1 E 2 : a 21 x 1 + a 22 x 2 + a 2n x n = b 2 E n : a n1 x 1 + a n2 x 2 + a nn x n = b n er koeffisientene a jk og b j er gitte tall. Man sier at systemet er homogent hvis alle b j er null; ellers er det uhomogent. Systemet kan også skrives som en vektorligning der koeffisientmatrisen A = [a jk ] er n n matrisen a 11 a 12 a 1n a 21 a 22 a 2n A =......, og x = a n1 a n2 a nn Ax = b (2.1.1) x 1. x n, og b = b 1. b n Løsningen på (2.1.1) er et sett med tall x 1,..., x n som tilfredsstiller alle n ligninger. Løsningsvektoren til (2.1.1) er en vektor x hvis komponenter gir en løsning på (2.1.1). 16
KAPITTEL 2. NUMERISK LØSING AV LIGNINGSSYSTEMER 17 2.1.2 Gauss eliminasjon Gauss eliminasjon innebærer å redusere matrisen til en triangulær form og så løse systemet med tilbakesubstitusjon. Det første skrittet for å redusere et gitt system til triangulær form er å emininere x 1 fra ligning E 2 til E n, dette gjøres ved å subtrahere (eller addere) et passende multipel av E 1 fra E 2 til E n. De nye ligningene kalles E 2,..., E n. Den første ligningen, E 1, kalles pivoteringsligningen, og i dette skrittet kalles a 11 pivoteringspunktet. E 1 skal ikke endres. Neste skritt er å bruke E 2 som pivoteringsligning og eliminere x 2 fra E 3 til E n. Etter (n 1) skritt gir dette et triangulært system som kan løses med tilbakesubstitusjon. Merknad. Pivoteringspunktet a kk i skritt k må være ulik null, og bør ha stor absoluttverdi for å unngå stor avrundingsfeilamplifisering fra multiplikasjonen i elimineringen. Antall operasjoner og orden For Gauss eliminasjon er antall operasjoner f (n) som kreves før å Gauss eliminere en full matrise (en matrise med relativt mange celler ulik null) gitt fra følgende ligning n 1 n 1 f (n) = (n k) + 2 (n k) (n k + 1) setter n k = s k=1 s=1 k=1 n 1 n 1 = s + s (s + 1) = 1 2 (n 1) n + 2 3 s=1 ( n 2 1 ) n 2 3 n3 (2.1.2) Ser at f (n) vokser omtrent proporsjonalt med n 3. Man sier derfor at f (n) er av orden n 3 og skriver f (n) = O ( n 3) der O indikerer orden. Maksimalt antall operasjoner b (n) i tilbakesubstitisjonen er videre gitt fra b (n) = n 2 + 2n = O ( n 2) (2.1.3) Ser at b (n) stiger langt saktere enn f (n). Det meste av beregningstiden på en datamaskin vil dermed gå med til elimineringen. 2.2 LU-faktorisering En LU-faktorisering av en kvadratisk matrise A er på formen A = LU (2.2.1) der L er nedre triangulær og U er øvre triangel. For eksempel [ ] [ ] [ ] 2 3 1 0 2 3 A = = LU = 8 5 4 1 0 7
KAPITTEL 2. NUMERISK LØSING AV LIGNINGSSYSTEMER 18 For matrisen A er L matrisen med multiplikatorene m jk i Gauss eliminasjonen og med hoveddiagonal 1,..., 1. U er matrisen med det triangulære systemet på slutten av Gauss eliminasjonen. L og U kan finnes direkte, uten bruk av Gauss eliminering. Dette krever n 3 /3 operasjoner, altså omtrent halvparten så mange som Gauss eliminasjon som krever ca. 2n 3 /3. Når man har funnet (2.2.1) kan vi bruke det til å løse Ax = b med to steg, som krever n 2 operasjoner. Dette gjør man ved å sette Ly = b (2.2.2) Ux = y (2.2.3) og først løse (2.2.2) for y, så (2.2.3) for x. Her kan vi som sagt kreve at L har hoveddiagonal 1,..., 1, det kalles i så fall Doolittles metode. For A, L og U er gitt på formen (gjelder alle kvadratiske matriser, både større og mindre) A = a 11 a 12 a 13 a 21 a 22 a 23 L = 1 0 0 m 21 1 0 U = u 11 u 12 u 13 0 u 22 u 23 a 31 a 32 a 33 m 31 m 32 1 0 0 u 33 kan elementene i L = [m jk ] og U = [u jk ] beregnes fra følgende formler u 1k = a 1k, k = 1,..., n (2.2.4) m j1 = a j1 u 11, j = 2,... n (2.2.5) j 1 u jk = a jk m js u sk, k = j,..., n; j 2 (2.2.6) m jk = 1 u kk s=1 ( ) k 1 a jk m js u sk, j = k + 1,..., n; k 2 (2.2.7) s=1 2.3 Løsing ved iterasjon Gauss eliminasjon og varianter av den er direkte metoder for løsing av systemer, de gir en løsning etter et antall beregninger som kan bestemmes på forhånd. Indirekte- eller iterative metoder gir en aproksimasjon til den egentlige løsningen, og hvis metoden er vellykket får man et mer nøyaktig svar for hver beregningssyklus. Iterative metoder brukes hvis konvergensen er rask (hvis matriser har store verdier langs hoveddiagonale), slik at vi kan spare regneoperasjoner sammenlignet med en direkte metode, eller hvis matrisen veldig mange nuller.
KAPITTEL 2. NUMERISK LØSING AV LIGNINGSSYSTEMER 19 2.3.1 Gauss-Seidel iterasjonsmetode Gauss-Seidel iterasjonen beskrives best med et eksempel. Eksempel 3. Øving 12, Oppgave 3 b) og c). Ser på det systemet 1 0, 2 0, 4 3, 8 A = 0, 25 1 0, 5, b = 0, 5 0, 25 0, 375 1 4, 875 Løsning Skriver først systemet om til formen x 1 = 0, 2x 2 0, 4x 3 +3, 8 x 2 = 0, 25x 1 0, 5x 3 0, 5 x 3 = 0, 25x 1 0, 375x 2 +4, 875 Fortsetter med en gjetning for startverdiene x (0) 1 = x (0) 2 = x (0) 3 = 1. Når man har beregnet en ny verdi for x k, brukes denne verdien med en gang videre i beregningen av neste. Dvs. at når man har beregnet en ny tilnærming for x 1, brukes denne med en gang videre i beregningen av x 2 osv. Dette kan skrives må følgende måte for det første beregningsleddet x (1) 1 = 0, 2x (0) 2 0, 4x (0) 3 +3, 8 x (1) 2 0, 25x (1) 1 0, 5x (0) 3 0, 5 x (1) 3 0, 25x (1) 1 0, 375x (1) 2 +4, 875 Med dette får man følgende iterasjon x (1) 1 = 3, 20000 x (1) 2 = 0, 800000 x (1) 3 = 4, 37500... En annen måte å skrive iterasjonsformelen på er x (5) 1 = 2, 00004 x (5) 2 = 0, 998060 x (5) 3 = 3, 99717 x (m+1) = b Lx (m+1) Ux (m) (2.3.1) [ ] Der x (m) = x (m) j er den m-te approksimasjonen og x (m+1) = x (m+1) j er den (m + 1)-te approksimasjonen. Matrisen A må tilfredsstille a jj 0 for alle j. Skrevet på komponentform er (2.3.1) lik x (m+1) j = 1 j 1 n b j a jk x (m+1) k a jk x (m) k (2.3.2) a jj k=1 k=j+1 Merknad. Metoden som er brukt i eksempelet er som regel den letteste, men (2.3.2) er svært nyttig hvis en oppgave skal programmeres i f.eks. Matlab.
KAPITTEL 2. NUMERISK LØSING AV LIGNINGSSYSTEMER 20 2.3.2 Jacobi iterasjon Gauss-Seidel iterasjon er en metode med fortløpende korreksjoner, ettersom man alltid bruker den nyeste aproksimasjonen til en komponent så snart den er blitt beregnet. Jacobi iterasjon derimot er en metode med samtidige korreksjoner, dvs. at ingen komponenter x (m) benyttes i i beregningen før alle komponenter i x (m) er blitt beregnet, man bruker altså bare komponentene fra x (m 1) i beregningene. Jacobi iterasjon er ellers lik Gauss-Seidel iterasjon på alle andre måter. Jacobi iterasjon kan på matriseform skrives x (m+1) = b + (I A) x (m) (2.3.3) Denne metoden konvergerer for alle x (0) hvis og bare hvis spektralradiusen (den maksimale verdien til abosoluttverdiene av komponentene) til I A er mindre enn 1. Eksempel 4. Øving 12, Oppgave 3 d). Ser på samme system som i forige oppgave 1 0, 2 0, 4 A = 0, 25 1 0, 5, b = 3, 8 0, 5 0, 25 0, 375 1 4, 875 Regneskjemaet for Jacobi iterasjonen blir da 3, 8 1 0 0 1 0, 2 0, 4 x (m+1) = 0, 5 + 0 1 0 0, 25 1 0, 5 4, 875 0 0 1 0, 25 0, 375 1 x 1 x 2 x 3 (m) x (m+1) 1 = 3, 8 0, 2x (m) 2 0, 4x (m) 3 x (m+1) 2 = 0, 5 0, 25x (m) 1 + 0, 5x (m) 3 x (m+1) 3 = 4, 875 0, 25x (m) 1 0, 375x (m) 2 (Man ser at ingen komponeter i I A har absoluttverdi større enn 1, matrisen tilfredsstiller dermed spektralradiuskravet). Man får, etter 5 iterasjoner x (5) 1 = 1, 9993 x (5) 2 = 1, 0004 x (5) 3 = 3, 9968 Jacobi vs. Gauss-Seidel iterasjon Jacobi iterasjon konvergerer tregere enn Gauss-Seidel iterasjon, men Jacobi iterasjon vil likevel kunne beregnes raskere med parallell-prosessorer, da hver x (m) n kan beregnes parallellt, i motsetning til med Gauss-Seidel iterasjon der man må beregne hver x (m) n i serie.
KAPITTEL 2. NUMERISK LØSING AV LIGNINGSSYSTEMER 21 2.4 Dårlig betingede systemer ( ill conditioning ) Et beregningsproblem sies å være dårlig betinget ( ill-conditioned ) hvis små endringer i input-data fører til store endringer i løsningen. Det sies å være godt betinget dersom små forandringer i input bare gir små forandringer i løsningen. Geometrisk kan man se på det som at et system er dårlig betinget hvis og bare hvis de to lingengene i gir nesten parallelle linjer (se Figur 2.1), slik at krysningspunktet (altså løsningen på systemet) flytter seg betydelig hvis man flytter den ene linjen bare litt. Prinsippet for systemer med flere ligninger er lignende, men geometrien er ikke lenger til hjelp. Figur 2.1: Figuren viser to plott. Det til venstre illustrer et godt betinget system, det til høyre et dårlig betinget system.
Kapittel 3 Numerisk løsing av diff. lign. 3.1 Metoder for førsteordens ODL Ordinære differensial ligninger (ODL) av første orden er generelt på formen F = (x, y, y ) = 0, og kan ofte skrives på den eksplisitte formen y = f (x, y). Et initialverdiproblem for denne ligningen er på formen y = f (x, y), y (x 0 ) = y 0 (3.1.1) der x 0 og y 0 er gitt, og vi antar at problemet har en unik løsning på intervallet a < x < b som inneholder x 0. I denne seksjonen skal vi se på metoder for å aproksimere numeriske verdier for løsningen y (x) av (3.3.1) for x verdier med lik avstand mellom hverandre x 1 = x 0 + h, x 2 = x 0 + 2h,..., x n = x 0 + nh der steglengden h er et bestemt tall. Vi skal i denne seksjonen se på Eulers metode, Heuns metode og Runge-Kutta metoden. En sammenligning av disse metodene er vist i Figur 3.1 Eksakt Euler, h = 0.4 Heun, h = 0.4 RK, h = 0.4 Figur 3.1: Figuren viser et plott som sammenligner Euler, Heun, og RK sine metoder. Man ser at Euler er langt mindre nøyaktig enn de to andre metodene. 22
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 23 3.1.1 Eulers metode En enkel (veldig grov og lite brukt) metode for løsing av ODL er Eulers metode, som er utledet fra Taylorrekker. Den generelle formelen er y n+1 = y n + h f (x n, y n ) n = 0, 1, 2,... (3.1.2) Geometrisk er det en aproksimasjon av kurven med en mangekant hvis første side tangerer kurven f (x) i x 0. Mindre h gir bedre nøyaktighet. (Se Figur 3.2). "Beregningspunkter" Tilnaerming fra Eulers metode Egentlig f(x) (x 2,y 2 ) (x o,y 0 ) df dx (x0,y0) (x 1,y 1 ) df dx (x1,y1) h h Figur 3.2: Figuren viser et plott der den heltrukne linja er den eksakte løsningen av problemet, f (x), og den striplede mangekanten viser aproksimasjonen fra Eulers metode, der beregningene er gjort i punktene (x 0, y 0 ), (x 1, y 1 ), (x 2, y 2 ). Eksempel 5. Øving 13, Oppgave 1 b). Har gitt differensialligningen Har at f (x n, y n ) = yn x n Eulers metode y = y x ( y x) 2, 1 x 2, y (1) = 1 Skal finne numerisk tilnærmelse ved bruk av Eulers metode og h = 0, 25. Løsning ( ) 2 yn x n og (x0, y 0 ) = (1, 1). Det gir følgende formel for y n+1 = y n + h Og resultatet av iterasjonene er y 0 = 1 y 1 = 1 + 0, 25 ( y n x n ( 1 1 y 4 = 1, 0932 + 0, 25 ( yn x n ) 2 ) ( ) ) 2 1 = 1 1 ( 1, 0932 1, 75, n = 1, 2,... ( ) ) 2 1, 0932 = 1, 1518 1, 75
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 24 3.1.2 Heuns metode (forbedret Eulers metode) Eulers metode stammer fra Taylorrekker. Hvis man tar hensyn til flere ledd i rekken (Eulers metode tar bare hensyn til de to første), kan man få metoder med høyere orden (raksere konvergens) og presisjon. En slik metode er Heuns metode. Den generelle formelen for Heuns metode er todelt y n+1 = y n + h f (x n, y n ) (3.1.3) y n+1 = y n + 1 2 h [f (x n, y n ) + f ( x n+1, y n+1)], n = 0, 1, 2,... (3.1.4) Man beregner først (3.1.3), og bruker den videre i (3.1.4). Heuns metode er en predictor-corrector metode, fordi vi i hvert skritt forutsier en verdi med (3.1.3), så korrigerer vi den med (3.1.4). Eksempel 6. Øving 13, Oppgave 1 b). Har gitt differensialligningen y = y x ( y x) 2, 1 x 2, y (1) = 1 Skal finne numerisk tilnærmelse ved bruk av Heuns metode og h = 0, 5. Løsning Skriver for ordens skyld om formelen for Heuns metode til der y n+1 = y n + 1 2 (k 1 + k 2 ), n = 1, 2,... k 1 = h f (x n, y n ) k 2 = h f (x n+1, y n + k 1 ) ( ) 2 I dette tilfellet med f (x n, y n ) = yn x n yn x n får vi da at k 1 = h k 2 = h ( y n ( yn x n x n ( y n + k 1 x n + h ) 2 ) ( ) ) 2 yn + k 1 x n + h Som innsatt i y n+1 sammen med (x 0, y 0 ) = (1, 1) gir følgende iterasjon y 1 = 1, 05556 y 2 = 1, 16859
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 25 3.1.3 Klassisk Runge-Kutta metode (RK4) Runge-Kutta metoden er langt mer nøyaktig enn Heuns metode. I Runge-Kutta metoden beregner man for hvert skritt først fire hjelpestørrelser k 1, k 2, k 3, k 4, og så den nye verdien y n+1. Den generelle algoritmen for n = 0, 1, 2,... er k 1 = h f (x n, y n ) (3.1.5) ( k 2 = h f x n + 1 2 h, y n + 1 ) 2 k 1 (3.1.6) ( k 3 = h f x n + 1 2 h, y n + 1 ) 2 k 2 (3.1.7) k 4 = h f (x n + h, y n + k 3 ) (3.1.8) y n+1 = y n + 1 6 (k 1 + 2k 2 + 2k 3 + k 4 ) (3.1.9) Eksempel 7. Øving 13, Oppgave 1 b) Har gitt differensialligningen y = y x ( y x) 2, 1 x 2, y (1) = 1 Skal finne numerisk tilnærmelse ved bruk av Runge-Kuttas metode og h = 1. Løsning: ( ) 2 Har at f (x n, y n ) = yn x n yn x n og (x0, y 0 ) = (1, 1). Innsatt i algoritmen gir det k 1 = 0 ( ) 2 1 1 k 2 = 1, 5 = 0, 22222 1, 5 ( ) 2 1 + 0, 5 0, 22222 1 + 0, 5 0, 22222 k 3 = = 0, 19204 1, 5 1, 5 ( ) 2 1, 19204 1, 19204 k 4 = = 0, 24078 2 2 y 1 = 1 + 1 (0 + 2 0, 22222 + 2 0, 19204 + 0, 24078) = 1, 17822 6
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 26 3.2 Metoder for systemer og høyere ordens ODL Initialverdiproblemer for førsteordens systemer av ODL er på formen Eller skrevet på komponentform y = f (x, y), y (x 0 ) = y 0 (3.2.1) y 1 = f 1 (x, y 1,..., y m ), y 1 (x 0 ) = y 10 y 2 = f 2 (x, y 1,..., y m ), y 2 (x 0 ) = y 20 y m = f m (x, y 1,..., y m ), y m (x 0 ) = y m0 Man antar generelt at f er på en slik form at systemet har en unik løsning på ett åpent x-intervall som inneholder x 0. Merk at 3.2.1 inkluderer initialverdiproblemer for systemer at m-te ordens ODL ( y (m) = f x, y, y, y,..., y (m 1)) (3.2.2) og initialforhold y (x 0 ) = K 1, y (x 0 ) = K 2,..., y (m 1) (x 0 ) = K m i spesielle tilfeller. Denne koblingen fremkommer når man setter Man får da systemet Med initialbetingelsene y 1 = y, y 2 = y, y 3 = y,..., y m = y (m 1) (3.2.3) y 1 = y 2 y 2 = y 3. y m 1 = y m y m = f (x, y 1,..., y m ) y 1 (x 0 ) = K 1, y 2 (x 0 ) = K 2,..., y m (x 0 ) = K m
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 27 3.2.1 Eulers metode for systemer Metoder for løsing av én enkelt førsteordens ODL kan utvides til systemer ved å bare skrive vektorfunksjoner f og y i stedet for skalarfunksjoner f og y, mens x forblir en skalar variabel. Eulers metode for systemer er i likhet med Eulers metode for én enkelt ODL ikke nøyaktig nok for praktiske formål, men den er enkel. Eulers metode for systemer kan skrives eller på komponentform y n+1 = y n + h f (x n, y n ) (3.2.4) y 1,n+1 = y 1,n + h f 1 (x n, y 1,n, y 2,n,..., y m,n ) y 2,n+1 = y 2,n + h f 2 (x n, y 1,n, y 2,n,..., y m,n ) y m,n+1 = y m,n + h f m (x n, y 1,n, y 2,n,..., y m,n ) Eksempel 8. Skal løse initialverdiproblemet for et dempet fjæringssystem y + 2y + 0, 75y = 0, y (0) = 3, y (0) = 2, 5 vha. Eulers metode for systemer med steglengde h = 0, 2 for 0 < x < 1 der x er tid. Løsning: Skriver først om ligningen Setter veidere inn i (3.2.4) og får y 1 = f 1 (x, y 1, y 2 ) = y 2 y 2 = f 2 (x, y 1, y 2 ) = 2y 2 0, 75y 1 y 1,n+1 = y 1,n + h f 1 (x n, y 1,n, y 2,n ) = y 1,n + h y 2,n = y 1,n + 0, 2y 2,n y 2,n+1 = y 2,n + h f 2 (x n, y 1,n, y 2,n ) = y 2,n + 0, 2 ( 2y 2,n 0, 75y 1,n ) Startbetingelsene er y (0) = y 1 (0) = 3, y (0) = y 2 (0) = 2, 5. Iterasjonen gir følgende resultater y 1,0 = 3, 0, y 2,0 = 2, 5 y 1,1 = 2, 5, y 2,1 = 2, 016 y 1,2 = 2, 110, y 2,2 = 1, 642 y 1,5 = 1, 349, y 2,5 = 0, 941
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 28 3.2.2 Runge-Kutta metoden for systemer Runge-Kutta metoden for systemer finnes på samme måte som Eulers metode ved å skrive vektorfunksjoner i stedet for skalarer. For den klassiske Runge-Kutta metoden (RK4) for systemer får man da initialverdiene, de fire hjelpeverdiene for hvert skritt n = 0, 1,..., N 1 og til slutt den nye verdien y n+1 på følgende form y (x 0 ) = y 0 (3.2.5) k 1 = h f (x n, y n ) (3.2.6) ( k 2 = h f x n + 1 2 h, y n + 1 ) 2 k 1 (3.2.7) ( k 3 = h f x n + 1 2 h, y n + 1 ) 2 k 2 (3.2.8) k 4 = h f (x n + h, y n + k 3 ) (3.2.9) y n+1 = y n + 1 6 (k 1 + 2k 2 + 2k 3 + k 4 ) (3.2.10) Fremgangsmåten for løsing av systemer med Runge-Kutta metoden er ellers lik metoden for å løse de med Eulers metode for systemer (omskriving av m-te ordens ligninger etc.). 3.3 Metoder for elliptiske PDL Denne seksjonen omhandler numerikk for partielle differensial ligninger, spesielt Laplace og Poisson ligningene. Både Laplace- og Poisson ligningen er kvasilineære PDL (PDL med lineær høyeste derivert) av andre orden med to variable x og y. Denne typen linginger kan generelt skrives på formen au xx + 2bu xy + cy yy = F (x, y, u, u x, u y ) (3.3.1) der u er en ukjent funksjon av x og y (løsningen man søker) og F er en gitt funksjon av variablene. Begge ligningene er også elliptiske fordi diskriminanten ac b 2 > 0. Problemer med elliptiske ligninger fører som regel til grenseverdiproblemer i et område R, som kalles et Første grenseverdi problem eller Dirchlet problem hvis u er bestemt på grensekurven C til R. Andre grenseverdi problem eller Neumann problem dersom u n (den normalderiverte av u) er bestemt på C. = u n Blandet problem dersom u er bestemt på én del av C og u n på den gjenværende delen. der C som regel er en lukket kurve.
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 29 3.3.1 Differensligninger for Laplace og Poisson ligingene I denne seksjonen ser vi på Laplace lingingen og Poisson ligningen 2 u = u xx + u yy = 0 (3.3.2) 2 u = u xx + u yy = f (x, y) (3.3.3) Dette er de to viktigste PDL for praktisk bruk. For å finne metoder for numerisk løsning av disse, bytter vi først ut de partiellderiverte med tilsvarende differenskvotienter, utledet fra Taylor formelen u xx (x, y) = 1 [u (x + h, y) 2u (x, y) + u (x h, y)] (3.3.4) h2 u yy (x, y) = 1 [u (x, y + k) 2u (x, y) + u (x, y k)] (3.3.5) k2 Setter h = k og setter (3.3.4) og (3.3.5) inn i (3.3.3) og får differensligningen som svarer til Poisson ligningen (3.3.3) u (x + h, y) + u (x, y + h) + u (x h, y) + u (x, y h) 4u (x, y) = h 2 f (x, y) (3.3.6) Får på samme måte differensligningen som svarer til Laplace ligningen (3.3.2) u (x + h, y) + u (x, y + h) + u (x h, y) + u (x, y h) 4u (x, y) = 0 (3.3.7) Der h er nettstørrelse ( mesh ). Geometrisk kan man tolke det som at man i (3.3.7) ser på forholdet mellom u (x, y) og de fire nabopunktene (se Figur 3.3). Man tolker det som at u i (x, y) er lik gjennomsnittet av verdiene til u i de fire nabopunktene. (x, y+h) h (x h, y) h h (x+h, y) h (x, y h) Figur 3.3: Figuren viser et plott som illusterer prinsippet for differensligninger.
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 30 3.3.2 Dirchlet problem I numerikken løses Dirchlet problemer i et område R ved å velge en h og sette opp et kvadratisk nett av horisontale og vertikale rette linjer med avstand h. Punktene der de krysser kalles noder, se Figur 3.4. Deretter aproksimerer man den gitte PDLen med en differensligning som gir forholdet mellom de ukjente verdiene til u i nodene i R og grenseverdiene. Dette gir et lineært system av algebraiske ligninger, og løsningen av dette systemet er en aproksimasjon til de ukjente verdiene til u i nodene i R. Dette systemet løser man gjerne med en iterasjonsmetode, gjerne Gauss-Seidel metoden, som for PDL ofte kalles Liebmanns metode. Denne tilnærmingen illustreres best med et eksempel. For enkelhetens skyld brukes følgende notasjon (se også Figur 3.4) P ij = (ih, jh), u ij = u (ih, jh) (3.3.8) Med denne notasjonen blir (3.3.7) for en hvilket som helst node P ij u i+1,j + u i,j+1 + u i 1,j + u i,j 1 4u ij = 0 (3.3.9) P43 P12 P22 P11 P21 P31 Figur 3.4: Plottet viser et område i xy-planet dekt med et nett h. Den heltrukne linja er kurven C som omslutter området R.
KAPITTEL 3. NUMERISK LØSING AV DIFF. LIGN. 31 Eksempel 9. Dette eksempelet tar for seg en løsning av Laplace ligningen med Liebmanns metode. De fire 12 cm lange sidene av en kvadratisk plate laget av et homogent materiale hodles ved konstant temperatur 0 C og 100 C som vist i Figur 3.5. Skal i denne oppgaven bruke et nett med h = 4 cm og bruke Liebmanns metode til å finne temperaturen i nodene. Løsning: Vi ser her på systemet som tidsuavhengig, varmeligningen u t = c 2 (u xx + u yy ) reduseres da til Laplace ligningen (3.3.2). Setter opp nettet som vist i 3.5 og ser på nodene i rekkefølgen P 11, P 21, P 12, P 22 (resten av nodene kjenner vi, ettersom det er oppgitt at randen har konstant temperatur). Bruker (3.3.9) og flytter alle termene fra randen til høyre side 4u 11 +u 21 +u 12 = 200 u 11 4u 21 +u 22 = 200 u 11 4u 12 +u 22 = 100 u 21 +u 12 4u 22 = 100 Løser så systemet med Liebmanns metode (Gauss-Seidel) ved å først dele på -4 og så flytte termer til høyre side u 11 = 0., 25u 21 +0, 25u 12 +50 u 21 = 0, 25u 11 +0, 25u 22 +50 u 12 = 0, 25u 11 +0, 25u 22 +25 u 22 = 0, 25u 21 +0, 25u 12 +25 Hvis man videre setter u 11 = x 1, u 21 = x 2, u 12 = x 3, u 22 = x 4 er iterasjonsprosessen identisk med den forklart for Gauss-Seidel iterasjon i Underseksjon 2.3.1, med 100, 100, 100, 100 valgt som startverdier. Gitt problem Nett og noder u = 0 u = 0 P13 P23 u = 100 R u = 100 P02 P12 P22 P32 u = 100 R u = 100 P01 P11 P21 P31 P10 P20 u = 100 u = 100 Figur 3.5: Figuren illustrerer det gitte problemet i eksempelet og den samme figuren med nett og noder.
Bibliografi [1] Kreyszig, E. Advanced Engineering Mathematics, 9th ed.; John Wiley and Sons, Inc, 2006. 32
Register D differenskvotienter, 29 differensligningen, 29 Differensligninger, 29 Dirchlet problem, 28, 30 Doolittles metode, 18 E ekstrapoler verdi, 13 elliptiske, 28 Eulers metode, 23 Eulers metode for systemer, 27 F Feilestimat, 10 Feilproplantning, 5 fikspunktet, 6 fikspunkt-iterasjon, 6 floating point, 4 G Gauss-Seidel iterasjon, 19 I ill-conditioned, 21 Interpolasjon, 8 interpolasjon, 11 interpolasjonspolynom, 8 J Jacobi iterasjon, 20 K koeffisientmatrisen, 16 Konvergens, 7 kvasilineære, 28 LU-faktorisering, 17 N nettstørrelse, 29 Neumann problem, 28 Newtons metode, 7 node, 8 noder, 30 normalderiverte, 28 O orden, 17 ordenen, 7 P partielle differensial ligninger, 28 Poisson ligningen, 28, 29 R relativ feil, 5 Runge-Kutta metoden for systemer, 28 S Signifikante siffer, 4 Simpsons regel, 13 spektralradius, 20 steglengde, 22 T trapes-metoden, 12 U usikkerhet, 5 L Laplace ligningen, 28 Laplace lingingen, 29 Liebmanns metode, 30 Løsningsvektor, 16 33