Hoppa till huvudinnehållet
7. Randvärdesproblem och finita differenser

Randvärdesproblem och finita differenser

Diskretisering av derivator och randvillkor samt uppbyggnad av linjära ekvationssystem.

Översikt

Översikt

På nätet xi=a+ih,i=0,,Nx_i=a+ih,\qquad i=0,\ldots,N ersätts derivator med differenskvoter. Inre ekvationer och randvillkor bildar tillsammans ett linjärt system för nodvärdena.

Exempel

Arbetsgång

Taylorutveckla differenskvoten för att bestämma felordningen och inför randvillkoren i rätt rader i matrissystemet.

För u=f,u(a)=A,u(b)=B-u''=f,\qquad u(a)=A,\quad u(b)=B ger central differens i en inre nod ui1+2uiui+1h2=f(xi)\frac{-u_{i-1}+2u_i-u_{i+1}}{h^2}=f(x_i). Dirichletvärdena u₀ och u_N flyttas till högerledet i första respektive sista inre raden.

Exempel

Exempel: Neumannvillkor

Ett derivatavillkor måste diskretiseras med samma omsorg som differentialekvationen för att inte sänka metodens globala ordning.

Vid vänsterranden kan u(a)=γu'(a)=\gamma approximeras med den ensidiga andragradiga formeln 3u0+4u1u22h=γ\frac{-3u_0+4u_1-u_2}{2h}=\gamma. Den ger en särskild första rad i matrissystemet.

Fördjupning

Randvillkor och felordning

Taylorutveckling visar att centrala differenser normalt är av ordning två. Ensidiga första ordningens approximationer vid ett Neumannvillkor kan sänka hela metodens ordning om de inte förbättras. Kontrollera matrisens tecken, diagonalstruktur och hur kända randvärden påverkar högerledet.

Formler i området

Central differens för första derivatan

u(xi)ui+1ui12h=u(xi)+O(h2)u'(x_i)\approx\frac{u_{i+1}-u_{i-1}}{2h}=u'(x_i)+O(h^2)
Vad gör formeln?
Approximerar första derivatan med andra ordningens noggrannhet.
När får den användas?
u är tillräckligt glatt och nätet är likformigt nära xᵢ.

Central differens för andra derivatan

u(xi)ui12ui+ui+1h2=u(xi)+O(h2)u''(x_i)\approx\frac{u_{i-1}-2u_i+u_{i+1}}{h^2}=u''(x_i)+O(h^2)
Vad gör formeln?
Ger den tridiagonala kärnan i många diskretiserade randvärdesproblem.
När får den användas?
u har minst fyra kontinuerliga derivator lokalt och nätet är likformigt.

Framåt- och bakåtdifferens

u(xi)ui+1uih=u(xi)+O(h),u(xi)uiui1h=u(xi)+O(h)u'(x_i)\approx\frac{u_{i+1}-u_i}{h}=u'(x_i)+O(h),\quad u'(x_i)\approx\frac{u_i-u_{i-1}}{h}=u'(x_i)+O(h)
Vad gör formeln?
Ensidiga första ordningens approximationer, särskilt användbara vid randen.
När får den användas?
u är minst två gånger kontinuerligt deriverbar lokalt.

Diskretisering av linjärt randvärdesproblem

u+p(x)u+q(x)u=r(x)Au=b-u''+p(x)u'+q(x)u=r(x)\quad\Longrightarrow\quad A\mathbf{u}=\mathbf{b}
Vad gör formeln?
Samlar finita differenser och randvillkor i ett linjärt system.
När får den användas?
Randvillkoren införs konsekvent och nätet täcker hela intervallet.

Hänger ihop med

Kan du använda randvärdesproblem och finita differenser?

Lös en riktig tentauppgift från SF1523 med ledtrådar och lösningsförslag. Inget konto behövs.

Prova en uppgift