FYSIKENS MATEMATISKA METODER

Relevanta dokument
TMA226 datorlaboration

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

Föreläsning 14: Exempel på randvärdesproblem. LU-faktorisering för att lösa linjära ekvationssystem.

Egenvärdesproblem för matriser och differentialekvationer

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

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

Vetenskapliga beräkningar III 139

Konvergens för iterativa metoder

Kapitel 9. Partiella differentialekvationer

= e 2x. Integrering ger ye 2x = e 2x /2 + C, vilket kan skrivas y = 1/2 + Ce 2x. Här är C en godtycklig konstant.

CHALMERS Finit Elementmetod M3 Institutionen för tillämpad mekanik. Teorifrågor

Numerisk lösning till den tidsberoende Schrödingerekvationen.

Projekt Finit Element-lösare

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

DOP-matematik Copyright Tord Persson. Gränsvärden. Uppgift nr 10 Förenkla bråket h (5 + h) h. Uppgift nr 11 Förenkla bråket 8h + h² h

Tentamen, del 2 Lösningar DN1240 Numeriska metoder gk II F och CL

9.3. Egenvärdesproblem

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A. 1. En svängningsrörelse beskrivs av

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 11-14, 16/11-28/

FMNF15 HT18: Beräkningsprogrammering Numerisk Analys, Matematikcentrum

FEM1: Randvärdesproblem och finita elementmetoden i en variabel.

Optimering, exempel. Funktionens enda stationära punkt är alltså origo. Den ligger också i det inre av mängden.

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

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

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

Sammanfattning (Nummedelen)

Interpolation Modellfunktioner som satisfierar givna punkter

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

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Runge-Kuttas metoder. Repetition av FN6 (GNM kap 6.

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

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

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

6. Temperaturen u(x) i positionen x av en stav uppfyller värmeledningsekvationen. u (x) + u(x) = f(x), 0 x 2, u(0) = 0 u(2) = 1,

SF1544 LABORATION 2 INTEGRATION, MONTE-CARLO OCH BLACK-SCHOLES EKVATION FÖR OPTIONER

Numeriska metoder. Kompendiet. Lektor: Yury Shestopalov. Tel Karlstads Universitet

Laboration 1 i SF1544: Öva på Matlab och konstruera en optimal balk Avsikten med denna laboration är att:

20 Gamla tentamensuppgifter

Projekt om Finita Elementmetoden i kursen PDE F, TMA690, HT 2012

Lösningsskiss för tentamen Vektorfält och klassisk fysik (FFM232)

OH till Föreläsning 14, Numme I2, God programmeringsteknik

TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA671

Omtentamen i DV & TDV

SF1626 Flervariabelanalys

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

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Differentialekvationer. Repetition av FN5 (GNM kap 6.

5B1134 Matematik och modeller Lösningsförslag till tentamen den 12 januari 2005

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

u(x) + xv(x) = 0 2u(x) + 3xv(x) = sin(x) xxx egentliga uppgifter xxx 1. Sök alla lösningar till den homogena differentialekvationen

Numerisk Analys, MMG410. Lecture 10. 1/17

1. Beräkna volymen av det område som begränsas av paraboloiden z = 4 x 2 y 2 och xy-planet. Lösning: Volymen erhålles som V = dxdydz.

Laboration 6. Ordinära differentialekvationer och glesa system

Rapportexempel, Datorer och datoranvändning

Lösningsförslag till skrivningen i Vektorgeometri (MAA702) måndagen den 30 maj 2005

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

8 + h. lim 8 + h = 8

Gripenberg. Mat Grundkurs i matematik 1 Tentamen och mellanförhörsomtagning,

, x > 0. = sinx. Integrera map x : x 3 y = cosx + C. 1 cosx x 3. = kn där k är. k = 1 22 ln 1 2 = 1 22 ln2, N(t) = N 0 e t. 2 t 32 N 1.

5B1146 med Matlab. Laborationsr. Laborationsgrupp: Sebastian Johnson Erik Lundberg, Ann-Sofi Åhn ( endst tal1-3

7 Extremvärden med bivillkor, obegränsade områden

Lösningar/svar till tentamen i MTM060 Kontinuumsmekanik Datum:

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

Partiella differentialekvationer och randvärdesproblem Separabla PDE Klassiska ekvationer och randvärdesproblem

Linjärisering, Jacobimatris och Newtons metod.

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

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

Omtentamen i DV & TDV

Lösningsförslag till tentamensskrivningen i Numerisk analys

Numeriska metoder, grundkurs II. Dagens program. Gyllenesnittminimering, exempel Gyllenesnittetminimering. Övningsgrupp 1

Fel- och störningsanalys

Matematisk statistik 9 hp Föreläsning 6: Linjärkombinationer

reella tal x i, x + y = 2 2x + z = 3. Här har vi tre okända x, y och z, och vi ger dessa okända den naturliga

1. Använd Laplacetransformen för att lösa differentialekvationen (5p) y (t) + 3y (t) + 2y(t) = 1, t > 0 y(0) = 1, y (0) = 1

Inledande matematik M+TD

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Tentamen i Analys B för KB/TB (TATA09/TEN1) kl 14 19

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

FFM234, Datoruppgift 2: Värmeledning

2x ex dx. 0 = ln3 e

Lösningar till SF1861/SF1851 Optimeringslära, 24/5 2013

= = i K = 0, K =

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Standardform för randvärdesproblem

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

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

Föreläsning 5, Matematisk statistik 7.5hp för E Linjärkombinationer

SF1545 Laboration 1 (2015): Optimalt sparande

Matlab övningsuppgifter

Användarmanual till Maple

Iterativa metoder för linjära ekvationssystem

Flervariabelanalys E2, Vecka 3 Ht08

Ordinära differentialekvationer (ODE) 1 1

MATLAB Laboration problem med lokala extremvärden

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

Envariabelanalys 5B1147 MATLAB-laboration Derivator

Glesa matriser från randvärdesproblem

Approximation av funktioner

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Partiella differentialekvationer (TATA27)

SF1626 Flervariabelanalys

Varning!!! Varning!!!

Transkript:

FYSIKENS MATEMATISKA METODER TREDJE UPPLAGAN TORBJÖRN ERIKSON HENRIK CHRISTIANSSON ERIK LINDAHL JOHAN LINDE LARS SANDBERG MATS WALLIN mfl Boken är typsatt i L A TEX med 11pt Times Printed in Sweden by Universitetsservice US AB, Stockolm Webbadress: wwwus-abcom Copyrigt c 1996, 1997, 2001 Teoretisk fysik, KTH ISBN 91-7283-143-X

Kapitel 8 Numeriska metoder To err is uman, but to really mess tings up you need a computer Hittills ar vi studerat olika analytiska metoder för att lösa linjära partiella differentialekvationer Vi ar löst relativt enkla problem där ekvationer oc randvillkor varit anpassade för de metoder vi aft till vårt förfogande Tyvärr är detta ofta inte fallet för problem ute i den sk verkligeten, utan det är vanligt både med ickelinjära ekvationer oc komplicerade ränder Om man inte vill göra mycket kraftiga förenklingar av modellen måste man då använda approximativa, främst numeriska lösningsmetoder Under de senaste tjugo åren ar enorma framsteg gjorts när det gäller numeriska metoder för partiella differentialekvationer Tack vare den snabba utvecklingen av datorer oc nya bättre algoritmer ar komplicerade problem inom strömningsmekanik, elasticitets- oc potentialteori blivit möjliga att studera Det första steget i en numerisk lösning är att vi måste föra över problemet till en diskret form, dvs representera funktionen med ett ändligt antal parametrar Vi ska beandla två olika sätt att göra detta Enklast är kanske att välja funktionens värden i ett antal punkter oc ersätta derivator med differenser; sådana metoder kallas finita differensmetoder (FDM) Alternativt kan vi tänka på kapitel 4 oc välja ett ändligt antal basfunktioner, vars koeffecienter vi varierar för att få en bra lösning Detta är grunden för finita elementmetoder (FEM) 229

230 Kapitel 8 Numeriska metoder 81 Finita differensmetoder (FDM) 811 Grundläggande idéer Finita differensmetoden går ut på att punktvis ersätta derivatorna i ekvationerna med differensapproximationer Vi börjar därför med att ta fram sådana approximationer till derivator Låt u = u(x,y) vara en analytisk funktion av två variabler, x oc y, i ett område Ω av xy-planet Eftersom u(x, y) är analytisk kan funktionen utvecklas i en taylorserie med avseende på variabeln x, vilket kan göras på två sätt u(x +, y) = u(x, y) = u(x, y) + u x (x, y) + u xx (x, y) 2 2! + u xxx(x, y) 3 3! + O(4 ) (81) u(x, y) u x (x, y) + u xx (x, y) 2 2! u xxx(x, y) 3 3! + O(4 ), (82) Vi får då följande uttryck på den partiella derivatan med avseende på x med jälp av (81) u(x +,y) u(x,y) u x (x,y) Detta kallas för framåtapproximation av derivatan På samma sätt finner man med jälp av (82) u(x,y) u(x,y) u x (x,y), vilket kallas för bakåtapproximation av derivatan Om vi adderar (81) oc (82) får vi andraderivatan med avseende påx u xx (x,y) 1 ) (u(x 2 +,y) 2u(x,y) + u(x,y) På samma sätt kan vi utveckla partiella derivator med avseende på y, tex u yy (x,y) 1 ) (u(x,y k 2 + k) 2u(x,y) + u(x,y k) Man diskretiserar området Ω i xy-planet genom att dela upp det i små delområden Ω ij enligt { xj = x 0 + j där j = 0,1,2,,N y i = y 0 + ik där i = 0,1,2,,M Arean av Ω ij är k Detta rutnät, vars skärningspunkter kallas noder, ersätter nu Ω

81 Finita differensmetoder (FDM) 231 y Mk k (0,0) N x Figur 81: Rutnät över Ω där ofylld cirkel motsvarar en inre nod, medan en fylld cirkel är en del av randen till området 812 Randvärdesproblem Vi börjar med att beandla tidsoberoende funktioner som tex lyder Laplaces eller Poissons ekvation i ett område av xy-planet, samt uppfyller givna randvillkor PDE u(x,y) = u xx (x,y) + u yy (x,y) = F(x,y) (83) Vi approximerar vår differentialekvation med motsvarande differensekvation, vilket med variablerna x oc y samt = k ger 1 ( ) 2 u(x+, y)+u(x, y+)+u(x, y)+u(x, y ) 4u(x, y) = F(x, y) (84) För att förenkla skrivsättet inför vi konventionen 1 Alltså får (84) utseendet u(x,y) = u i,j, u(x,y + ) = u i+1,j, u(x,y ) = u i 1,j, u(x +,y) = u i,j+1, u(x,y) = u i,j 1 1 OBS! Vi ar valt index så att i motsvarar radnumret oc j kolumnnumret i den matris som uppstår

232 Kapitel 8 Numeriska metoder y Mk k u i,j (0,0) N x Figur 82: Randvärdesproblem där vi ar uttryckt u i,j i de närliggande nodernas värden 1 2(u i,j+1 + u i+1,j + u i,j 1 + u i 1,j 4u i,j ) = F i,j (85) Vi löser ut värdet i noden (i, j) uttryckt i de närliggande nodernas värden u i,j = 1 4 (u i,j+1 + u i+1,j + u i,j 1 + u i 1,j ) 2 4 F i,j (86) Noder som ligger på randen sätts lika med de givna randvillkoren För att lösa denna differensekvation kan man tex använda Liebmanns metod: Vi börjar med att gissa ett initialvärde för de inre noderna, vanligtvis genom att sätta dem lika med medelvärdet av alla randvillkor Sedan itererar vi över alla inre noder genom att ersätta det gamla nodvärdet med värdet enligt (86), tills vi ar kommit tillräckligt nära konvergens Vi räknar igenom ett exempel: Exempel 81 { 0 < x < 1 PDE u xx + u yy = 0, där 0 < y < 1 RV u(x, 0) = sin πx, u(x, 1) = 0, u(0, y) = 0, u(1, y) = 0

81 Finita differensmetoder (FDM) 233 Lösning: (analytisk) Med produktansatsen u(x, y) = X(x)Y (y) samt separationskonstanten λ = k 2 får vi på den senare villkoretk n = nπ Detta ger u n (x, y) = X n (x)y n (y) = c n sin nπx(sin nπy tannπ cosnπy) Vi superponerar u n (x, y) för att göra en anpassning till det första randvillkoret, u(x, 0) = sin πx Detta resulterar i lösningen ( u(x, y) = sin πx cosπy sinπy ) tanπ Lösning: (numerisk) Om vi diskretiserar så att vi får fyra inre noder, dvs = 1 3, får vi enligt (85) fyra ekvationer att lösa 4u 11 + 0 + sin(π/3) + u 12 + u 21 = 0, 4u 12 + u 11 + sin(2π/3) + 0 + u 22 = 0, 4u 21 + 0 + u 11 + u 22 + 0 = 0, 4u 22 + u 21 + u 12 + 0 + 0 = 0 Vi väljer en iterationsmetod för att bestämma lösningen till ovanstående ekvationssystem, tex Liebmanns metod Vi väljer initialvärdet noll för alla inre noder oc använder sedan (86) för att iterera fram vår lösning enligt nedanstående tabell steg u 11 u 12 u 21 u 22 1 0 0 0 0 2 0,2165 0,2165 0 0 3 0,2706 0,2706 0,0541 0,0541 4 0,2977 0,2977 0,0812 0,0812 14 0,3247 0,3247 0,1082 0,1082 analytiskt 0,2999 0,2999 0,0937 0,0937 Värdena för den exakta analytiska lösningen i våra nodpunkter är givna sist, under strecket i tabellen Lägg märke till att det är först i steg 14 som beräkningarna ar konvergerat i fjärde decimalen Att resultatet där inte särskilt väl stämmer överens med den analytiska lösningen beror på att vi ar använt en väldigt grov indelning av kvadraten (Det goda resultatet efter fyra iterationer är en ren slump) Lösningens utseende ges i figur 83 Om man väljer ett svårare randvillkor är det en bra oc enkel övning att med Maple V undersöka ur många termer som beövs i den analytiska lösningen för att uppnå samma noggrannet som i den numeriska

234 Kapitel 8 Numeriska metoder Figur 83: (a): Analytisk lösning i xy-planet (b): Analytisk lösning för y = 1 3 samt jämförelse med den numeriska lösningen (den streckade linjen), där vi sammanbundit noderna Vi kan också skriva ekvationssystemet i exempel 81 i matrisform Au = b: 4 1 1 0 1 4 0 1 1 0 4 1 0 1 1 4 u 11 u 12 u 21 u 22 = sin(π/3) sin(2π/3) 0 0 Om vi minskar intervallängden, dvs vi ökar antalet inre noder, kommer antalet ekvationer i ekvationssystemet att öka I allmänet är antalet ekvationer lika med antalet inre noder Att lösa sådana stora matrissystem är vanligtvis besvärligt, men eftersom differensekvationen (86) endast innefattar de fyra närliggande noderna blir A en tridiagonalmatris med fransar, dvs den inneåller många nollelement Iterativa metoder som är användbara för dessa glesa system är bla Jacobis oc Gauss-Seidels metoder Exempel 81 är ett diricletproblem Om randvillkoren istället var givna som neumannvillkor måste dessa derivator på randen också ersättas med differensapproximationer 813 Begynnelsevärdesproblem Om vi till skillnad från avsnitt 812 vill beandla problem med tidsutveckling, dvs vi ar variablerna x oc t, får vi ett begynnelsevärdesproblem Till skillnad från randvärdesproblem där vi finner en approximativ lösning genom att iterera måste vi ta änsyn till att tidsutvecklingen går i en specifik riktning framåt Vi