Interpolace - Interpolation
Tento článek obsahuje seznam obecných Reference, ale zůstává z velké části neověřený, protože postrádá dostatečné odpovídající vložené citace.Říjen 2016) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
V matematický pole numerická analýza, interpolace je typ odhad, metoda konstrukce nového datové body v rozsahu a diskrétní sada známých datových bodů.[1]
v inženýrství a Věda, jeden často má řadu datových bodů získaných pomocí vzorkování nebo experimentování, které představují hodnoty funkce pro omezený počet hodnot parametru nezávislé proměnné. Často se to vyžaduje interpolovat, tj. odhadnout hodnotu této funkce pro střední hodnotu nezávislé proměnné.
Úzce souvisejícím problémem je přiblížení komplikované funkce jednoduchou funkcí. Předpokládejme, že vzorec pro danou funkci je známý, ale příliš komplikovaný na efektivní vyhodnocení. Několik datových bodů z původní funkce lze interpolovat, aby se vytvořila jednodušší funkce, která je stále poměrně blízká původnímu. Výsledný zisk v jednoduchosti může převážit ztrátu z chyby interpolace.
Příklad
Tato tabulka uvádí některé hodnoty neznámé funkce .
0 | 0 | ||||
1 | 0 | . | 8415 | ||
2 | 0 | . | 9093 | ||
3 | 0 | . | 1411 | ||
4 | −0 | . | 7568 | ||
5 | −0 | . | 9589 | ||
6 | −0 | . | 2794 |
Interpolace poskytuje prostředky pro odhad funkce v mezilehlých bodech, jako např .
Popíšeme některé metody interpolace, která se liší vlastnostmi jako: přesnost, cena, počet potřebných datových bodů a hladkost výsledného interpolant funkce.
Po částech konstantní interpolace
Nejjednodušší interpolační metodou je najít nejbližší hodnotu dat a přiřadit stejnou hodnotu. U jednoduchých problémů se tato metoda pravděpodobně nepoužije, protože lineární interpolace (viz níže) je téměř stejně snadná, ale ve vícerozměrných vícerozměrná interpolace, to může být příznivá volba pro jeho rychlost a jednoduchost.
Lineární interpolace
Jedna z nejjednodušších metod je lineární interpolace (někdy známá jako lerp). Zvažte výše uvedený příklad odhadu F(2.5). Vzhledem k tomu, že 2,5 je uprostřed mezi 2 a 3, je rozumné to vzít F(2.5) uprostřed mezi F(2) = 0,9093 a F(3) = 0,1411, čímž se získá 0,5252.
Obecně platí, že lineární interpolace trvá dva datové body, řekněme (XA,yA) a (Xb,yb) a interpolant je dán vztahem:
Tato předchozí rovnice uvádí, že sklon nové přímky mezi a je stejný jako sklon přímky mezi a
Lineární interpolace je rychlá a snadná, ale není příliš přesná. Další nevýhodou je, že interpolant není rozlišitelný na místě Xk.
Následující odhad chyby ukazuje, že lineární interpolace není příliš přesná. Označme funkci, kterou chceme interpolovat Ga předpokládejme to X leží mezi XA a Xb a to G je dvakrát spojitě diferencovatelné. Pak je chyba lineární interpolace
Slovy, chyba je úměrná druhé mocnině vzdálenosti mezi datovými body. Chyba v některých dalších metodách, včetně polynomiální interpolace a spline interpolace (popsaná níže), je úměrná vyšším mocnostem vzdálenosti mezi datovými body. Tyto metody také produkují hladší interpolanty.
Polynomiální interpolace
Polynomiální interpolace je zobecněním lineární interpolace. Všimněte si, že lineární interpolant je a lineární funkce. Nyní tento interpolant nahradíme a polynomiální vyšších stupeň.
Zvažte znovu problém uvedený výše. Následující polynom šestého stupně prochází všemi sedmi body:
Střídání X = 2,5, zjistíme, že F(2.5) = 0.5965.
Obecně, pokud ano n datových bodů, existuje přesně jeden polynom stupně n-1 prochází všemi datovými body. Chyba interpolace je úměrná vzdálenosti mezi datovými body a výkonem n. Kromě toho je interpolant polynomem a je tak nekonečně diferencovatelný. Vidíme tedy, že polynomiální interpolace překonává většinu problémů lineární interpolace.
Polynomiální interpolace má však také některé nevýhody. Výpočet interpolačního polynomu je výpočetně nákladný (viz výpočetní složitost ) ve srovnání s lineární interpolací. Kromě toho může polynomiální interpolace vykazovat oscilační artefakty, zejména v koncových bodech (viz Rungeův fenomén ).
Polynomiální interpolace může odhadnout lokální maxima a minima, která jsou mimo rozsah vzorků, na rozdíl od lineární interpolace. Například interpolant výše má lokální maximum na X ≈ 1.566, F(X) ≈ 1,003 a místní minimum na X ≈ 4.708, F(X) ≈ -1,003. Tato maxima a minima však mohou přesahovat teoretický rozsah funkce - například funkce, která je vždy pozitivní, může mít interpolant se zápornými hodnotami a jejíž inverzní funkce proto obsahuje falešné hodnoty vertikální asymptoty.
Obecněji může být tvar výsledné křivky, zejména pro velmi vysoké nebo nízké hodnoty nezávislé proměnné, v rozporu s rozumem, tj. S tím, co je známo o experimentálním systému, který generoval datové body. Tyto nevýhody lze snížit pomocí spline interpolace nebo omezením pozornosti na Čebyševovy polynomy.
Spline interpolace
Pamatujte, že lineární interpolace používá lineární funkci pro každý z intervalů [Xk,Xk + 1]. Interpolace spline používá v každém z intervalů polynomy nízkého stupně a vybírá polynomiální části tak, aby do sebe hladce zapadaly. Výsledná funkce se nazývá a spline.
Například přírodní kubický spline je po částech kubický a dvakrát spojitě diferencovatelný. Kromě toho je jeho druhá derivace v koncových bodech nulová. Přirozený kubický spline interpolací bodů v tabulce výše je dán vztahem