„Interpoláció” változatai közötti eltérés

[nem ellenőrzött változat][nem ellenőrzött változat]
 
== Köbös spline-interpoláció ==
:A Lagrange-interpoláció fentebb megfogalmazott hátrányát kiküszöbölendő, kisebb fokú polinomokat használunk, melyeket lokálisan definiálunk. Az egyes polinomok mindig két egymást követő tabulált pont között értelmezettek, viszont megtartva a simasági tulajdonságaiból a Lagrange-interpolációs polinomnak, úgy határozzuk meg a polinomok együtthatóit, hogy a tabulált illeszkedési pontok helyén a [[derivált]]ak megfelelőképpen viselkedjenek. A köbös spline esetén, mint neve is elárulja, harmadfokú polinomokkal kötjük össze az egymást követő pontokat. A harmadfokú polinom négy együtthatója soknak tűnik, ha figyelembe vesszük, hogy elsőfokú polinomokkal is ki tudtuk elégíteni az interpoláció alapfeltételét.A magasabb fok és az azzal járó, plusz információt hordozó együtthatók szerepe az, hogy olyan módon görbüljön a két pont között a polinom, hogy annak végpontjainál simán illeszkedjen a szomszédos szakaszokon értelmezett polinomokhoz.
 
Konkrétan, az interpolációs függvénnyel szemben támasztott követelmények a következők:
* A [[másodrendű derivált]] is legyen folytonos.
 
Feladatunk ez esetben az, hogy meghatározzuk az egyes szakaszokon értelmezett polinomok együtthatóit a fentebbi feltételek tiszteletben tartásával. Szem előtt tartjuk, hogy a tabulált pontokban a másodrendű derivált értelmezett és jól meghatározott értéket kell felvegyen.A számítás megkönnyítése érdekében úgy tekintjük, mintha a másodrendű derivált értékei ezekben a pontokban ismertek lennének és '''''y″''<sub>''(j)''</sub>'''-vel jelöljük őket. Minthogy az '''y″(x)''' derivált folytonos kell hogy legyen, az interpolációs polinom másodrendű deriváltját leírhatjuk lineáris interpolációval.
 
Az '''[''x''<sub>''j</sub> , ''x''<sub>''j+1''</sub> )''' intervallumon fennáll, hogy:
 
:'''<math>y''_j(x)=A_j(x)y''_j+B_j(x)y''_{j+1}</math>''' , ahol az '''''A''<sub>''j''</sub>(x)''' és '''''B''<sub>''j''</sub>(x)''' függvények azonosak a lineáris interpolációnál már egyszer megadottakkal.
 
Az '''<math>y_j(x)</math>''' interpolációs függvényszakaszról tudjuk, hogy maga is folytonosan kapcsolódik a szomszédos szakaszokon értelmezett függvényekhez, de a simasági követelmények miatt általában nem lineáris. Teljesen általánosan felírható mint
 
:'''<math>y_j(x)=A_j(x)y_j+B_j(x)y_{j+1}+g_j(x)</math>''' , ahol a folytonossági feltételt kielégítendő kikötjük, hogy '''<math>g_j(x_j)=g_j(x_{j+1})=0</math>'''.
 
Tekintve az '''<math>A_j(x)</math>''' és '''<math>B_j(x)</math>''' függvények [[lineáris függvény|lineáris]] voltát, illetve a fentebb említett két kifejezés kapcsolatát, érvényes, hogy:
 
'''<math>g''_j(x)=A_j(x)y''_j+B_j(x)y''_{j+1}</math>''' , melynek kétszeres integrálása után a '''<math>g_j(x)</math>'''-et felírhatjuk, mint
'''<math>g_j(x)=C_j(x)y''_j+D_j(x)y''_{j+1}</math>''' , ahol fennáll, hogy:
 
:'''<math>\C''_j(x)=A_j(x)</math>''' és '''<math>\ D''_j(x)=B_j(x)</math>'''.
 
Megoldva a két másodrendû [[differenciálegyenlet]] et x-ben, és figyelembe véve, hogy <math>\C_j(x_j)=D_j(x_j)=C_j(x_{j+1})=D_j(x_{j+1})=0</math> azt kapjuk, hogy
<math>C_j(x)=\frac{1}{6}(A_j^3(x)-A_j(x))(x_{j+1}-x_j)^2</math>
 
<math>D_j(x)=\frac{1}{6}(B_j^3(x)-B_j(x))(x_{j+1}-x_j)^2</math>.
 
A keresett '''<math>y_j(x)</math>''' interpolációs polinom meg is lenne határozva, ha az '''<math>y''_j</math>''' másodrendű derivált értékek, az '''<math>y_j</math>'''-hez hasonlóan tabuláltak, azaz ismertek lennének.Viszont mindeddig csak az '''<math>y_j(x)</math>''' és
'''<math>y''_j(x)</math>''' másodrendű [[derivált]] folytonosságát használtuk fel és az '''<math>y'_j(x)</math>''' elsőrendű deriváltét nem.Az '''<math>[x_j,x_{j+1})</math>''' intervallumon:
 
:<math>y'_j(x)=\frac{y_{j+1}-y_j}{x_{j+1}-x_j}-\frac{x_{j+1}-x_j}{6}[(3A_j(x)^2-1)y''_j+(3B_j(x)^2-1)y''_{j+1}</math>.
 
Felírva ugyanezt az '''<math>[x_{j-1},x_j)</math>''' szakaszra:
 
<math>y'_{j-1}(x)=\frac{y_{j}-y_{j-1}}{x_{j}-x_{j-1}}-\frac{x_{j}-x_{j-1}}{6}[(3A_{j-1}(x)^2-1)y''_{j-1}+(3B_{j-1}(x)^2-1)y''_{j}</math>.
 
A [[derivált folytonossága]] azt jelenti, hogy '''<math>y'_{j-1}(x_j)=y'_j(x_j)</math>''', mely az
18

szerkesztés