Ellen®rz® kérdések
7. Numerikus deriválás
Ebben a fejezetben azt vizsgáljuk, hogy hogyan lehet egy függvény deriváltjait közelíteni a függvényértékek segítségével. Bevezetjük a haladó-, retrográd- és központi dierenciákat. A bemutatott képletek a dierenciálegyenletek nume-rikus megoldásával foglalkozó fejezetben játszanak majd fontos szerepet.
7.1. A numerikus deriválás alapfeladata
Tegyük fel, hogy azx0, x0±h, x0±2h, . . . , x0±kh∈R(h >0, k∈N) pontokban ismertek egyf kell®en sokszor dierenciálható függvény függvényértékei. Jelölje ezeket rendref0, f±1, f±2, . . . , f±k. Ebben a fejezetben azt vizsgáljuk meg, hogy hogyan közelíthetjük azf függvény deriváltjait az x0 pontban (az egyszer¶ség kedvéért f00, f000 stb. jelöli ezeket) a függvényértékek segítségével és hogy ezek a közelítések milyen tulajdonságokkal rendelkeznek.
A fenti típusú feladattal találkozunk amikor diszkrét id®pontokban mért helykoordináták se-gítségével sebességet, diszkrét sebességértékek sese-gítségével gyorsulást, diszkrét töltésmennyiség értékek esetén áramer®sséget stb. szeretnénk becsülni. Pl. a GPS m¶holdak 15 percenként su-gároznak adatokat a helyzetükr®l. Hogyan közelíthetnénk a m¶hold sebességét és gyorsulását az adatok alapján? A numerikus deriválás másik fontos alkalmazási területe a dierenciálegyenletek numerikus megoldása. Pl. a véges dierenciás módszerek esetén az ismeretlen megoldásfüggvény deriváltjait az egyel®re szintén ismeretlen diszkrét pontokbeli függvényértékek segítségével köze-lítjük. Ebb®l egy egyenletrendszert nyerünk a függvényértékekre, amit megoldva megkaphatjuk a megoldás közelítését.
7.1.1. deníció.
Jelölje a kell®en sokszor deriválhatóf függvény egy tetsz®leges deriváltját azx0pontbanDf, és ennek egy közelítése legyen ∆f(h) (a h argumentum azt fejezi ki, hogy a közelítés függ az alappontok h távolságától). Azt mondjuk, hogy az x0 pontban a ∆f(h) közelítés rendje (legalább) r, ha van olyanK >0szám, hogy
|Df−∆f(h)| ≤Khr, azaz, ha|Df−∆f(h)|=O(hr).
7.1.2. megjegyzés. A fenti deníciót már az 1.3.10. denícióban megadtuk általános közelíté-sekre. Ez a deníció csupán az általános eset megfogalmazása a deriváltak közelítésének problé-májára.
7.1.3. megjegyzés. Mi csak azt az esetet vizsgáljuk, mikor az alappontok elhelyezkedése ekvidisz-táns. A nem ekvidisztáns esetre vonatkozó formulák hasonlóan nyerhet®k (lásd7.6.2.feladat).
7.2. Az els® derivált közelítése
Egy függvény deriváltját a dierenciahányados határértékeként értelmeztük. Így kézenfekv® a deriváltat a dierenciahányados értékeivel közelíteni. Két egyszer¶ eset erre vonatkozóan a
∆f+:=f1−f0
h ún. haladó (angolul forward) dierencia és a
∆f−:= f0−f−1
h
ún. retrográd (angolul backward) dierencia. Az elnevezés onnét származik, hogy a haladó die-rencia azxértékek növekedési irányába (a számegyenesen jobbra) es® alappontot használja, míg a retrográd a csökkenés irányába es®t.
7.2.1. tétel.
A haladó és a retrográd dierencia is els®rend¶ közelítése egyf ∈C2 függvény deriváltjának.
Bizonyítás. Alkalmazzuk a Taylor-sorfejtést a másodrend¶ tagnál a Lagrange-féle maradékta-got használva egy megfelel®ξpontban.
∆f+=f1−f0
h = (f0+f00h+f00(ξ)h2/2)−f0
h =f00 +f00(ξ)h/2 =f00+O(h).
∆f−= f0−f−1
h = f0−(f0−f00h+f00(ξ)h2/2)
h =f00 −f00(ξ)h/2 =f00 +O(h).
Azaz a közelítések valóban els®rend¶ek.
A fenti bizonyítás szerepelt a konvergenciarendre vonatkozó példaként az1.3.11.példában. Az els®rend¶ közelítés szemléletesen azt jelenti, hogy felezvehértékét a hiba is körülbelül felez®dik.
Hogyan érhetnénk el magasabb rend¶ közelítéseket? Tekintsük a7.2.1.ábrát! A haladó dierencia megegyezik a (h)-val jelölt egyenes meredekségével, míg a retrográd dierencia az (r)-rel jelölt egyenes meredekségét adja. Az érint®egyenest (é) jelöli. Az ábra jól szemlélteti, hogy az(x−1, f−1), (x1, f1)pontokat összeköt® egyenes meredeksége közelebb állhat az érint® meredekségéhez, mint a haladó és retrográd dierenciák. Ez a meredekség
7.2.1. ábra. Az els®rend¶ derivált haladó, retrográd és központi közelítésének szemléltetése.
7.3. A második derivált közelítése 195
f1−f−1
2h =∆f++ ∆f−
2 ,
azaz megegyezik a haladó és retrográd dierenciák átlagával. A
∆fc:= ∆f++ ∆f−
2
értéket az f függvényx0 pontbeli központi (angolul centered) dierenciájának nevezzük. Vizs-gáljuk meg, hogy ez a közelítés valóban jobb-e, mint a másik kett®!
7.2.2. tétel.
A központi dierencia másodrend¶ közelítése egy f ∈C3függvény els® deriváltjának.
Bizonyítás. Megint a Taylor-sorfejtést alkalmazzuk. Most a harmadfokú tagnál szerepeltetjük a Lagrange-féle maradéktagot megfelel®ξ1ésξ2konstansokkal. Mivelf000folytonos, így van olyan ξérték, melyre(f000(ξ1) +f000(ξ2))/2 =f000(ξ).
∆fc= f1−f−1
2h =f0+f00h+f000h2/2 +f000(ξ1)h3/6
2h −f0−f00h+f000h2/2−f000(ξ2)h3/6 2h
=f00 +f000(ξ)h2
6 =f00+O(h2).
Ez mutatja, hogy ez a közelítés másodrend¶.
7.3. A második derivált közelítése
Mivel a második derivált az els® derivált deriváltja, így kézenfekv®nek t¶nik azt a
∆2fc:= ∆f+−∆f−
h = f1−2f0+f−1 h2
módon közelíteni. Ezt a közelítést másodrend¶ központi dierenciának nevezzük.
7.3.1. tétel.
A másodrend¶ központi dierencia másodrend¶ közelítése egy f ∈ C4 függvény második deriváltjának.
Bizonyítás. Taylor-sorfejtést használva a megfelel® ξ1,ξ2ésξkonstansokkal
∆2fc= f0+f00h+f000h2/2 +f0000h3/6 +f0000(ξ1)h4/24
h2 −2f0
h2 +f0−f00h+f000h2/2−f0000h3/6 +f0000(ξ2)h4/24
h2 =f000+f0000(ξ)h2
12 =f000+f0000(ξ)h2 12. Ez mutatja, hogy ez a közelítés másodrend¶.
7.4. A deriváltak másfajta közelítései
Természetesen a deriváltakat nem csak a dierenciahányados segítségével közelíthetjük. Kézenfek-v®nek t¶nik az a megközelítés is, hogy az adott pontokra interpolációs polinomot illesztünk, és a deriváltakat az interpolációs polinom deriváltjaival közelítjük. Ezeket a közelítéseket interpolációs dierenciálási formuláknak nevezzük. Az alábbi, bizonyítás nélkül közölt tételek azt mutatják, hogy az interpolációs dierenciálási formulák pontosan ugyanazokat a deriváltközelítéseket adják, mint amiket az el®z® fejezetekben a dierenciahányadosok segítségével nyertünk.
7.4.1. tétel.
Az(x0, f0),(x0+h, f1)pontokra illeszked® interpolációs polinom (legfeljebb els®fokú) derivált-ja egybeesik a haladó dierenciával. Az(x0−h, f−1),(x0, f0)pontokra illeszked® interpolációs polinom (legfeljebb els®fokú) deriváltja egybeesik a retrográd dierenciával.
7.4.2. tétel.
Az (x0−h, f−1),(x0, f0),(x0 +h, f1) pontokra illeszked® interpolációs polinom (legfeljebb másodfokú) deriváltja x0-ban egybeesik a központi dierenciával, második deriváltja pedig a másodren¶ központi dierenciával.
7.4.3. tétel.
Az(x0−h, f−1),(x0, f0),(x0+h, f1)pontokra illeszked® harmadfokú spline interpolációs függ-vényx0-pontbeli deriváltja egybeesik a központi dierenciával.
7.4.4. megjegyzés. A deriváltakat nem csak azx0, x0±h, x0±2h, . . .pontokban közelíthetjük, hanem az adott intervallum bármelyik pontjában. Ezt megtehetjük úgy, hogy a kiszámolt deri-váltközelítésekre interpolációs polinomot illesztünk, és ennek értékeivel közelítjük a deriváltakat az adott pontok között. Másik lehet®ség, hogy megfelel®en módosítjuk a fejezetben megismert képleteket. Pl. az(f1−f0)/hképlettel azf függvényx0+h/2pontbeli deriváltja közelíthet®.
7.5. Lépéstávolság-dilemma
A deriváltak közelítése tart a pontos deriváltértékhez, ha ahlépéstávolság nullához tart. Elméle-tileg tehát minél kisebbhértéket választunk, a közelítés annál pontosabb lesz. Ahogy a következ®
példa mutatja, a gyakorlatban ez nem így van.
7.5.1. példa. Közelítsük a cos00(0.8) = −0.6967067093értéket a másodrend¶ központi dif-ferenciával! Tegyük fel, hogy mindent 9 tizedesjegy pontossággal számolunk. A pontos deri-váltérték és a közelítés eltérését az alábbi táblázat mutatja.
h |közelítés−cos00(0.8)|
0.1 0.0005804093 0.01 0.0000167093 0.001 0.0007067093