11. Mismunaaðferðir

11.1. Inngangur

Nú snúum við okkur að tölulegum aðferðum til þess að nálga lausnir á upphafs- og jaðargildisverkefnum fyrir venjulegar afleiðujöfnur og hlutafleiðujöfnur, en fram til þessa höfum við einungis fengist við fræðilegar lausnir. Það er undantekning frekar en regla að hægt sé að finna lausnarformúlu fyrir verkefnin, þannig að við þurfum að geta fundið nálganir á lausnum. Það er sjálfsagt að reyna að hafa aðferðirnar eins almennar og kostur er. Í þessum kafla fjöllum við um mismunaaðferðiren: difference method.
Smelltu fyrir ítarlegri þýðingu.
og í næsta kafla fjöllum við um bútaaðferðiren: finite element method.
Smelltu fyrir ítarlegri þýðingu.
.

Mismunaaðferðirnar hafa marga góða þann kosti og einkum þann að auðvelt er að útfæra þær. Þær hafa hins vegar þann ókost að snúið er að útfæra þær fyrir hlutafleiðujöfnur á öðrum svæðum en rétthyrningum. Bútaaðferðirnar eru aftur á móti flóknari í útfærslu, en hafa þann kost að hægt er að útfærða þær á alls kyns svæðum í planinu.

Við lítum fyrst á jaðargildisverkefni fyrir almenna annars stigs afleiðujöfnu á bili \([a,b]\) með raungildum stuðlum \(a_0,a_1,a_2\in C[a,b]\),

\[\begin{split}\begin{cases} Lu=a_2u''+a_1u'+a_0u=f,& \text{ á } ]a,b[\\ B_1u=\alpha_1u(a)-\beta_1u'(a)=\gamma_1,&(\alpha_1,\beta_1)\neq (0,0),\\ B_2u=\alpha_2u(b)+\beta_2u'(b)=\gamma_2,&(\alpha_2,\beta_2)\neq (0,0). \end{cases}\end{split}\]

og raungildri hægri hlið \(f\). Við munum eftir því að tilvistarsetningarnar fyrir annars stigs jöfnur gerðu ráð fyrir því að \(a_2\) hefði enga núllstöð á bilinu og þess vegna er engin takmörkun að gera ráð fyrir að \(a_2(x)<0\) í öllum punktum \(x\in [a,b]\).

Í kafla 14 umrituðum við virkjann yfir á Sturm-Liouville form,

\[Lu=\varrho^{-1}\big(-(pu')'+qu\big)=f,\]

með

\[p=\exp\big(\int a_1(x)/a_2(x)\, dx+C\big), \quad q=-a_0p/a_2 \ \text { og } \ \varrho=-p/a_2.\]

Afleiðujafnan \(Lu=f\) jafngildir því \(-(pu')'+qu=\varrho f\). Með því að skipta út \(\varrho f\) fyrir \(f\) í þessari jöfnu, þá sjáum við að það er engin takmörkun að gera ráð fyrir að \(\varrho=1\) og því ætlum við að takmarka okkur við verkefnið

\[\begin{split}\begin{cases} Lu=-(pu')'+qu=-pu''-p'u'+qu=f,& \text{ á } ]a,b[\\ B_1u=\alpha_1u(a)-\beta_1u'(a)=\gamma_1,&(\alpha_1,\beta_1)\neq (0,0),\\ B_2u=\alpha_2u(b)+\beta_2u'(b)=\gamma_2,&(\alpha_2,\beta_2)\neq (0,0), \end{cases}\end{split}\]

þar sem við gerum ráð fyrir að \(p\in C^1[a,b]\), \(p(x)>0\), \(q\in C[a,b]\) og \(q(x)\in {{\mathbb R}}\) fyrir öll \(x\in [a,b]\).

Kosturinn við þessa framsetningu er að aðferðirnar alhæfast yfir á jaðargildisverkefni fyrir hlutafleiðujöfnur af gerðinni

\[\begin{split}\begin{cases} Lu=-\nabla\cdot (p\nabla u)+qu= -p\nabla^2u-\nabla p\cdot \nabla u+qu=f, \qquad \text{ á } D\\ \alpha u+\beta\dfrac{\partial u}{\partial n} =\gamma, \qquad \text{á } \ \partial D, \end{cases}\end{split}\]

þar sem \(D\) svæði í planinu \({{\mathbb R}}^2\), \(\partial D\) táknar jaðar þess, \(p\in C^1(D)\), \(q,f\in C(D)\) eru gefin föll á \(D\) og \(\alpha\), \(\beta\) og \(\gamma\) eru gefin föll á jaðrinum.

Við gerum ráð fyrir að í sérhverjum punkti \((x,y)\) á \(\partial D\)\((\alpha(x,y),\beta(x,y))\neq (0,0)\).

Athugið að í öllum punktum \((x,y)\) á \(\partial D\) þar sem \(\beta(x,y)=0\) er gildi lausnarinnar gefið, \(u(x,y)=\gamma(x,y)/\alpha(x,y)\). Munið að \(\partial u/\partial n=\nabla u\cdot {\mathbf n}\) og \(\mathbf n\) táknar ytri þvervigurinn á jaðarinn. Ef svæðið hefur horn, þá er ytri þvervigurinn ekki vel skilgreindur þar, svo við verðum að túlka jaðargildin þannig að jafnan gildi í öllum punktum þar sem \(\beta\) er núll og í öllum punktum þar sem þvervigurinn er til.

Eðlilega er miklu flóknara að fást við nálganir á hlutafleiðujöfnum á almennum svæðum miðað við nálganir á venjulegum afleiðujöfnum á bili, en aðferðirnar sem við fáumst við hér eins hugsaðar og bera sömu nöfn, mismunaaðferðir.

11.2. Mismunaaðferð fyrir venjulegar afleiðujöfnur

Mismunaaðferðir eru til í mörgum afbrigðum og við skulum lýsa einfaldasta afbrigðinu í fyrstu umferð. Við byrjum á því að velja okkur skiptingu

\[\begin{split}a=x_0<x_1<x_2<\cdots <x_N=b\end{split}\]

á bilinu \([a,b]\). Einfaldast er að taka jafna skiptingu. Látum \(h=(b-a)/N\) tákna lengd hlutbilanna. Þá er \(x_j=a+jh\), \(j=0,\dots,N\), og þar með \(x_{j-1}=x_j-h\) og \(x_{j+1}=x_j+h\).

Í punktunum \(x_j\) uppfyllir lausnin \(u\) á (Link title) jöfnurnar

\[\begin{split}\begin{cases} \alpha_1u(x_0)-\beta_1u'(x_0)=\gamma_1,\\ a_2(x_j)u''(x_j)+a_1(x_j)u'(x_j)+a_0(x_j)u(x_j)=f(x_j), \qquad j=1,\dots,N-1,\\ \alpha_2u(x_N)+\beta_2u'(x_N)=\gamma_2. \end{cases}\end{split}\]

Til einföldunar skrifum við \(u_j=u(x_j)\) og \(f_j=f(x_j)\). Við ætlum nú að setja fram \((N+1)\times (N+1)\) línulegt jöfnuhneppi \(A {\mathbf c}={\mathbf b}\) fyrir nálgunargildi þar sem hnit lausnarinnar \(\mathbf c\) eru nálgunargildi \(c_j\approx u_j\). Hugmyndin er nú að skipta út gildunum á afleiðunum \(u'(x_j)\) og \(u''(x_j)\) fyrir mismunakvóta í þessum jöfnum, stinga síðan \(c_j\) inn í mismunakvótana og setja fram línulegt jöfnuhneppi sem nálgunargildin eiga að uppfylla.

11.2.1. Mismunajafna í vinstri endapunkti

Í endapunktinum \(a=x_0\) notum við nálgum við afleiðu með mismunakvóta

\[u'(x)\approx \dfrac{u(x+h)-u(x)}h,\]

skiptum á afleiðunni og mismunakvótanum í fyrstu jöfnu (Link title)

\[\alpha_1u_0-\beta_1\dfrac{u_1-u_0}h\approx \gamma_1\]

og stingum að lokum inn \(c_0\) og \(c_1\) inn í hana í stað \(u_0\) og \(u_1\) til þess að fá mismunajöfnu

\[\alpha_1c_0-\beta_1\dfrac{c_1-c_0}h= \gamma_1.\]

11.2.2. Mismunajafna í innri punktum bilsins

Í innri punktum bilsins \(x_j\), \(j=1,\dots,N-1\), nálgum við afleiður með miðsettum mismunakvótum

\[u'(x)\approx \dfrac{u(x+h)-u(x-h)}{2h} \qquad \text{ og } \qquad u''(x)\approx \dfrac{u(x-h)-2u(x)+u(x+h)}{h^2},\]

skiptum á afleiðum og mismunakvótum í miðjöfnu (Link title)

\[a_2(x_j)\dfrac{u_{j-1}-2u_j+u_{j+1}}{h^2}+a_1(x_j) \dfrac{u_{j+1}-u_{j-1}}{2h}+a_0(x_j)u_j\approx f_j,\]

og stingum inn \(c_{j-1}\), \(c_j\) og \(c_{j+1}\) fyrir \(u_{j-1}\), \(u_j\) og \(u_{j+1}\) til þess að fá jöfnur fyrir nálgunargildin

\[a_2(x_j)\dfrac{c_{j-1}-2c_j+c_{j+1}}{h^2}+a_1(x_j) \dfrac{c_{j+1}-c_{j-1}}{2h}+a_0(x_j)c_j=f_j.\]

11.2.3. Mismunajafna í hægri endapunkti

Í hægri endapunktinum \(b=x_N\) notum við nálgunarformúluna

\[u'(x)\approx \dfrac{u(x)-u(x-h)}h,\]

skiptum á afleiðu og mismunakvóta í síðustu jöfnu (Link title)

\[\alpha_2u_N+\beta_2\dfrac{u_N-u_{N-1}}h\approx \gamma_2\]

og stingum síðan inn \(c_{N-1}\) og \(c_N\) fyrir \(u_{N-1}\) og \(u_N\) til þess að fá nálgunarjöfnuna

\[\alpha_2c_N+\beta_2\dfrac{c_N-c_{N-1}}h = \gamma_2.\]

11.2.4. Hneppið

Nú drögum við nálgunarjöfnurnar saman í eitt línulegt \((N+1)\times(N+1)\) hneppi,

\[\begin{split}\begin{cases} \alpha_1c_0-\beta_1\dfrac{c_1-c_0}h= \gamma_1,\\ a_2(x_j)\dfrac{c_{j-1}-2c_j+c_{j+1}}{h^2}+a_1(x_j) \dfrac{c_{j+1}-c_{j-1}}{2h}+a_0(x_j)c_j=f_j,\\ \alpha_2c_N+\beta_2\dfrac{c_N-c_{N-1}}h = \gamma_2. \end{cases}\end{split}\]

Það er betra að skoða þetta hneppi eftir að búið er að raða breytunum í rétta röð,

\[\begin{split}\begin{cases} \big(\alpha_1+\tfrac {\beta_1}h\big)c_0 -\tfrac {\beta_1}h c_1= \gamma_1,\\ \big(\tfrac{a_2(x_j)}{h^2}-\tfrac{a_1(x_j)}{2h}\big) c_{j-1} +\big(-\tfrac{2a_2(x_j)}{h^2}+a_0(x_j)\big)c_j +\big(\tfrac{a_2(x_j)}{h^2}+\tfrac{a_1(x_j)}{2h}\big) c_{j+1} =f_j,\\ -\tfrac{\beta_2}h c_{N-1}+\big(\alpha_2+\tfrac{\beta_2}h \big) c_N = \gamma_2, \end{cases}\end{split}\]

þar sem \(j=1,\dots,N-1\) í miðjöfnunni.

Það er auðvelt að búa til forrit sem les inn öll gögnin sem gefin eru í jaðargildisverkefninu (Link title) auk tölunnar \(N\) og reiknar út nálgunargildin. Fyrstu dæmin í dæmakaflanum fjalla um þetta viðfangsefni.

Það er fróðlegt að glöggva sig á útleiðslunni með því að fara í gegnum hana í ákveðnu dæmi:

11.2.4.1. Sýnidæmi

Sýna dæmi

11.2.5. Skekkjumat

Áður en við segjum skilið við þetta jöfnuhneppi, þá skulum við leggja mat á stigið í nálgunarformúlunum sem við höfum notað Það gerum við með því að taka fall \(\varphi\in C^4(I)\) á bili \(I\) sem inniheldur punktinn og nota formúlu Taylors, sem segir að

\[\begin{split}\begin{aligned} \varphi(x+h)&=\varphi(x)+\varphi'(x)h+\tfrac 12 \varphi''(x)h^2 +\tfrac 16 \varphi'''(x)h^3+\tfrac 1{24}\varphi^{(4)}(\xi)h^4,\\ \varphi(x-h)&=\varphi(x)-\varphi'(x)h+\tfrac 12 \varphi''(x)h^2 -\tfrac 16 \varphi'''(x)h^3+\tfrac 1{24}\varphi^{(4)}(\eta) h^4.\end{aligned}\end{split}\]

þar sem \(\xi\) er á milli \(x\) og \(x+h\) og \(\eta\) er á milli \(x\) og \(x-h\). Skekkjurnar í nálgununum sem við höfum notað eru

\[\begin{split}\begin{aligned} \varphi'(x)&-\dfrac{\varphi(x+h)-\varphi(x)}h =-\tfrac 12 \varphi''(x)h -\tfrac 16 \varphi'''(x)h^2-\tfrac 1{24}\varphi^{(4)}(\xi)h^3,\\ \varphi'(x)&-\dfrac{\varphi(x)-\varphi(x-h)}h =\tfrac 12 \varphi''(x)h -\tfrac 16 \varphi'''(x)h^2+\tfrac 1{24}\varphi^{(4)}(\eta)h^3,\\ \varphi'(x)&-\dfrac{\varphi(x+h)-\varphi(x-h)}{2h} =-\tfrac 1{12}\varphi'''(x)h^2-\tfrac 1{48} \big(\varphi^{(4)}(\xi)-\varphi^{(4)}(\eta)\big) h^3,\\ \varphi''(x)&-\dfrac{\varphi(x-h)-2\varphi(x)+\varphi(x+h)}{h^2} =-\tfrac 1{24} \big(\varphi^{(4)}(\xi)+\varphi^{(4)}(\eta)\big) h^2.\end{aligned}\end{split}\]

Hér sjáum við að fyrstu tvær formúlurnar gefa okkur skekkju af fyrsta stigi í \(h\), sem þýðir að hægt er að meta skekkjuna minni en \(Ch\) ar sem \(C\) er fasti, en hinar gefa okkur skekkju af öðru stigi sem þýðir að hægt er að meta skekkjuna með \(Ch^2\), sem er að sjálfsögðu miklu betra.

Þegar við leiðum út nálgunarjöfnur fyrir jaðargildisverkefni, þá reynum við að haga því þannig að allar nálganir sem við gerum séu af sama stigi. Í þessu fyrsta afbrigði er þessu ekki þannig háttað, því við notuðum aðeins fyrsta stigs nálgun í jaðarskilyrðunum en annars stigs nálgun á afleiðunum í innri punktum. Næst ætlum við að bæta úr þessu.

11.3. Heildun yfir hlutbil

Það eru margar leiðir til þess að setja fram nálgunarjöfnuhneppi fyrir jaðargildisverkefnið okkar. Nú ætlum við að kynna til sögunnar aðra aðferð fyrir sama verkefni, en nota Sturm-Liouville-gerð þess,

\[\begin{split}\begin{cases} Lu=-(pu')'+qu=f,& \text{á } ]a,b[\\ \alpha_1u(a)-\beta_1u'(a)=\gamma_1,\\ \alpha_2u(b)+\beta_2u'(b)=\gamma_2. \end{cases}\end{split}\]

Ef \([c,d]\subset [a,b]\) er hlutbil og við heildum alla liði afleiðujöfnunnar \(Lu=f\) yfir þetta bil, þá fáum við jöfnuna

\[p(c)u'(c)-p(d)u'(d) +\int_c^d q(x)u(x)\, dx=\int_c^d f(x)\, dx.\]

Nú ætlum við að setja fram nálgunarjöfnu fyrir þessa jöfnu með því að skipta út afleiðunum fyrir mismunakvóta og heildunum fyrir nálganir byggðar á einu fallgildi í \([c,d]\).

Við gerum áfram ráð fyrir að skiptingin á bilinu sé jöfn \(x_j=a+jh\), látum \(m_j=\tfrac 12 (x_j+x_{j+1})=x_j+\tfrac 12 h\) tákna miðpunkta hlutbilanna \(j=0,1,2,\dots,N-1\) og til einföldunar setjum við \(u_j=u(x_j)\), \(f_j=f(x_j)\), \(p_j=p(x_j)\), \(p(m_j)=p_{j+\frac 12}\) og \(q_j=q(x_j)\) fyrir öll \(j\). Athugið að við skrifum \(1\frac 12=\frac 32\), \(2\frac 12=\frac 52\) o.s.frv..

11.3.1. Mismunajafna í vinstri endapunkti bilsins

Við nýtum okkur að \(u\) er lausn á afleiðujöfnunnar og heildum alla liði hennar yfir bilið \([x_0,m_0]\),

\[p(x_0)u'(x_0)-p(m_0)u'(m_0) +\int_{x_0}^{m_0} qu\, dx=\int_{x_0}^{m_0} f\, dx,\]

leysum síðan \(u'(x_0)=u'(a)\) út úr þessari jöfnu

\[u'(x_0)=\dfrac 1{p(x_0)}\bigg(p(m_0)u'(m_0) -\int_{x_0}^{m_0}q(x)u(x)\, dx +\int_{x_0}^{m_0}f(x)\, dx\bigg)\]

og setjum inn í jaðarskilyrðið í \(x_0\). Það gefur okkur jöfnuna

\[\alpha_1u(x_0)-\dfrac {\beta_1}{p(x_0)}\bigg( p(m_0)u'(m_0)-\int_{x_0}^{m_0}qu\, dx+\int_{x_0}^{m_0}f\, dx\bigg)=\gamma_1.\]

Nú er \(m_0-x_0=\frac 12 h\), svo við fáum nálgunarjöfnu með því að skipta á afleiðu og mismunakvóta og nálga heildin með margfeldi af billengd og gildi í vinstri endapunkti hlutbilsins,

\[\alpha_1u_0-\dfrac {\beta_1}{p_0}\bigg( p_{\frac 12}\dfrac{u_1-u_0}{h} -\tfrac 12 h q_0u_0+ \tfrac 12 hf_0\bigg)\approx \gamma_1.\]

Næst setjum við inn nálgunargildin \(c_0\) og \(c_1\) í stað \(u_0\) og \(u_1\) og búum til nálgunarjöfnu

\[\alpha_1 c_0-\dfrac {\beta_1}{p_0}\bigg( p_{\frac 12}\dfrac{c_1-c_0}{h} -\tfrac 12 h q_0c_0+\tfrac 12 hf_0\bigg)=\gamma_1.\]

11.3.2. Mismunajöfnur í innri punktum skiptingarinnar

Tökum nú \(j=1,\dots,N-1\). Þá er \(x_j\) miðpunktur bilsins \([m_{j-1},m_j]\), sem hefur lengdina \(h\) og (Link title) gefur

\[p(m_{j-1})u'(m_{j-1})-p(m_j)u'(m_j)+\int_{m_{j-1}}^{m_j}q(x)u(x)\, dx =\int_{m_{j-1}}^{m_j}f(x)\, dx.\]

Við nálgum afleiðugildin með mismunakvótum

\[u'(m_j)\approx \dfrac{u_{j+1}-u_j}h \qquad \text{ og } \qquad u'(m_{j-1})\approx \dfrac{u_j-u_{j-1}}h,\]

heildin með miðpunktsnálgun

\[\int_{m_{j-1}}^{m_j}q(x)u(x)\, dx \approx hq_ju_j \qquad \text{ og } \qquad \int_{m_{j-1}}^{m_j}f(x)\, dx \approx hf_j\]

og búum til nálgunarjöfnu með því að skipta út afleiðugildunum fyrir mismunakvótana og heildunum fyrir miðpunktsnálganirnar,

\[p_{j-\frac 12}\dfrac{u_j-u_{j-1}}h -p_{j+\frac 12}\dfrac{u_{j+1}-u_j}h +hq_ju_j\approx hf_j.\]

Við breytum þessari nálgunarjöfnu í venjulega jöfnu með því að setja inn nálgunargildin \(c_{j-1}\), \(c_j\) og \(c_{j+1}\) fyrir réttu fallgildin \(u_{j-1}\), \(u_j\) og \(u_{j+1}\) og deila öllum liðum með \(h\)

\[p_{j-\frac 12}\dfrac{c_{j}-c_{j-1}}{h^2} -p_{j+\frac 12}\dfrac{c_{j+1}-c_j}{h^2} +q_jc_j= f_j.\]

11.3.3. Mismunajafna í hægri endapunkti

Nú þurfum við að finna nálgunarjöfnu fyrir jaðarskilyrðið í punktinum \(b=x_N\),

\[\alpha_2u(x_N)+\beta_2u'(x_N)=\gamma_2.\]

Við heildum alla liði afleiðujöfnunnar yfir bilið \([m_{N-1},x_N]\) og fáum

\[-p(x_N)u'(x_N)+p(m_{N-1})u'(m_{N-1})+\int_{m_{N-1}}^{x_N} q(x)u(x)\, dx =\int_{m_{N-1}}^{x_N} f(x)\, dx,\]

leysum \(u'(x_N)\) út úr þessari jöfnu

\[u'(x_N)=\dfrac 1{p(x_N)}\bigg(p(m_{N-1})u'(x_{N-1}) +\int_{x_{N-1}}^{x_N}q(x)u(x)\, dx- \int_{x_{N-1}}^{x_N}f(x)\, dx\bigg)\]

og stingum inn í jaðarskilyrðið

\[\alpha_2u(x_N)+\dfrac {\beta_2}{p(x_N)}\bigg( p(m_{N-1})u'(m_{N-1})+\int_{m_{N-1}}^{x_N}qu\, dx - \int_{m_{N-1}}^{x_N} f\, dx\bigg)=\gamma_2.\]

Síðan skiptum við á afleiðu og mismunakvóta og nálgum heildin með margfeldi af billengd og gildi í hægri endapunkti hlutbilsins,

\[\alpha_2u_N+\dfrac {\beta_2}{p_N}\bigg( p_{N-\frac 12}\dfrac{u_N-u_{N-1}}{h}+\tfrac 12h q_Nu_N -\tfrac 12h f_N\bigg)\approx\gamma_2.\]

Við setjum að lokum \(c_{N-1}\) og \(c_N\) í stað \(u_{N-1}\) og \(u_N\) og erum þá komin með síðustu jöfnuna fyrir nálgunargildin

\[\alpha_2c_N+\dfrac {\beta_2}{p_N}\bigg( p_{N-\frac 12}\dfrac{c_N-c_{N-1}}{h}+\tfrac 12h q_Nc_N -\tfrac 12 h f_N\bigg)=\gamma_2.\]

11.3.4. Nálgunarjöfnuhneppið

Línulega jöfnuhneppið fyrir nálgunargildin, sem við leiddum út hér að framan er

\[\begin{split}\begin{cases} \alpha_1 c_0-\dfrac {\beta_1}{p_0}\bigg( p_{\frac 12}\dfrac{c_1-c_0}{h} -\tfrac 12 h q_0c_0+\tfrac 12 hf_0\bigg)=\gamma_1. \\ p_{j-\frac 12}\dfrac{c_{j}-c_{j-1}}{h^2} -p_{j+\frac 12}\dfrac{c_{j+1}-c_j}{h^2} + q_jc_j= f_j. \\ \alpha_2c_N+\dfrac {\beta_2}{p_N}\bigg( p_{N-\frac 12}\dfrac{c_N-c_{N-1}}{h}+\tfrac 12h q_Nc_N -\tfrac 12 h f_N\bigg)=\gamma_2. \end{cases}\end{split}\]

Nú röðum við óþekktu stærðunum í rétta röð og fáum \((N+1)\times (N+1)\) línulegt jöfnuheppi fyrir gildin \(c_j\),

\[\begin{split}\begin{cases} \bigg(\alpha_1+\dfrac{\beta_1}{p_0} \bigg(\dfrac{p_{\frac 12}}h+\tfrac 12 hq_0\bigg)\bigg)c_0 -\dfrac{\beta_1p_{\frac 12}}{p_0h}c_1 =\gamma_1+\tfrac 12 \dfrac{\beta_1hf_0}{p_0}, \\ -\dfrac{p_{j-\frac 12}}{h^2} c_{j-1} +\bigg(\dfrac{p_{j-\frac 12}+p_{j+\frac 12}}{h^2}+q_j\bigg) c_j -\dfrac{p_{j+\frac 12}}{h^2} c_{j+1} =f_j, \\ -\dfrac{\beta_2p_{N-\frac 12}}{p_Nh}c_{N-1}+ \bigg(\alpha_2+\dfrac{\beta_2}{p_N}\bigg(\dfrac{p_{N-\frac 12}}{h}+\tfrac 12 h q_N\bigg)\bigg)c_N =\gamma_2+\tfrac 12\dfrac{\beta_2h}{p_N}f_N. \end{cases}\end{split}\]

11.3.4.1. Sýnidæmi

Sýna dæmi

11.3.5. Nálgunarjöfnur fyrir almennar skiptingar

Í útleiðslu okkar hér að framan gerðum við ráð fyrir að skiptingin væri jöfn. Ef við höfum almenna skiptingu, látum \(h_j=x_{j+1}-x_j\) tákna lengdina á hlutbilinu \([x_j,x_{j+1}]\) og heildum yfir hlutbil eins og hér að framan, þá fáum við nýtt jöfnuhneppi fyrir nálgunargildin,

\[\begin{split}\begin{cases} \bigg(\alpha_1+\dfrac{\beta_1}{p_0} \bigg(\dfrac{p_{\frac 12}}{h_0}+\tfrac 12 h_0q_0\bigg)\bigg)c_0 -\dfrac{\beta_1p_{\frac 12}}{p_0h_0}c_1 =\gamma_1+\tfrac 12 \dfrac{\beta_1h_0f_0}{p_0}, \\ -\dfrac{2p_{j-\frac 12}}{(h_{j-1}+h_j)h_j} c_{j-1} +\bigg( \dfrac{2p_{j-\frac 12}}{(h_{j-1}+h_j)h_{j-1}}+ \dfrac{2p_{j+\frac 12}}{(h_{j-1}+h_j)h_j}+q_j\bigg) c_j -\dfrac{2p_{j+\frac 12}}{(h_{j-1}+h_j)h_j} c_{j+1} =f_j,\\ -\dfrac{\beta_2p_{N-\frac 12}}{p_Nh_{N-1}}c_{N-1}+ \bigg(\alpha_2+\dfrac{\beta_2}{p_N}\bigg(\dfrac{p_{N-\frac 12}}{h_{N-1}} +\tfrac 12 h_{N-1} q_N\bigg)\bigg)c_N =\gamma_2+\tfrac 12\dfrac{\beta_2h_{N-1}}{p_N}f_N. \end{cases}\end{split}\]

11.3.6. Línuleg brúun og þúfugrunnföll

Þegar nálgunargildin \(c_j\approx u_j\) hafa verið ákvörðuð út frá mismunajöfnunum, er eðlilegt að nota línulega brúun á milli þeirra til þess að finna fall \(v\) sem nálgar \(u\) í öllum punktum bilsins \([a,b]\)

Þess vegna skilgreinum við nálgunarfall \(v\in C[a,b]\), sem tekur gildið \(c_j\) í punktinum \(x_j\) og er þannig að graf þess á bilinu \([x_j,x_{j+1}]\) er línustrik. Þá er auðvelt að sjá að

\[v=c_0\varphi_0+\cdots+c_N\varphi_N,\]

Þar sem \(\big(\varphi_j\big)_{j=0}^N\) tákna þúfugrunnföllin sem skiptingin \(\big(x_j\big)_{j=0}^N\) skilgreinir, en \(\varphi_j\) er samfellda fallið sem tekur gildið \(1\) í \(x_j\), tekur gildið \(0\) í öllum hinum skiptingarpunktunum og hefur graf sem er línustrik á sérhverju hlutbilanna \([x_j,x_{j+1}]\), \(j=0,\dots,N-1\). Við getum skrifað upp formúlur fyrir föllunum \(\varphi_j\) og afleiðum þeirra,

\[\begin{split}\begin{aligned} \varphi_0(x)&=\begin{cases} \tfrac{x_1-x}{h_0}, &x\in [x_0,x_1],\\ 0, &\text{annars}, \end{cases} & \varphi'_0(x)&=\begin{cases} \tfrac{-1}{h_0}, &x\in ]x_0,x_1[,\\ 0, &x\in {{\mathbb R}}\setminus [x_0,x_1], \end{cases} \nonumber \\ \varphi_j(x)&=\begin{cases} \tfrac{x-x_{j-1}}{h_{j-1}}, &x\in [x_{j-1},x_j],\\ \tfrac{x_{j+1}-x}{h_j}, &x\in [x_j,x_{j+1}],\\ 0, &\text{annars}. \end{cases}& \varphi'_j(x)&=\begin{cases} \tfrac{1}{h_{j-1}}, &x\in ]x_{j-1},x_j[,\\ \tfrac{-1}{h_j}, &x\in [x_j,x_{j+1}],\\ 0, &x\in {{\mathbb R}}\setminus [x_{j-1},x_{j+1}]. \end{cases} \\ \varphi_m(x)&=\begin{cases} \tfrac{x-x_{m-1}}{h_{m-1}}, &x\in [x_{m-1},x_m],\\ 0, &\text{annars}. \nonumber \end{cases}& \varphi'_m(x)&=\begin{cases} \tfrac{1}{h_{m-1}}, &x\in [x_{m-1},x_m],\\ 0, &\text{annars}. \nonumber \end{cases}\end{aligned}\end{split}\]

11.4. Staðarskekkjur í mismunasamböndum

Lítum nú aftur á jafna skiptingu á \([a,b]\) með billengd \(h=(b-a)/N\),

\[\begin{split}a=x_0<x_1<\cdots<x_N=b, \quad x_j=x_0+jh, \quad m_j=x_j+\tfrac 12 h.\end{split}\]

Í þessum punktum uppfyllir lausnin \(u\) á jaðargildisverkefninu jöfnuhneppið

\[\begin{split}\begin{cases} B_1u=\alpha_1u_0-\beta_1u'(x_0)=\gamma_1\\ Lu(x_j)=-p(x_j)u''(x_j)-p'(x_j)u'(x_j)+q_ju_j=f_j,\\ B_2u=\alpha_2u_N+\beta_2u'(x_N)=\gamma_2, \end{cases}\end{split}\]

þar sem \(j=1,\dots,N-1\). Samkvæmt (Link title) uppfyllir nálgunarlausnin

\[v(x)=\sum_{j=0}^Nc_j\varphi_j(x)=c_0\varphi_0(x)+\cdots+c_N\varphi_N(x),\]

jöfnuhneppið

\[\begin{split}\begin{cases} M_0v=\alpha_1 v(x_0)-\dfrac {\beta_1}{p_0}\bigg( p_{\frac 12}\dfrac{v(x_1)-v(x_0)}{h} -\tfrac 12 h q_0v(x_0)+\dfrac 12 hf_0\bigg)=\gamma_1, \\ M_jv= -p_{j+\frac 12}\dfrac{v(x_{j+1})-v(x_j)} {h^2} +p_{j-\frac 12}\dfrac{v(x_{j})-v(x_{j-1})} {h^2} + q_jv(x_j)=f_j, \\ M_Nv= \alpha_2v(x_N)+\dfrac {\beta_2}{p_N}\bigg( p_{N-\frac 12}\dfrac{v(x_N)-v(x_{N-1})}{h}+\tfrac 12h q_Nv(x_N) -\tfrac 12h f_N\bigg)=\gamma_2, \end{cases}\end{split}\]

þar sem \(j=1,\dots,N-1\). Athugið að við getum reiknað út \(M_0\varphi,\dots,M_n\varphi\) fyrir hvaða \(\varphi\in C[a,b]\) sem er og þá sérstaklega lausnina \(u\) á jaðargildisverkefninu. Við köllum \(M_j\) mismunavirkja (e. difference operator) vegna þess að \(M_j\) er vörpun sem úthlutar falli \(\varphi\) gildi \(M_j\varphi\) sem er skilgreint út frá mismunakvótum fallsins \(\varphi\). Til þess að kanna samræmið milli jöfnuhneppanna (Link title) og (Link title) stingum við \(u(x)\) í stað \(v(x)\) inn í síðara jöfnuhneppið og tökum mismuninn,

\[S_0u=B_1u-M_0u, \quad S_ju=Lu(x_j)-M_ju, \ j=1,\dots,N-1, \qquad S_Nu=B_2u-M_Nu.\]

Þessar stærðir nefnast staðarskekkjur (e. local truncation error) mismunavirkjanna \(M_j\) í punktunum \(x_j\). Við segjum að mismunasamböndin \(M_0u,\dots,M_Nu\) samræmist jaðargildisverkefninu (Link title) ef allar staðarskekkjurnar \(S_ju\) stefna á \(0\) þegar fínleiki skiptingarinnar \(h\) stefnir á \(0\). Þetta þýðir að fyrir sérhvert \(\varepsilon>0\) er til \(\delta>0\) þannig að

\[\begin{split}|S_ju|<\varepsilon, \qquad \text{ fyrir öll } j=0,\dots,N \quad\text{ og } \quad h=(b-a)/N<\delta.\end{split}\]

11.4.1. Setning Taylors

Áður en við hefjum glímuna við að meta staðarskekkjur í mismunasamböndum, skulum við rifja upp setningu Taylors sem er helsta tólið sem við höfum til þess að gera staðbundnar nálganir á föllum. Hún segir að fyrir sérhvert fall \(\varphi\in C^m(I)\), þar sem \(I\) er bil og sérhvern punkt \(x\in I\), gildir

\[\varphi(x+h)=\varphi(x)+\varphi'(x)h+\tfrac 1{2}\varphi''(x)h^2+ \cdots+\tfrac 1{m!} \varphi^{(m)}(x)h^m+\varepsilon_m(x,h)\]

þar sem skekkjan \(\varepsilon_m(x,h)\) í nálgun á \(\varphi(x+h)\) með Taylor-margliðu \(\varphi\) í hægri hlið jöfnunnar uppfyllir

\[\dfrac{\varepsilon_m(x,h)}{h^m}\to 0, \qquad h\to 0.\]

Ef \(\varphi\in C^{m+1}(I)\), þá er til punktur \(\xi\) milli \(x\) og \(x+h\) þannig að

\[\varepsilon_m(x,h)=\tfrac 1{(m+1)!} \varphi^{(m+1)}(\xi){h^{m+1}}\]

og við fáum betra mat,

\[|\varepsilon_m(x,h)|\leq C h^{m+1},\]

með \(C\geq \max_{t\in I}\tfrac 1{(m+1)!}|\varphi^{(m+1)}(t)|\).

11.4.2. Stig og óvera

Við þurfum oft að meta stærðir \(\chi(h)\) og viljum gefa til kynna hversu hratt þær stefna á \(0\) ef \(h\) stefnir á \(0\). Þá er eðlilegt að bera \(\chi(h)\) saman við veldi \(h^k\) með veldisvísinn \(k\in {{\mathbb R}}_+\), (\(k\geq 0\)). Við segjum að \(\chi(h)\) sé af stigi \(k\) eða \(k\) -ta stigi eða að \(\chi(h)\)stórt o af \(h^k\) og táknum það með \(\chi(h)=O(h^k)\), ef til eru fastar \(C>0\) og \(c>0\), þannig að

\[|\chi(h)|\leq C h^k, \qquad h\in ]0,c].\]

Við segjum að \(\chi(h)\)óvera af \(h^k\) eða að \(\chi(h)\)lítið o af \(h^k\) og táknum það \(\chi(h)=o(h^k)\), ef

\[\dfrac{\chi(h)}{h^k} \to 0, \qquad h\to 0.\]

Ef \(0\leq j<k\) og \(\chi(h)=O(h^k)\) (eða \(\chi(h)=o(h^k))\), þá er \(\chi(h)/h^j=O(h^{k-j})\) (eða \(\chi(h)/h^j=o(h^{k-j})\)).

Ef við stillum upp jöfnum

\[\chi(h)=O(1), \ \chi(h)=o(1), \ \chi(h)=O(h), \ \chi(h)=o(h), \ \chi(h)=O(h^2), \ \chi(h)=o(h^2),\dots.\]

og lítum á þær sem skekkjumat, þá fer matið á \(\chi(h)\) sem við lesum út úr þessum jöfnum batnandi þegar við lesum línuna frá vinstri til hægri.

Sem dæmi er eðlilegt að taka Taylor-nálgunina sem við nefndum hér að framan, en setning Taylors segir að

\[\varepsilon_m(x,h)=o(h^m) \ \ \text{ ef } \ \varphi\in C^m[a,b] \quad \text{ og } \quad \varepsilon_m(x,h)=O(h^{m+1}) \ \ \text{ ef } \ \varphi\in C^{m+1}[a,b].\]

Hugsum okkur að við séum með tvö föll \(\chi_1\) og \(\chi_2\) og að við höfum skekkjumatið \(\chi_1(h)=O(h^{k_1})\) og \(\chi_2(h)=O(h^{k_2})\). Þá er

\[|\chi_1(h)\chi_2(h)|\leq C_1h^{k_1}C_2h^{k_2}=C_1C_2h^{k_1+k_2}\]

sem segir okkur að \(\chi_1(h)\chi_2(h)=h^{k_1+k_2}\). Fyrir summuna höfum við hins vegar

\[|\chi_1(h)+\chi_2(h)|\leq C_1h^{k_1}+C_2h^{k_2}\leq (C_1+C_2)h^{\min\{k_1,k_2\}}, \qquad h\leq 1,\]

og það segir okkur að \(\chi_1(h)+\chi_2(h)=O(h^{\min\{k_1,k_2\}})\).

Athugið að þegar skrifað er \(\chi_1(h)=\chi_2(h)+O(h^k)\), þá er átt við að nálgunin á \(\chi_1(h)\) með \(\chi_2(h)\) hafi skekkju af stigi \(k\), sem jafngildir því að segja að \(\chi_1(h)-\chi_2(h)=O(h^k)\).

11.4.3. Mat á staðarskekkju

Þegar við metum staðarskekkju í mismunasamböndunum, þá skrifum við punktana \(x_{j-1}=x_j-h\) og \(x_{j+1}=x_j+h\) og lítum á \(S_ju\) sem fall af \(h\). Síðan viljum við finna hæsta mögulega veldi á \(k\) þannig að \(S_ju(h)=O(h^k)\) eða \(S_ju(h)=o(h^k)\).

11.4.4. Staðarskekkja í vinstri endapunkti

Við lítum nú á vinstri endapunktinn \(x_0=a\) og könnum staðarskekkju nálgunarlausnarinnar í honum. Til einföldunar skulum við skrifa \(x\) í stað \(x_0\),

\[\begin{split}\begin{aligned} S_0u(h) &= \alpha_1u(x)-\beta_1 u'(x) \\ &-\alpha_1 u(x)+\dfrac {\beta_1}{p(x)}\bigg( p(x+\tfrac 12 h)\dfrac{u(x+h)-u(x)}{h} -\tfrac 12 h q(x)u(x)+\tfrac 12 hf(x)\bigg)\\ &=-\dfrac {\beta_1}{p(x)}\bigg(p(x)u'(x) -p(x+\tfrac 12 h)\dfrac{u(x+h)-u(x)}{h} +\tfrac 12 h q(x)u(x)-\tfrac 12 hf(x)\bigg)\\\end{aligned}\end{split}\]

Samkvæmt forsendu er \(p\in C^1[a,b]\) og af því leiðir að \(u\in C^2[a,b]\). Af Taylor-setningunni leiðir því að

\[\begin{split}\begin{aligned} p(x+\tfrac 12 h)&=p(x)+\tfrac 12 hp'(x)+o(h)\\ \dfrac{u(x+h)-u(x)}{h}&= u'(x)+\tfrac 12 hu''(x)+o(h).\end{aligned}\end{split}\]

Nú margföldum við saman alla liði og fáum

\[\begin{split}\begin{aligned} p(x+\tfrac 12 h)\dfrac{u(x+h)-u(x)}h &=\big(p(x)+\tfrac 12 hp'(x)+o(h)\big) \big(u'(x)+\tfrac 12 hu''(x)+o(h)\big)\\ &=p(x)u'(x)+\tfrac 12 h\big(p(x)u''(x)+p'(x)u'(x)\big) +o(h).\end{aligned}\end{split}\]

Með því að setja þessar nálganir inn í formúluna hér að framan og notfæra okkur að \(u\) uppfyllir afleiðujöfnuna í punktinum \(x\) fáum við

\[\begin{gathered} S_0u(h)= -\dfrac {\beta_1h}{2p(x)}\bigg( -p(x)u''(x)-p'(x)u'(x) +q(x)u(x)-f(x)\bigg)+o(h)=o(h).\end{gathered}\]

11.4.5. Annar en síðri möguleiki á nálgun jaðarskilyrðisins

Nú er tækifæri til þess að útskýra hvers vegna við völdum ekki nálgunina

\[\alpha_1u_0-\beta_1\dfrac{u_1-u_0}h\approx \gamma_1,\]

en hún gefur af sér mismunajöfnuna

\[\widetilde M_0v=\alpha_1v(x_0)-\beta_1\dfrac{v(x_1)-v(x_0)}h=\gamma_1,\]

og staðarskekkjuna (hér er \(x=x_0\)),

\[\begin{gathered} \widetilde S_0u(h)=B_1u-\widetilde M_0u =-\beta_1\bigg( u'(x)-\dfrac{u(x+h)-u(x)}h\bigg) =\beta_1\big(-\tfrac 12 hu''(x)+o(h)\big)=O(h).\end{gathered}\]

Fyrri nálgunaraðferðin er betri því hún hefur staðarskekkju \(S_0u(h)=o(h)\), sem er betra mat en \(O(h)\).

11.4.6. Staðarskekkja í innri punktum

Tökum nú innri punkt í skiptingunni \(x_j\) með \(j=1,\dots,N-1\). Fyrir hann er

\[\begin{split}\begin{aligned} S_ju(h)=&Lu(x_j)-M_ju\\ =&-p(x_j)u''(x_j)-p'(x_j)u'(x_j)\\ &+p(m_j)\dfrac{u(x_j+h)-u(x_j)}{h^2} +p(m_{j-1})\dfrac{u(x_j-h)-u(x_j)}{h^2}\end{aligned}\end{split}\]

Nú þurfum við fjórar Taylor-liðanir. Til einföldunar setjum við \(x\) í stað \(x_j\) og fáum

\[\begin{split}\begin{aligned} p(m_j)&=p(x+\tfrac 12 h)=p(x)+\tfrac 12 p'(x)h+o(h),\\ p(m_{j-1})&=p(x-\tfrac 12 h)=p(x)-\tfrac 12 p'(x)h+o(h),\\ \dfrac{u(x+h)-u(x)}{h^2}&= \dfrac 1h u'(x)+\tfrac 12 u''(x)+o(1),\\ \dfrac{u(x-h)-u(x)}{h^2}&= -\dfrac 1h u'(x)+\tfrac 12 u''(x)+o(1),\\\end{aligned}\end{split}\]

Þetta gefur

\[\begin{split}\begin{aligned} p(m_j)&\dfrac{u(x+h)-u(x)}{h^2} +p(m_{j-1})\dfrac{u(x-h)-u(x)}{h^2} \\ &=\big(p(x)+\tfrac 12 p'(x)h+o(h)\big) \big(\dfrac 1h u'(x)+\tfrac 12 u''(x)+o(1)\big) \\ &+\big(p(x)-\tfrac 12 p'(x)h+o(h)\big) \big(-\dfrac 1h u'(x)+\tfrac 12 u''(x)+o(1)\big)\\ &=p(x)u''(x)+p'(x)u'(x)+o(1)\end{aligned}\end{split}\]

Af þessu leiðir að

\[S_ju(h)=o(1)\to 0, \qquad h\to 0.\]

Þetta segir okkur að það er samræmi milli afleiðujöfnunnar og mismunajöfnunnar í punktinum \(x_j\).

11.4.7. Staðarskekkja í innri punktum með betri forsendum

Þegar við fengumst við veldaraðalausnir á afleiðujöfnum, þá sáum við að lausn \(u\) á jöfnunni \(Lu=f\) er gefin með veldaröð í grennd um sérhvern punkt, ef föllin \(p\), \(q\) og \(f\) eru gefin með veldaröðum í grennd um sérhvern punkt. Fallið \(u\) er þá óendanlega oft deildanlegt og við getum tekið eins marga liði í Taylor-nálgun og við viljum. Setjum til einföldunar \(x\) í stað \(x_j\) og lítum aftur á Taylor-liðanir okkar,

\[\begin{split}\begin{aligned} p(m_j)&=p(x+\tfrac 12 h)=p(x)+\tfrac 12 p'(x)h+O(h^2),\\ p(m_{j-1})&=p(x-\tfrac 12 h)=p(x)-\tfrac 12 p'(x)h+O(h^2),\\ \dfrac{u(x+h)-u(x)}{h^2}&= \dfrac 1h u'(x)+\tfrac 12 u''(x)+\tfrac 16 u'''(x)h+O(h^2),\\ \dfrac{u(x-h)-u(x)}{h^2}&= -\dfrac 1h u'(x)+\tfrac 12 u''(x)-\tfrac 16 u'''(x)h+O(h^2).\\\end{aligned}\end{split}\]

Við fáum nú endurbót á reikningi okkar hér að framan því þriðja stigs afleiðan fellur út

\[\begin{split}\begin{aligned} p(m_j)&\dfrac{u(x+h)-u(x)}{h^2} +p(m_{j-1})\dfrac{u(x-h)-u(x)}{h^2} \\ &=\big(p(x)+\tfrac 12 p'(x)h+O(h^2)\big) \big(\dfrac 1h u'(x)+\tfrac 12 u''(x)+\tfrac 16 u'''(x)h+O(h^2)\big) \\ &+\big(p(x)-\tfrac 12 p'(x)h+O(h^2)\big) \big(-\dfrac 1h u'(x)+\tfrac 12 u''(x)-\tfrac 16 u'''(x)h+O(h^2)\big)\\ &=p(x)u''(x)+p'(x)u'(x)+O(h^2)\end{aligned}\end{split}\]

Af þessu leiðir að skekkjumatið verður miklu betra,

\[S_ju(h)=O(h^2).\]

miðað við \(S_ju(h)=o(1)\) sem fæst þegar aðeins má gera ráð fyrir að \(p\in C^1[a,b]\) og \(u\in C^2[a,b]\). Athugið að við getum ekki fengið skekkumat með hærra stigi en \(2\), þótt við tækjum fleiri liðið því fjórða stigs liðurinn hverfur ekki eins og þriðja stigs liðurinn gerir hér.

11.4.8. Staðarskekkja í hægri endapunkti \(x_N=b\)

Nú gefum við okkur aftur að \(p\in C^1[a,b]\) og \(u\in C^2[a,b]\) og lítum á hægri endapunkt \(x_N=b\). Til einföldunar skrifum við \(x\) í stað \(x_N\). Þá er

\[S_Nu(h)=-\dfrac{\beta_2}{p(x)} \bigg(-p(x)u'(x)-p(x-\tfrac 12 h)\dfrac{u(x-h)-u(x)}h+\tfrac 12 h q(x)u(x) -\tfrac 12 h f(x)\bigg)\]

Með Taylor-liðun fáum við

\[\begin{split}\begin{aligned} p(x-\tfrac 12 h) \dfrac{u(x-h)-u(x)}h &=\big(p(x)-\tfrac 12 h p'(x)+o(h)\big) \big(-u'(x)+\tfrac 12 hu''(x)+o(h)\big)\\ &=-p(x)u'(x)+\tfrac 12 h\big(p(x) u''(x)+p'(x)u'(x)\big)+o(h)\end{aligned}\end{split}\]

Við smeygjum hægri hliðinni inn í jöfnuna hér að framan, notfærum okkur að \(u\) er lausn á afleiðujöfnunni og fáum

\[S_Nu(h)=-\dfrac{\beta_2h}{2p(x)} \bigg(-p(x) u''(x)-p'(x)u'(x)+q(x)u(x)-f(x)\bigg)+o(h) =o(h).\]

Ef við getum rökstutt að \(p\in C^2[a,b]\) og \(u\in C^3[a,b]\), eins og í tilfellinu þegar \(p\), \(q\) og \(f\) eru gefin með veldaröðum í grennd um sérhvern punkt, þá höfum við betri Taylor-nálganir

\[\begin{split}\begin{aligned} p(x-\tfrac 12 h) \dfrac{u(x-h)-u(x)}h &=\big(p(x)-\tfrac 12 h p'(x)+O(h^2)\big) \big(-u'(x)+\tfrac 12 hu''(x)+O(h^2)\big)\\ &=-p(x)u'(x)+\tfrac 12 h\big(p(x) u''(x)+p'(x)u'(x)\big)+O(h^2).\end{aligned}\end{split}\]

Það gefur skekkjumatið \(S_Nu(h)=O(h^2)\) sem bætir \(o(h)\)-matið hér að framan.

11.4.9. Samantekt á mismunaaðferð með heildun yfir hlutbil

Við höfum nú farið í gegnum útfærslu á mismunaaðferð með heildun yfir hlutbil til þess að finna nálgun á lausn \(u(x)\) á (Link title). Við reiknum út nálgunarfall \(v=c_0\varphi_0+\cdots+c_N\varphi_N\), þar sem \(\varphi_0,\dots,\varphi_N\) eru þúfugrunnföll fyrir skiptingu \(a=x_0<x_1<\cdots<x_N=b\) á bilinu \([a,b]\), sem má velja hvernig sem er, og stuðlarnir \(c_j\) eru lausn á ákveðnu línulegu jöfnuhneppi, sem við leiddum út frá afleiðujöfnunni og jaðarskilyrðunum. Útleiðslan miðast við að við fengjum góða nálgun á \(u(x_j)\) með \(c_j\). Þetta gerðum við með því að heilda jöfnuna sem lausnin \(u\) uppfyllir yfir bil milli miðpunkta bilanna sitt hvorum megin við \(x_j\), skipta út afleiðum fyrir mismunakvóta og heildum fyrir eins punkts nálganir og bjuggum þannig til nálgunarjöfnuhneppi. Við höfum ekki sannað að nálgunarlausnin \(v(x)\) stefni á \(u(x)\) ef fínleiki skiptingarinnar stefnir á \(0\), en við höfum sýnt að það er samræmi milli \(u\) og \(v\) í þeim skilningi að staðarskekkjurnar mismunasambandanna sem úrlausnin byggir á stefna allar á \(0\).

11.5. Mismunaaðferð fyrir hlutafleiðujöfnur

Nú tökum við fyrir jaðargildisverkefnið (Link title) og leiðum út nálgunarjöfnur í punktum í rétthyrndu neti í plani. Við köllum aðferðina heildun yfir hlutsvæði, en hún er alhæfing á heildun yfir hlutbil sem við sáum hér fyrr í kaflanum. Það er ákveðin hagræðing í því til þess að byrja með að skipta jaðrinum í tvö sundurlæg mengi \(\partial D=\partial_1D\cup \partial_2 D\), þar sem

\[\partial_1D=\{(x,y)\in \partial D\,;\, \beta(x,y)=0\} \qquad \text{ og } \qquad \partial_2D=\{(x,y)\in \partial D\,;\, \beta(x,y)\neq 0\}.\]

Í punktum \((x,y)\in \partial_1D\) eru gildi lausnarinnar gefin \(u(x,y)=\gamma(x,y)/\alpha(x,y)\), svo við getum eins skipt út \(\gamma\) fyrir \(\gamma/\alpha\) á þessum hluta jaðarsins. Við skulum því gera ráð fyrir að jaðargildisverkefnið sé

\[\begin{split}\begin{cases} Lu=-\nabla\cdot (p\nabla u)+qu=f, \quad &\text{á } D\\ u=\gamma,\quad &\text{á } \ \partial_1 D,\\ \alpha u+\beta\dfrac{\partial u}{\partial n} =\gamma, \quad &\text{á } \ \partial_2 D, \end{cases}\end{split}\]

Ef \(\partial_1D=\partial D\), þá erum við með Dirichlet jaðarskilyrði, sem þýðir að lausnin er þekkt á öllum jaðrinum.

11.5.1. Net

Hugsum okkur að svæðið \(D\) sé innihaldið í rétthyrningnum

\[R=\{(x,y)\,;\, a\leq x\leq b, c\leq y\leq d\}.\]

Tökum nú \(h>0\) og lítum á rétthyrnda netið með möskvastærðina \(h\) gegnum hornpunktinn \((a,c)\), en það hefur hnútpunktana

\[x=a+mh \qquad \text{ og } \qquad y=c+nh, \qquad m,n\in {{\mathbb Z}}.\]

Línurnar gegnum hnútpunktana eru stikaðar með

\[{{\mathbb R}}\ni t\mapsto (a+mh,t) \qquad \text{ og } \qquad {{\mathbb R}}\ni s\mapsto (s,c+nh).\]

Línurnar skera \(\overline D =D\cup\partial D\) í punktum \((x_j,y_j)\), \(j=1,\dots,M\), sem er raðað þannig að punktar númer \(1\) til \(N\leq M\) eru í \(D\cup \partial_2 D\), þar sem fallgildi \(u\) eru óþekkt, en \((x_j,y_j)\) fyrir \(j=N+1,\dots,M\) eru þá punktarnir í \(\partial_1 D\), þar sem fallgildi \(u\) eru þekkt.

Svæðið :math:`D`. Teiknið inn netið og merkið punktana :math:`(x_j,y_j)`!

Mynd: Svæðið \(D\). Teiknið inn netið og merkið punktana \((x_j,y_j)\)!

11.5.2. Heildun yfir hlutsvæði

Sundurleitnisetningin, sem einnig er nefnd Gauss-setning, segir að

\[\iint_\Omega\nabla\cdot {\mathbf V} \, dA =\int_{\partial \Omega} {\mathbf V} \cdot {\mathbf n}\, ds,\]

fyrir sérhvert samfellt deildanlegt vigursvið \(\mathbf V\) sem skilgreint er í grennd um \(\overline \Omega\). Gera þarf ráð fyrir að jaðarinn \(\partial\Omega\) hafi samfelldan ytri þvervigur alls staðar nema í endanlega mörgum punktum. Sundurleitnisetningin gildir þannig á öllum þríhyrningum og ferhyrningum, en það eru svæðin sem við heildum einkum yfir. Hér táknar \(dA=dxdy\) flatarmálsfrymið í \({{\mathbb R}}^2\) og \(ds\) bogalengdarfrymið á jaðrinum \(\partial \Omega\).

Í sértilfellinu \({\mathbf V}=p\nabla u\) er

\[\nabla\cdot \big( p \nabla u\big)= \dfrac{\partial}{\partial x}\bigg(p\dfrac{\partial u}{\partial x}\bigg) +\dfrac{\partial}{\partial y}\bigg(p\dfrac{\partial u}{\partial y}\bigg)\]

og þá gildir

\[\iint_\Omega \nabla\cdot\big(p\nabla u\big) \, dxdy =\int_{\partial\Omega} p\dfrac{\partial u}{\partial n}\, ds\]

um sérhvert tvisvar samfellt deildanlegt fall \(u\). Lausn hlutafleiðujöfnunnar uppfyllir því

\[-\int_{\partial\Omega } p\dfrac{\partial u}{\partial n}\, ds +\iint_\Omega qu\, dxdy =\iint_\Omega f\, dxdy\]

ef við gerum ráð fyrir að \(\Omega\subset D\).

Nú skiptum við svæðinu \(D\) skipulega í hlutsvæði og notum þessi heildi til þess að leiða út nálgunarjöfnur fyrir gildi lausnarinnar \(u(x_j,y_j)\) í punktunum \((x_j,y_j)\). Tilsvarandi nálgunargildi táknum við með \(c_j\), \(j=1,\dots,N\) og við setjum

\[c_j=u(x_j,y_j)=\gamma(x_j,y_j)=\gamma_j, \qquad j=N+1,\dots,M,\]

í punktunum þar sem gildi lausnarinnar eru gefin.

11.5.3. Nálgunarjafna í innri punkti

Innri punktur

Mynd: Innri punktur

Gerum nú ráð fyrir að \((x_j,y_j)\) sé innri punktur í \(D\) og að grannar hans eftir netlínunum séu allir hnútpunktar í netinu. Látum \(\Omega_j\) vera ferninginn með miðju í \((x_j,y_j)\) og kantlengdina \(h\). Látum granna \((x_j,y_j)\) eftir netlínunum vera \((x_l,y_l)\), \((x_r,y_r)\), \((x_s,y_s)\) og \((x_t,y_t)\), eins og myndin sýnir, \(m_{j,k}\) vera miðpunkt striksins milli \((x_j,y_j)\) og \((x_k,y_k)\) og \(S_{j,k}\) vera þann kant á \(\Omega_j\) sem næstur er \((x_k,y_k)\) fyrir \(k=l,r,s,t\). Þá er

\[\int_{\partial \Omega_j} p\dfrac{\partial u}{\partial n}\, ds =\sum_{k=l,r,s,t} \int_{S_{j,k}} p\dfrac{\partial u}{\partial n}\, ds.\]

Heildið yfir strikið \(S_{j,k}\) er nálgað með margfeldi af gildi heildisstofnsins í miðpunkti striksins og lengd þess,

\[\int_{S_{j,k}}p\dfrac{\partial u}{\partial n} \, ds \approx p(m_{j,k})\dfrac{\partial u}{\partial n}(m_{j,k}) h \approx p(m_{j,k})\dfrac{u(x_k,y_k)-u(x_j,y_j)}{h} h.\]

Flatarheildin í jöfnu (Link title) með \(\Omega_j\) í hlutverki \(\Omega\) eru nálguð með miðpunktsreglu þannig að gildi heildisins er nálgað með margfeldi af gildi heildisstofnsins í miðpunktinum \((x_j,y_j)\) og flatarmáli \(\Omega_j\),

\[\iint_{\Omega_j}q u \, dxdy \approx q(x_j,y_j)u(x_j,y_j)\, h^2 \quad \text{ og } \quad \iint_{\Omega_j}f \, dxdy \approx f(x_j,y_j)\, h^2.\]

Til styttingar á formúlunum setjum við nú \(u_k=u(x_k,y_k)\), \(q_k=q(x_k,y_k)\), \(f_k=f(x_k,y_k)\) og \(p_{j,k}=p(m_{j,k})\). Nálgunarjafnan fyrir (Link title) með \(\Omega=\Omega_j\) verður því

\[-p_{j,l}(u_l-u_j) -p_{j,r}(u_r-u_j) -p_{j,s}(u_s-u_j) -p_{j,t}(u_t-u_j) +q_ju_jh^2\approx f_jh^2.\]

Nú deilum við öllum liðum með \(h^2\), setjum við nálgunargildin \(c_k\) inn í stað \(u_k\) fyrir \(k=j,l,r,s,t\) og setjum þetta samband fram með línulegri jöfnu sem nálgunargildin eiga að uppfylla,

\[\begin{split}\begin{gathered} \big(h^{-2}\big({p_{j,l}+p_{j,r}+p_{j,s}+p_{j,t}}\big)+q_j\big)c_j \\ -h^{-2}p_{j,l}c_l -h^{-2}p_{j,r}c_r -h^{-2}p_{j,s}c_s -h^{-2}p_{j,t}c_t =f_j.\end{gathered}\end{split}\]

Í tilfellinu þegar \(p\) er fasti, segjum \(p=1\), þá fáum við einfaldari jöfnu

\[\begin{split}\big(4{h^{-2}}+q_j\big)c_j\\ -{h^{-2}}c_l -{h^{-2}}c_r -{h^{-2}}c_s -{h^{-2}}c_t =f_j.\end{split}\]

11.5.4. Punktuppsprettur

Í útleiðslunni hér að framan gerum við alltaf ráð fyrir að \(f\) sé samfellt fall á \(\overline D=D\cup \partial D\). Aðferðin sem við notum, heildun yfir hlutsvæði, leyfir okkur að bæta punktuppsprettum \(\sum_{s=1}^\mu Q_s\delta_{P_s}\) við fallið \(f\) og líta á hægri hliðina í hlutafleiðujöfnunni sem \(f+\sum_{s=1}^\mu Q_s\delta_{P_s}\). Hér er \(\delta_{P_s}(x,y)\) Dirac-fall í punktinum \(P_s=(\xi_s,\eta_s)\). Við gerum ráð fyrir að þetta séu ólíkir punktar og að skipting okkar í hlutsvæði sé það fín að í mesta lagi einn punktur \(P_s\) geti verið í hverjum rétthyrningi \(\Omega_j\). Í kafla 20 eru Dirac-föllin útskýrð sem veik markgildi af föllum, en það eina sem við þurfum að vita um þau í þessu samhengi er að

\[\begin{split}\iint_\Omega \delta_{P_s}(x,y)\, dxdy= \begin{cases} 1,&P_s\in \Omega,\\ 0,&P_s\not\in \Omega. \end{cases}\end{split}\]

Þegar verið er að útfæra aðferðina með þessu afbrigði af hægri hlið er athugað hvort einhver punktanna \(P_s\) liggur í \(\Omega_j\). Ef \(P_t\) gerir það, þá er

\[\iint_{\Omega_j}\big(f+\sum_{s=1}^\mu Q_s\delta_{P_s}(x,y)\big) \, dxdy \approx f(x_j,y_j)\, h^2+Q_t.\]

Síðan er jafnan stöðluð með því að deila með \(h^2\) og þá kemur \(b_j=f(x_j,y_j)+Q_t/h^2\) í hægri hlið nálgunarjöfnunnar. Í forritum fyrir aðferðina á rétthyrningi er best að framkvæma þessa aðgerð í blálokin þegar allt annað í nálgunarjöfnuhneppinu hefur verið reiknað.

11.5.5. Dirichlet verkefni á rétthyrningi

11.5.5.1. Sýnidæmi

Sýna dæmi

11.5.6. Blandað jaðarskilyrði

Jaðarpunktur

Mynd: Jaðarpunktur

Látum nú \((x_j,y_j)\in \partial_2 D\) vera jaðarpunkt, þar sem við höfum blandað jaðarskilyrði og gerum ráð fyrir að strikið \(S_j\) milli miðpunktanna \(m_{j,s}\) og \(m_{j,t}\) liggi allt í \(\partial_2 D\). Við táknum strikin milli \((x_j,y_j)\) og hinna punktanna með \(S_{j,l}\), \(S_{j,s}\) og \(S_{j,t}\). Þá er

\[\int_{\partial \Omega_j} p\dfrac{\partial u}{\partial n}\, ds =\sum_{k=l,s,t} \int_{S_{j,k}} p\dfrac{\partial u}{\partial n}\, ds +\int_{S_{j}} p\dfrac{\partial u}{\partial n}\, ds.\]

Nálgunin á vegheildinu á vinstri kantinum verður sú sama og áður,

\[\int_{S_{j,l}} p\dfrac{\partial u}{\partial n} \, ds \approx p_{j,l}\dfrac {u_l-u_j} h h\]

Efri og neðri kantarnir á \(\Omega_j\) hafa lengdina \(\tfrac 12 h\), svo nálganir á heildunum yfir þá verða

\[\int_{S_{j,s}} p\dfrac{\partial u}{\partial n} \, ds \approx p_{j,s}\dfrac{u_s-u_j}h\tfrac 12 h \qquad \text{ og } \qquad \int_{S_{j,t}} p\dfrac{\partial u}{\partial n} \, ds \approx p_{j,t}\dfrac{u_t-u_j}h\tfrac 12 h.\]

Í punktinum \((x_j,y_j)\) höfum við jaðarskilyrði

\[-\dfrac{\partial u}{\partial n}(x_j,y_j) =\dfrac{\alpha(x_j,y_j)u(x_j,y_j)-\gamma(x_j,y_j)}{\beta(x_j,y_j)} =\dfrac{\alpha_ju_j-\gamma_{j}}{\beta_{j}},\]

sem gefur nálgunina

\[-\int_{S_{j}} p\dfrac{\partial u}{\partial n} \, ds \approx p_j\dfrac{\alpha_ju_j-\gamma_j}{\beta_j} h.\]

Flatarmál \(\Omega_j\) er \(\tfrac 12 h^2\). Nú er \((x_j,y_j)\) ekki miðpunktur \(\Omega_j\) heldur jaðarpunktur, en það breytir því ekki að eðlilegt er að nálga flatarheildin í (Link title) fyrir \(\Omega=\Omega_j\) með

\[\iint_{\Omega_j} q u\, dxdy \approx q_ju_j \tfrac 12 h^2 \quad \text{ og } \quad \iint_{\Omega_j} f\, dxdy \approx f_j \tfrac 12 h^2.\]

Nú röðum við þessu saman í nálgunarjöfnu fyrir (Link title) með \(\Omega_j\) í hlutverki \(\Omega\),

\[-p_{j,l}(u_l-u_j)-\tfrac 12p_{j,s}(u_s-u_j)-\tfrac 12p_{j,t}(u_t-u_j) +p_j\dfrac{\alpha_ju_j-\gamma_j}{\beta_j} h +\tfrac 12 h^2 q_ju_j\approx \tfrac 12 h^2 f_j.\]

Nú skiptum við út \(u_k\) í staðinn fyrir \(c_k\) fyrir \(k=j,l,s,t\), deilum öllum liðum með \(\tfrac 12 h^2\) og fáum jöfnu fyrir nálgunargildin

\[-2h^{-2}p_{j,l}(c_l-c_j)-h^{-2}p_{j,s}(c_s-c_j)-h^{-2}p_{j,t}(c_t-c_j) +2h^{-1}p_j\dfrac{\alpha_jc_j-\gamma_j}{\beta_j} +q_jc_j = f_j.\]

Að lokum tökum við saman liðina í jöfnuna

\[\begin{split}\begin{gathered} \label{eq:21.5.5} \big(2h^{-2}p_{j,l}+h^{-2}p_{j,s}+h^{-2}p_{j,t} +2h^{-1}p_j\tfrac{\alpha_j}{\beta_j}+q_j\big)c_j \\ -2h^{-2}p_{j,l}c_l-h^{-2}p_{j,s}c_s-h^{-2}p_{j,t}c_t =f_j+2h^{-1}p_j\tfrac{\gamma_j}{\beta_j}.\end{gathered}\end{split}\]

Það er þess virði að skrifa sérstaklega upp tilfellið þegar \(p=1\),

\[\big(4h^{-2} +q_j+2h^{-1}\tfrac{\alpha_j}{\beta_j}\big)c_j -2h^{-2}c_l-h^{-2}c_s-h^{-2}c_t =f_j+2h^{-1}\tfrac{\gamma_j}{\beta_j}\]

11.5.6.1. Sýnidæmi

Sýna dæmi

Mismunaaðferðin hentar lang best þegar hlutafleiðujafnan er leyst á rétthyrningi og allir punktarnir \((x_j,y_j)\), \(j=1,2,\dots,M\), eru hnútpunktar netsins. Það er alveg vandræðalaust að setja upp nálgunarjöfnuhneppi á svæðum sem hafa aðra lögun, til dæmis á marghyrningum.

11.5.7. Jaðargildisverkefni á þríhyrningi

11.5.7.1. Sýnidæmi

Sýna dæmi

11.6. Almenn mismunaaðferð á rétthyrningi

Við látum nú \(D = \ ]a,b[\times ]c,d[ \ = \{(x,y)\, ;\, a<x<b, c<y<d\}\) tákna rétthyrning í planinu \({{\mathbb R}}^2\) með hliðar samsíða ásunum. Við ætlum að líta á almennt jaðargildisverkefni

\[\begin{split}\begin{cases} -\nabla\cdot\big(p\nabla u\big)+qu=f, &\text{í } D,\\ \alpha u + \beta \dfrac{\partial u}{\partial n} = \gamma,& \text{á } \partial D, \end{cases}\end{split}\]

hugsa okkur að föllin \(\alpha\), \(\beta\) og \(\gamma\) séu gefin á öllum jaðrinum, þannig að í þeim felist bæði Dirichlet-jaðarskilyrði og blönduð jaðarskilyrði. Við gerum því ráð fyrir að í jaðarpunktum \((x,y)\), þar sem \(\beta(x,y)=0\) gildi \(\alpha(x,y)\neq 0\) og að þar með sé gildið \(u(x,y)=\gamma(x,y)/\alpha(x,y)\).

Á hornunum er ytri þvervigurinn \(\mathbf n\) ekki skilgreindur. Þar má leyfa föllunum \(\alpha\), \(\beta\) og \(\gamma\) að vera ósamfelldum. Til þess að nálga vegheildi yfir tvö línustrik sem liggja að hornunum þá tökum við bara gildi á \(\alpha\), \(\beta\) og \(\gamma\) í miðpunktum strikanna sitt hvorum megin.

Við verðum að velja tölurnar \(a,b,c\) og \(d\) þannig að hægt sé að skipta \(D\) í reglulegt net með kantlengdina \(h\). Þetta þýðir að \(N=(b-a)/h\) og \(M=(d-c)/h\) verði heilar tölur. Til þess að leysa þetta verkefni verðum við að hafa þrjú hnitakerfi í kollinum samtímis og við verðum að hafa rithátt yfir þau öll:

(1) Hnit netpunkta í \((x,y)\)-plani:   Við erum bundin af því að matlab leyfir okkur ekki að númera stök vigra frá \(0\), svo við skulum láta \(\ell=N+1\) tákna fjölda punkta í hverri línu og skilgreina skiptinguna \(a=x_1<x_2<\cdots<x_\ell=b\), þannig að \(x_j=a+(j-1)h\), \(j=1,\dots,\ell\). Ef við látum \(m=M+1\) tákna fjölda lína þá er skiptingin \(c=y_1<y_2<\cdots<y_m=d\) með \(y_k=c+(k-1)h\), \(k=1,\dots,m\). Heildarfjöldi netpunkta er \(n=\ell\cdot m=(N+1)(M+1)\).

(2) Tvívíð númering netpunkta \((j,k)\) :  Hér eru \(j\) og \(k\) heiltölur með \(1\leq j\leq \ell\) og \(1\leq k\leq m\).

(3) Einföld númering netpunkta \(i\) :   Við setjum einfalda númeringu á alla punkta netsins þannig að tvívíða númerið \((j,k)\) gefi \(i=j+(k-1)\ell\), þ.e.a.s. við númerum punktana eftir láréttu línunum frá vinstri til hægri, byrjum neðst og förum upp. Öfugt, ef gefin er talan \(i\), þá þurfum við að geta reiknað út \((j,k)\). Ef \(\ell=N+1\) gengur upp í \(i\), þá er \(j=\ell\) og \(k=i/\ell\). Ef hins vegar \(\ell\) gengur ekki upp í \(i\) þá er \(j\) afgangurinn af \(i\) eftir deilingu með \(\ell\), \(j= i\mod \ell\), og \(k=1+\lfloor i/\ell\rfloor\), þar sem \(\lfloor t \rfloor\) er stærsta heiltala \(\leq t\). Ég mæli með því að þið notið matlab skipanirnar floor, sem gefur heiltöluhlutann af rauntölu og mod sem gefur afgang við heiltöludeilingu, til þess að búa til fall fyrir þennan útreikning, því þið þurfið oft á honum að halda.

11.6.1. Uppbygging forrits

Veigmesti hluti forrits til þess að finna nálgun á (Link title) er úrreikningur á \(n\times n\) jöfnuhneppi \(A{\mathbf c}={\mathbf b}\) þar sem stakið \(c_i\) í lausnarvigrinum \({\mathbf c}\) er nálgunargildi fyrir \(u(x_j,y_k)\). Það er margt sem þarf að skoða:

11.6.1.1. Innri punktar:

Lítum fyrst á punkt \((x_j,y_j)\) í netinu með númerið \(i\) þar sem \(1<j<\ell\) og \(1<k<m\). Einu stökin í \(A\) í línu \(i\) sem eru frábrugðin \(0\) eru fimm talsins \(a_{i,i-\ell}\), \(a_{i,i-1}\), \(a_{i,i+1}\), \(a_{i,i+\ell}\) og \(a_{i,i}\) og gildi þeirra eru lesin út úr jöfnu (Link title). Í hægri hliðinni stendur \(b_i=f_i=f(x_j,y_k)\).

Innri punktur

Mynd: Innri punktur

11.6.1.2. Innri punktar á jöðrum:

Við lítum nú á punktana á jaðrinum \(\partial D\) sem eru ekki hornpunktar, segjum að við tökum punkt á hægri jaðri eins og myndin sýnir. Ef \(\beta(x_j,y_k)=0\), þá er fallsjaðarskilyrði og jafnan í punktinum \(i\) verður

\[c_i=\gamma(x_j,y_k)/\alpha(x_j,y_k).\]

Eina stakið í línu \(i\) í \(A\) sem er frábrugðið \(0\) er \(a_{i,i}=1\) og í hægri hliðinni stendur \(b_i=\gamma(x_j,y_k)/\alpha(x_j,y_k).\) Ef hins vegar \(\beta(x_j,y_k))\neq 0\), þá er það jafna (Link title) sem gildir með (\(\alpha_2=\alpha\), \(\beta_2=\beta\) og \(\gamma_2=\gamma\)). Eins er farið að við punktana á hinum köntunum.

Innri punktur á jaðri

Mynd: Innri punktur á jaðri

11.6.1.3. Hornpunktar:

Byrja þarf á því að athuga hvort \(\beta(x_j,y_k) = 0\) til þess að sjá út hvort fallgildið er gefið í punktinum. Ef svo er þá eru stuðlarnir settir inn í fylkið eins og í síðasta lið. Ef hins vegar \(\beta(x_j,y_k)\neq 0\), þá þarf að skrifa upp mismunajöfnur og taka tillit til þess að þarna geta föllin \(\alpha\), \(\beta\) og \(\gamma\) verið ósamfelld. Gerið grein fyrir því hvernig jöfnurnar eru leiddar út í öllum fjórum hornpunktunum með skýringarmyndum.

11.6.1.4. Punktuppsprettur:

Við viljum leyfa að hægri hlið jöfnunnar hafi punktuppsprettur í nokkrum punktum. Það gerum við með því að skipta á \(f\) og \(f+\sum_{s=1}^\mu Q_s \delta_{(\xi_s,\eta_s)}\), þar sem \(\delta_{(\xi_s,\eta_s)}\) táknar Dirac-delta-fall í punktinum \((\xi_s,\eta_s)\). Allir þessir punktar þurfa að vera innri netpunktar, segjum \((x_j,y_k)\). Ef númer hans er \(i\), þá á að setja \(b_i=f(x_j,y_k)+h^{-2}Q_s\).

11.6.1.5. Gefin gildi í einstaka netpunktum:

Auðvelt er að lausnina til þess að taka ákveðin gildi í nokkrum völdum innri punktum í rétthyrningnum \(R\). Segjum að við höfum einhverja punkta \((z_s,w_s)\), \(s=1,\dots,\mu\) og að við viljum að fallið \(u\) takið gildið \(U_s\) í næsta netpunkti við \((z_s,w_s)\). Segjum að hann sé \((x_j,y_k)\) og að númerið sé \(i\). Þá setjum við öll stökin í línu \(i\) í \(A\) jöfn \(0\) nema \(a_{i,i}=1\). Í hægri hliðina setjum við \(b_i=U_s\).

11.6.1.6. Útreikningur á lausn:

Þegar fylkið \(A\) hefur verið reiknað út er rétt að gefa skipununa sparse í Matlab til þess að nýta sér að fylkið er rýrt (e. sparse) og flýta fyrir úrlausn jöfnuhneppisins: S=sparse(A); c=S\(\backslash\)b; Það þarf að ganga á nágunargildin \(i\) finna númeringuna \((j,k)\) og stinga nálgunarlausninni inn í fylkið \(W\) þannig að \(W_{jk}=c_i\). Hér lýkur úrlausnarferlinu.

11.6.1.7. Teikning á nálgunarlausn:

Graf lausninarinnar er teiknað með surf(x,y,W’) og jafnhæðarlínur hennar með contour(x,y,W’) (Athugið að hér hefur fylkinu verið bylt til þess að teikningarnar komi rétt út í \(xy\)-hnitunum.)

11.7. Æfingardæmi

11.7.1. Æfingardæmi

11.7.1.1. Dæmi

Lítum á fjögur jaðargildisverkefni af gerðinni (Link title):

a) \([a,b]=[0,1]\), \(p(x)=1+x\), \(q(x)=x\), \(f(x)=(x+1)(\tfrac 12 x^2+\tfrac 12 x -2)\), \(u(a)=\tfrac 12\), \(u'(b)=2\).

b) \([a,b]=[-1,1]\), \(p(x)=1+e^{-x}\), \(q(x)=1+x\), \(f(x)=xe^x\), \(u(a)-u'(a)=0\), \(u'(b)=e\).

c)  \([a,b]=[1,2]\), \(p(x)=x\), \(q(x)=1/x\), \(f(x)=-2\), \(u'(a)=0\), \(u(b)-2u'(b)=-2\).

d)  \([a,b]=[1,2]\), \(p(x)=1/x\), \(q(x)=x\), \(f(x)=0\), \(u(a)=1/\sqrt e\), \(u(b)+2u'(b)=0\).

Staðfestið að jafnan \(Lu=-(pu')'+qu=f\) sé uppfyllt á \([a,b]\) fyrir gefnu föllin \(p\), \(q\), \(f\) og að jaðarskilyrðin séu uppfyllt í tilfellunum:

a) \(u(x)=\tfrac 12(1+x)^2\),   b) \(u(x)=e^x\), c) \(u(x)=x\ln x-x\),   d) \(u(x)=e^{-\frac 12 x^2}\).

11.7.1.2. Dæmi

abcd) Útfærið mismunaaðferðina í grein 21.2 fyrir dæmi 1abcd) með \(N=3\), og finnið hámarksskekkjuna \(\max_{j=0,\dots,N}|u(x_j)-c_j|\).

11.7.1.3. Dæmi

abcd) Útfærið mismunaaðferðina í grein 21.3, heildun yfir hlutbil, fyrir dæmi 1abcd) með \(N=3\), og finnð hámarksskekkjuna \(\max_{j=0,\dots,N}|u(x_j)-c_j|\).

11.7.1.4. Dæmi

Búið til Matlab forrit sem les inn öll gögnin í jaðargildisverkefninu (Link title) ásamt tölunni \(N\) og ákvarðar nálgunarlausn samkvæmt jöfnu (Link title).

abcd) Prófið forritið á jaðargildisverkefnið í dæmi 1abcd) fyrir \(N=2,4,8,16\).
(i) Teiknið upp nálgunina og réttu lausnina.
(ii) Reiknið út hámarksskekkjuna \(\max_{j=0,\dots,N}|u(x_j)-c_j|\) fyrir \(N=2,4,8,16\).
(iii) Ef hámarksskekkjan er \(O(h)\), þá á að helmingast hún ef \(N\) tvöfaldast. Gerist það?

11.7.1.5. Dæmi

Búið til Matlab forrit sem les inn öll gögnin í jaðargildisverkefninu (Link title) ásamt tölunni \(N\) og ákvarðar nálgunarlausn samkvæmt jöfnu (Link title).

abcd) Prófið forritið á jaðargildisverkefnið í dæmi 1abcd) fyrir \(N=2,4,8,16\).
(i) Teiknið upp nálgunina og réttu lausnina.
(ii) Reiknið út hámarksskekkjuna \(\max_{j=0,\dots,N}|u(x_j)-c_j|\) fyrir \(N=2,4,8,16\).
(iii) Ef hámarksskekkjan er \(O(h^2)\), þá á fjórðungast hún nokkurn veginn ef \(N\) tvöfaldast. Gerist það?

11.7.1.6. Dæmi

Látum \(\chi\) vera fall á \(]0,\delta[\), \(\delta>0\), \(0<j<k\). Sýnið:

(i)  Ef \(\chi(h)=O(h^k)\), þá er \(\chi(h)=o(h^j)\).

(ii) Ef \(\chi(h)=O(h^k)\), þá er \(\chi(h)/h^j=O(h^{k-j})\).

(iii)  Ef \(\chi(h)=o(h^k)\), þá er \(\chi(h)/h^j=o(h^{k-j})\).

11.7.1.7. Dæmi

Látum \(\chi_1\) og \(\chi_2\) vera föll á \(]0,\delta[\), \(\delta>0\), \(k_1>0\) og \(k_2>0\). Sýnið:

(i)  Ef \(\chi_1(h)=o(h^{k_1})\) og \(\chi_2(h)=O(h^{k_2})\), þá er \(\chi_1(h)\chi_2(h)=o(h^{k_1+k_2})\).

(ii)  Ef \(\chi_1(h)=o(h^{k_1})\) og \(\chi_2(h)=o(h^{k_2})\), þá er \(\chi_1(h)+\chi_2(h)=o(h^{\min\{k_1,k_2\}})\).

11.7.1.8. Dæmi

Sýnið: Ef \(p\in C^2[a,b]\) og \(u\in C^3[a,b]\), þá er \(S_0u=O(h^2)\).

11.7.1.9. Dæmi

Sýnið síðan að ekki fáist betri staðarskekkja en \(S_ju(h)=O(h^2)\), þótt við gefum okkur að \(p\in C^3[a,b]\) og \(u\in C^5[a,b]\) og liðum þessi föll í Taylor-liðanir

\[\begin{split}\begin{aligned} u(x+h)&=u(x)+u'(x)h+\tfrac 12 u''(x)h^2+\tfrac 16 u'''(x)h^3+ \tfrac 1{24}u^{(iv)}(x)h^4+O(h^5),\\ p(x+h)&=p(x)+p'(x)h+\tfrac 12 p''(x)h^2+O(h^3).\end{aligned}\end{split}\]

11.7.1.10. Dæmi

Látum \(D=\{(x,y) \,;\, a<x<b, c<y<d\}\) og lítum á Dirichlet-verkefnið

\[\begin{split}\begin{cases} -\nabla\cdot\big(p\nabla u\big)+qu=f& \text{á } D,\\ u=\gamma,& \text{á } \partial D. \end{cases}\end{split}\]

a)  \(a=c=0\), \(b=d=1\), \(p=1\), \(q=0\), \(f=0\), \(\gamma(0,y)=y/(1+y^2)\), \(\gamma(1,y)=y/(4+y^2)\), \(\gamma(x,0)=0\) og \(\gamma(x,1)=1/(2+2x+x^2)\).

b)  \(a=c=0\), \(b=d=1\), \(p=1\), \(q=0\), \(f=x^2+y^2\), \(\gamma(0,y)=\gamma(x,0)=0\), \(\gamma(1,y)=-\tfrac 12y^2\) og \(\gamma(x,1)=-\tfrac 12 x^2\).

c)  \(a=1\) \(b=2\), \(c=0\), \(d=1\), \(p=1\), \(q=0\), \(f=0\), \(\gamma(1,y)=\ln(y^2+1)\), \(\gamma(2,y)=\ln(y^2+4)\), \(\gamma(x,0)=2\ln x\) og \(\gamma(x,1)=\ln(x^2+1)\).

d)   \(a=c=-1\), \(b=d=1\), \(p=1\), \(q=-52\), \(f=0\), \(\gamma(-1,y)=\cos(6y-4)\), \(\gamma(1,y)=\cos(6y+4)\), \(\gamma(x,-1)=\cos(4x-6)\) og \(\gamma(x,1)=\cos(4x+6)\).

Staðfestið að fallið \(u\) sé lausnir verkefnisins: a) \(u(x,y)=\tfrac y{(x+1)^2+y^2}\), b) \(u(x,y)=-\tfrac 12(xy)^2\), c) \(u(x,y)=\ln(x^2+y^2)\), d) \(u(x,y)=\cos(4x+6y)\).

11.7.1.11. Dæmi

abcd) Lítum á Dirichlet-verkefnin í síðasta dæmi.

(i) Beitið aðferðinni heildun yfir hlutbil til þess að leiða út nálgunarjöfnur fyrir nálgunargildi \(c_1,\dots,c_4\) í fjórum innri punktum rétthyrningsins, eins og gert er í grein 21.5.

(ii) Leysið jöfnurnar og berið nálgunina saman við réttu lausnina.

11.7.1.12. Dæmi

Búið til Matlab-forrit sem les inn gögnin sem gefin eru í almenna Dirichlet-verkefninu í dæmi 10 ásamt kantlengdinni \(h\) og skilar út nálgunarlausn. Athugið að talan \(h\) þarf að vera valin þannig að hún sé sameiginleg billengd í skiptingum á bilunum \([a,b]\) og \([c,d]\). Hér er átt við að það þarf að sjá til þess að til séu náttúrlegar tölur \(m\) og \(n\) þannig að \(h=(b-a)/m =(d-c)/n\).

abcd) Prófið forritið á gögnunum í næst síðasta dæmi. Notið réttu lausnirnar til þess að reikna út hámarksskekkju með \(m=n=3\).

11.7.1.13. Dæmi

Notið forritið úr síðasta dæmi til þess að kanna hvort skekkjan í reikningunum í síðasta dæmi er \(O(h^2)\) með því að keyra nokkrar keyrslur og helminga kantlengdina í hvert skipti.

11.7.1.14. Dæmi

abcd) (i) Sýnið að föllin \(u(x,y)\) í dæmi 10 séu lausnir á jaðargildisverkefnunum.

(ii) Lesið út hvernig föllin \(\alpha\), \(\beta\) og \(\gamma\) eru skilgreind í hverju tilfelli fyrir sig.

a) \(\begin{cases} \nabla^2 u=0, \quad \text{á } D=\{(x,y)\,;\, 0<x<1,0<y<1\},\\ u(x,0)=0, \quad 2 u(x,1)+(x^2+2x+2)\partial_yu(x,1)=1,&0<x<1,\\ u(0,y)=\tfrac y{y^2+1}, \quad \partial_xu(1,y)=-\tfrac{4y}{(y^2+4)^2},& 0<y<1. \end{cases}\)

b) \(\begin{cases} -\nabla^2 u=x^2+y^2, \quad \text{á } D=\{(x,y)\,;\, 0<x<1,0<y<1\},\\ \partial_yu(x,0)=0, \quad -2u(x,1)+\partial_yu(x,1)=0,&0<x<1,\\ u(0,y)=0, \quad u(1,y)=-\tfrac 12 y^2,& 0<y<1. \end{cases}\)

c) \(\begin{cases} \nabla^2 u=0, \quad \text{á } D=\{(x,y)\,;\, 1<x<2,0<y<1\},\\ \partial_yu(x,0)=0, \quad u(x,1)=\ln(x^2+1), &1<x<2,\\ \partial_xu(1,y)=\tfrac y{y^2+1}, \quad u(2,y)=\ln(y^2+4),& 0<y<1. \end{cases}\)

d) \(\begin{cases} -\nabla^2 u-52u=0, \quad \text{á } D=\{(x,y)\,;\, -1<x<1,-1<y<1\},\\ \partial_yu(x,-1)=-6\sin(4x-6), \quad u(x,1)=\cos(4x+6), &-1<x<1,\\ u(-1,y)=\cos(6y-4), \quad u(1,y)=\cos(6x+4),& -1<y<1. \end{cases}\)

11.7.1.15. Dæmi

(i) Beitið heildun yfir hlutbil til þess leiða út nálgunarjöfnuhneppi fyrir jaðargildisverkefnin sem gefin eru í síðasta dæmi í punktunum sem gefnir eru.

(ii) Reiknið út nálgunargildin og berið þau saman við rétta lausn.

a)  \((\tfrac 12,\tfrac 12)\), \((1,\tfrac 12)\), \((\tfrac 12,1)\) og \((1,1)\).

b)  \((\tfrac 12,0)\), \((\tfrac 12,\tfrac 12)\) og \((\tfrac 12,1)\).

c)  \((1,0)\), \((\tfrac 32,0)\), \((1,\tfrac 12)\) og \((\tfrac 32,\tfrac 12)\).

d)  \((-\tfrac 13,-1)\), \((\tfrac 13,-1)\), \((-\tfrac 13,\tfrac 13)\), \((\tfrac 13,\tfrac 13)\), \((-\tfrac 13,1)\) og \((\tfrac 13,1)\).

11.7.1.16. Dæmi

Við lítum á þríhyrningssvæðið \(D=\{(x,y) \,;\, 0<y<1-x, 0<x<1 \}\) og eftirfarandi jaðargildisverkefni á því:

\[\begin{split}\begin{cases} -\nabla^2u+u=1,&\text{á } D,\\ u(x,0)=1-x,&0<x<1,\\ u(0,y)=1-y,&0<y<1,\\ (1+x) u(x,1-x)+\dfrac{\partial u}{\partial n}(x,1-x)=xy,& 0<x<1. \end{cases}\end{split}\]
Skipting á þríhyrningasvæði

Mynd: Skipting á þríhyrningasvæði

(i) Veljið punkta \((x_1,y_1),\dots,(x_{10},y_{10})\) og hlutsvæði \(\Omega_1\), \(\Omega_2\) og \(\Omega_3\) eins og sýnt eru á myndinni. Leiðið út \(3\times 3\) jöfnuhneppi fyrir \(c_1\approx u(x_1,y_1)\), \(c_2\approx u(x_2,y_2)\) og \(c_3\approx u(x_3,y_3)\) með mismunaaðferð sem byggir á heildun yfir hlutsvæðin þrjú.

(ii) Reiknið út nálgunargildin.