Partiella Differentialekvationer F
Projekt 2
Uppgiften består i att (välj 1,2,3,4 och 7 alternativt 1,2,3,5 och 6)
- Studera med hjälp av matlab programmet/gui'n PP vad
"styckvisa polynom" (Piecewise
Polynomials) är för något, och hur väl en given funktion kan
approximeras med sådana funktioner. Besvara de frågor som
här dyker upp. Guin består av två "designfiler"
PP.m och PP.mat, och en
"administrationsfil"
PPmod.m, som du kopierar hem genom att
"shift-klicka" på länkarna, och kör genom att ge kommandot
PP vid din matlab prompt.
5.32.
- Förstå interpolationsuppskattningarna (14.1-2) och dess
härledning i boken, liksom motsvarande uppskattningar i en dimension
(se bokens Theorem 5.4 och problem 5.32 och motsvarande övn.
i föreläsningsanteckningarna till lecture 10).
- Komplettera och testa koden i (shift klicka hem)
MyPoissonSolver.m för
lösning av ekv (-au')'+cu=f för 0<x<1, med givna randvillkor
i x=0 och x=1. Tillämpa på valfritt problem av intresse.
- Skriva ett matlabprogram för lösning av
värmeledningsekvationen i
en rumsdimension med givna begynnelse- och randvillkor, med cG1
finita element i rumsled och cG1/Crank-Nicolson
resp. dG0/implicit Euler i tidsled. Koden kan med fördel baseras
på din Poissonlösare, som i (shift klicka hem)
MyHeatEqSolver.m.
Alternativt kan du välja den mer primitiva metoden att hårdkoda
in ditt problem utgående från exempelkoden i länken nedan.
Simulera med data a) f=0, u(x,0)=1, u(0,t)=0, u'(1,t)=0
b) f=0, u(x,0)=0, u(0,t)=0, u'(1,t)=sin(10t). Kan man se några
kvalitativa skillnader mellan cG1 och dG0?
I mån av tid och intresse: Sök (med trial & error) en inre
värmekälla f(x,t) som (approximativt) reglerar innertempen till
0 grader givet det variabla värmeinflödet vid x=1 i b).
- Testa att lösa något två dimensionellt Poissonproblem med
hjälp av matlab koden
MyPLPoissonSolver.m, och något
motsvarande tidsberoende problem utgående från
MyPLHeatEqSolver.m och/eller
MyPLWaveEqSolver.m.
- Utveckla en egen lösare (baserad på MyPLPoissonSolver.m t.ex.)
för Schrödingerekvationen under lämpliga
förutsättningar, dvs sök egenfunktioner och motsvarande
egenvärden. För att (i matlab) lösa det resulterande diskreta
egenvärdesproblemet AU=EU finns funktionen eig.m. (se >>help eig).
- Skriva ett matlabprogram för lösning av vågekvationen i
en rumsdimension med givna begynnelse- och
randvillkor. För rumsdiskretiseringen används cG1 och
för tidsdiskretiseringen cG1 resp dG0 med ekvationen
skriven som ett första ordningens system med obekanta u
och v=du/dt.
Simulera a) longitudinella svängningar i en stav fixerad i en ända
och fri i den andra som i projekt 1 (hur fungerar de olika
metoderna för tidsdiskretisering i detta fall?), samt
b) Takoma bridge fenomenet med hjälp av ekvationen dv/dt=u''+f med
f=sin(3*pi*t)*sin(3*pi*x) och randvillkoren u(0,t)=0 och
u(1,t)=0 (alt f=sin(3/2*pi*t)*sin(3/2*pi*x) med randvillkor
u(1,0)=0 ersatt med u'(1,0)=0).
Här kan du kanske hitta en del värdefulla tips.
Examination: Kortfattad skriftlig rapport.
Uppgifterna 5-7
får betraktas som lite frivilliga.
Last modified: Mon Sept 2 13:23:19 MET DST 2002