Lagrangeova interpolace
V numerické analýze , jsou Lagrangeovy polynomy , pojmenoval Joseph-Louis Lagrange , aby bylo možné interpolovat řadu bodů polynomu, který prochází přesně skrz tyto body rovněž nazývaných uzly. Tuto polynomiální interpolační techniku objevil Edward Waring v roce 1779 a později ji znovu objevil Leonhard Euler v roce 1783. Jde o speciální případ čínské věty o zbytku .
Definice
Dali jsme si n + 1 bodů (s x i odlišnými dvěma po dvou). Navrhujeme sestrojit polynom minimálního stupně, který na úsečce x i přebírá hodnoty y i , čehož je možné dosáhnout pomocí následující metody.
(X0,y0),...,(Xne,yne){\ displaystyle (x_ {0}, y_ {0}), \ tečky, (x_ {n}, y_ {n})}![(x_ {0}, y_ {0}), \ tečky, (x_ {n}, y_ {n})](https://wikimedia.org/api/rest_v1/media/math/render/svg/b8844f1e3719f6e752dd936d89e9d3f940e9cd15)
Následující studie navrhuje ukázat, že polynom je jediným polynomem stupně, který n uspokojí tuto vlastnost.
L(X)=∑j=0neyj(∏i=0,i≠jneX-XiXj-Xi){\ displaystyle L (X) = \ součet _ {j = 0} ^ {n} y_ {j} \ vlevo (\ prod _ {i = 0, i \ neq j} ^ {n} {\ frac {X- x_ {i}} {x_ {j} -x_ {i}}} \ vpravo)}![{\ displaystyle L (X) = \ součet _ {j = 0} ^ {n} y_ {j} \ vlevo (\ prod _ {i = 0, i \ neq j} ^ {n} {\ frac {X- x_ {i}} {x_ {j} -x_ {i}}} \ vpravo)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/6fd01cfac996a4287c581d6d28216607ded15723)
Lagrangeovy polynomy
Lagrangeovy polynomy spojené s těmito body jsou polynomy definované:
li(X)=∏j=0,j≠ineX-XjXi-Xj=X-X0Xi-X0⋯X-Xi-1Xi-Xi-1 X-Xi+1Xi-Xi+1⋯X-XneXi-Xne.{\ displaystyle l_ {i} (X) = \ prod _ {j = 0, j \ neq i} ^ {n} {\ frac {X-x_ {j}} {x_ {i} -x_ {j}} } = {\ frac {X-x_ {0}} {x_ {i} -x_ {0}}} \ cdots {\ frac {X-x_ {i-1}} {x_ {i} -x_ {i- 1}}} ~ {\ frac {X-x_ {i + 1}} {x_ {i} -x_ {i + 1}}} \ cdots {\ frac {X-x_ {n}} {x_ {i} -x_ {n}}}.}![{\ displaystyle l_ {i} (X) = \ prod _ {j = 0, j \ neq i} ^ {n} {\ frac {X-x_ {j}} {x_ {i} -x_ {j}} } = {\ frac {X-x_ {0}} {x_ {i} -x_ {0}}} \ cdots {\ frac {X-x_ {i-1}} {x_ {i} -x_ {i- 1}}} ~ {\ frac {X-x_ {i + 1}} {x_ {i} -x_ {i + 1}}} \ cdots {\ frac {X-x_ {n}} {x_ {i} -x_ {n}}}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/17c18891e076623bdff0a8c4cabdcb60042913c6)
Máme zejména dvě vlastnosti:
-
l i je stupně n pro všechna i ;
-
li(Xj)=δi,j,0≤i,j≤ne{\ displaystyle l_ {i} (x_ {j}) = \ delta _ {i, j}, 0 \ leq i, j \ leq n}
to znamená a proli(Xi)=1{\ displaystyle l_ {i} (x_ {i}) = 1}
li(Xj)=0{\ displaystyle l_ {i} (x_ {j}) = 0}
j≠i{\ displaystyle j \ neq i}
Interpolační polynom
Polynom definovaný jako je jedinečný polynom stupně, který nanejvýš n vyhovuje všem i .
L(X)=∑j=0neyjlj(X){\ displaystyle L (X) = \ součet _ {j = 0} ^ {n} y_ {j} l_ {j} (X)}
L(Xi)=yi{\ displaystyle L (x_ {i}) = y_ {i}}![L (x_ {i}) = y_ {i}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9129c28b14481f67591dfdc23e73c053c4f23577)
Vskutku :
- na jedné straně ;L(Xi)=∑j=0neyjlj(Xi)=yi{\ displaystyle L (x_ {i}) = \ součet _ {j = 0} ^ {n} y_ {j} l_ {j} (x_ {i}) = y_ {i}}
![{\ displaystyle L (x_ {i}) = \ součet _ {j = 0} ^ {n} y_ {j} l_ {j} (x_ {i}) = y_ {i}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/bfba9379886ead40359de446649a2ab9081031bd)
- na druhé straně je lineární kombinací polynomů stupně n , L je stupně n maximálně n ; pokud jiný polynom Q splňuje tyto vlastnosti, pak L - Q má stupeň n a mizí v n + 1 různých bodech ( x k ): L - Q je tedy nula, což dokazuje jedinečnost.
Příklad
Pro body nejprve vypočítáme Lagrangeovy polynomy:
(X0=1,y0=3),(X1=-1,y1=2),(X2=2,y2=-1){\ displaystyle (x_ {0} = 1, y_ {0} = 3), (x_ {1} = - 1, y_ {1} = 2), (x_ {2} = 2, y_ {2} = - 1)}![{\ displaystyle (x_ {0} = 1, y_ {0} = 3), (x_ {1} = - 1, y_ {1} = 2), (x_ {2} = 2, y_ {2} = - 1)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/e409d20ad136245d22ef7884db37c633a6b98c24)
-
l0(X)=(X+1)(X-2)(1+1)(1-2)=-12(X2-X-2){\ displaystyle l_ {0} (X) = {\ frac {(X + 1) (X-2)} {(1 + 1) (1-2)}} = - {\ frac {1} {2} } (X ^ {2} -X-2)}
;
-
l1(X)=(X-1)(X-2)(-1-1)(-1-2)=16(X2-3X+2){\ displaystyle l_ {1} (X) = {\ frac {(X-1) (X-2)} {(- 1-1) (- 1-2)}} = {\ frac {1} {6 }} (X ^ {2} -3X + 2)}
;
-
l2(X)=(X-1)(X+1)(2-1)(2+1)=13(X2-1){\ displaystyle l_ {2} (X) = {\ frac {(X-1) (X + 1)} {(2-1) (2 + 1)}} = {\ frac {1} {3}} (X ^ {2} -1)}
.
Potom vypočítáme polynomiální funkci procházející těmito body:
-
L(X)=P(X)=3l0(X)+2l1(X)-l2(X){\ displaystyle L (X) = P (X) = 3l_ {0} (X) + 2l_ {1} (X) -l_ {2} (X)}
;
-
L(X)=P(X)=-32X2+12X+4{\ displaystyle L (X) = P (X) = - {\ frac {3} {2}} X ^ {2} + {\ frac {1} {2}} X + 4}
.
Jiné psaní
Nastavme polynom . Okamžitě vidíme, že splňuje N ( x i ) = 0 a pomocí Leibnizova vzorce je jeho derivát:
NE(X)=∏j=0ne(X-Xj){\ displaystyle N (X) = \ prod _ {j = 0} ^ {n} (X-x_ {j})}![{\ displaystyle N (X) = \ prod _ {j = 0} ^ {n} (X-x_ {j})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/68e36896b56525ceb98ccc695f2b7427f72057e3)
NE′(X)=∑j=0ne∏i=0,i≠jne(X-Xi){\ displaystyle N '(X) = \ součet _ {j = 0} ^ {n} \ prod _ {i = 0, i \ neq j} ^ {n} (X-x_ {i})}![{\ displaystyle N '(X) = \ součet _ {j = 0} ^ {n} \ prod _ {i = 0, i \ neq j} ^ {n} (X-x_ {i})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/513c488aab4f4c4bdc7fec9360e9a1384a7146b6)
.
Zejména v každém uzlu x k se všechny produkty navzájem ruší, kromě jednoho, což dává zjednodušení:
NE′(Xk)=∏i=0,i≠kne(Xk-Xi){\ displaystyle N '(x_ {k}) = \ prod _ {i = 0, i \ neq k} ^ {n} (x_ {k} -x_ {i})}![{\ displaystyle N '(x_ {k}) = \ prod _ {i = 0, i \ neq k} ^ {n} (x_ {k} -x_ {i})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7e042885c679514e124300933fafbb9ea1459d82)
.
Lagrangeovy polynomy lze tedy definovat z N :
li(X)=NE(X)NE′(Xi)(X-Xi){\ displaystyle l_ {i} (X) = {N (X) \ nad N '(x_ {i}) (X-x_ {i})}}![{\ displaystyle l_ {i} (X) = {N (X) \ nad N '(x_ {i}) (X-x_ {i})}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/fdfd4e74b91fb199ab2da083eb6af8dc97713cd0)
.
Můžete použít N přeložit jedinečnost: Je-li Q šeky pro všechny i poté Q - L zmizí v místech x i je tedy násobkem N . Je tedy ve formě, kde P je libovolný polynom. Máme tedy sadu interpolačních polynomů spojených s body ( x i , y i ) a L je minimální stupeň.
Q(Xi)=yi{\ displaystyle Q (x_ {i}) = y_ {i}}
Q(X)=L(X)+NE(X)⋅P(X){\ displaystyle Q (X) = L (X) + N (X) \ cdot P (X)}![Q (X) = L (X) + N (X) \ cdot P (X)](https://wikimedia.org/api/rest_v1/media/math/render/svg/244d2d3298e236599529b3e55856b6dffe822d54)
Efektivní algoritmus
Alternativní psaní je základem rychlého algoritmu pro výpočet Lagrangeova interpolačního polynomu. Se stejnými notacemi jako dříve spočívá algoritmus ve výpočtu přístupem rozděl a panuj , poté jeho derivaci, která se poté vyhodnotí pomocí vícebodového vyhodnocení . Od toho odvozujemeNE(X){\ displaystyle N (X)}
NE′(X){\ displaystyle N '(X)}
Xi{\ displaystyle x_ {i}}
L(X)=∑j=0neyjlj(X){\ displaystyle L (X) = \ součet _ {j = 0} ^ {n} y_ {j} l_ {j} (X)}![{\ displaystyle L (X) = \ součet _ {j = 0} ^ {n} y_ {j} l_ {j} (X)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/6a0d6c7deacf96c04953042d3f5a65f9f0af88a3)
L(X)NE(X)=∑j=1myjNE′(Xj)(X-Xj).{\ displaystyle {\ frac {L (X)} {N (X)}} = \ součet _ {j = 1} ^ {m} {\ frac {y_ {j}} {N '(x_ {j}) (X-x_ {j})}}.}
![{\ displaystyle {\ frac {L (X)} {N (X)}} = \ součet _ {j = 1} ^ {m} {\ frac {y_ {j}} {N '(x_ {j}) (X-x_ {j})}}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/cd8fbab7da5079524976c7fdb00aefc7e5436676)
Vzhledem ke všem hodnotám lze vypočítat čitatele a jmenovatele racionálního zlomku, opět pomocí přístupu rozděl a panuj. Pomocí algoritmů rychlého násobení
(in) lze Lagrangeovu interpolační polynom vypočítat pomocí řady kvazilineárních algebraických operací.
NE′(Xj){\ displaystyle N '(x_ {j})}
Základ polynomů
Dáme si n + 1 odlišných skalárů . Pro jakýkoli polynom
P patřící do , pokud nastavíme ,
P je interpolační polynom odpovídající bodům: je roven polynomu
L definovanému výše.
X0,...,Xne{\ displaystyle x_ {0}, \ ldots, x_ {n}}
K.ne[X]{\ displaystyle K_ {n} [X]}
yi=P(Xi){\ displaystyle y_ {i} = P (x_ {i})}
Tak jsme tedy jako rodina generátoru . Protože jeho mohutnost (rovná se
n + 1 ) se rovná dimenzi prostoru, je jeho základem.
P(X)=∑j=0neP(Xj)lj(X){\ displaystyle P (X) = \ součet _ {j = 0} ^ {n} P (x_ {j}) l_ {j} (X)}
(l0,l1,...,lne){\ displaystyle (l_ {0}, l_ {1}, \ tečky, l_ {n})}
K.ne[X]{\ displaystyle K_ {n} [X]}
Příklady: výběrem P = 1 nebo P = X máme:
-
1=∑j=0nelj(X){\ displaystyle 1 = \ součet _ {j = 0} ^ {n} l_ {j} (X)}
;
-
X=∑j=0neXjlj(X){\ displaystyle X = \ součet _ {j = 0} ^ {n} x_ {j} l_ {j} (X)}
.
Ve skutečnosti to je báze, jejíž dvojí základ je rodina n + 1 lineární formy z
Dirac definován
ui{\ displaystyle u_ {i}}
∀i∈{0,...,ne},ui(P)=P(Xi){\ displaystyle \ forall i \ in \ {0, \ ldots, n \}, \, u_ {i} (P) = P (x_ {i})}![{\ displaystyle \ forall i \ in \ {0, \ ldots, n \}, \, u_ {i} (P) = P (x_ {i})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c6d530fae2d7abeda7bdfaff2a9fa24630888ee3)
.
Pokud vezmeme v úvahu bodový produkt:
∀P,Q,∑i=0neP(Xi)Q(Xi){\ displaystyle \ forall P, Q, \, \ součet _ {i = 0} ^ {n} P (x_ {i}) Q (x_ {i})}![{\ displaystyle \ forall P, Q, \, \ součet _ {i = 0} ^ {n} P (x_ {i}) Q (x_ {i})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/463c2704f9b6d12119948f9fc1e4eaeb25997168)
,
rodina tvoří
ortonormální báze a .
(l1,...,lne){\ displaystyle (l_ {1}, \ tečky, l_ {n})}
Rne[X]{\ displaystyle \ mathbb {R} _ {n} [X]}
Aplikace
Hlavní myšlenka
Řešení problému s interpolací vede k převrácení pevné matice typu Vandermondeovy matice . Jedná se o těžký výpočet počtu operací. Lagrangeovy polynomy definují nový základ polynomů, který umožňuje, aby již neměla úplnou matici, ale diagonální matici . Nicméně, invertující diagonální matice je triviální operace .
Lagrangeův -
Sylvesterův interpolační polynom
Pro každý multiset o scalars a jakéhokoliv prvku z , existuje jedinečná polynom na stupeň tak, že
(X,m){\ displaystyle (X, m)}
Y=(yX,k)X∈X,0≤k<m(X){\ displaystyle Y = (y_ {x, k}) _ {x \ v X, 0 \ leq k <m (x)}}
∏X∈XK.m(X){\ displaystyle \ prod _ {x \ v X} K ^ {m (x)}}
L{\ displaystyle L}
<∑X∈Xm(X){\ displaystyle <\ součet _ {x \ v X} m (x)}![{\ displaystyle <\ součet _ {x \ v X} m (x)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/23b25fd8edf34b17a065a51e740de8190a91cf5c)
∀X∈X∀k<m(X)L(k)(X)=yX,k{\ displaystyle \ forall x \ in X \ quad \ forall k <m (x) \ quad L ^ {(k)} (x) = y_ {x, k}}![{\ displaystyle \ forall x \ in X \ quad \ forall k <m (x) \ quad L ^ {(k)} (x) = y_ {x, k}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/599d7543310deec835ca92d47f0f4fce0e35f5bf)
.
Tento polynom je tedy zapsán , kde je jedinečný polynom stupně , který a všechny ostatní jsou nulové. Tím se zevšeobecňuje interpolace Lagrangeovy a
Hermitovy .
L=∑X∈X,0≤k<m(X)yX,kℓX,k{\ displaystyle L = \ součet _ {x \ v X, 0 \ leq k <m (x)} y_ {x, k} \ ell _ {x, k}}
ℓX,k{\ displaystyle \ ell _ {x, k}}
<∑z∈Xm(z){\ displaystyle <\ součet _ {z \ v X} m (z)}
ℓX,k(k)(X)=1{\ displaystyle \ ell _ {x, k} ^ {(k)} (x) = 1}
ℓX,k(j)(z){\ displaystyle \ ell _ {x, k} ^ {(j)} (z)}
Podívejte se také
Související články
externí odkazy
Poznámky a odkazy
(fr) Tento článek je částečně nebo zcela převzat z článku Wikipedie v
angličtině s názvem
„ Lagrangeův polynom “ ( viz seznam autorů ) .
-
Scientific Computing: Kurzy, opravená cvičení a ilustrace v Matlabu v Knihách Google .
-
Alin Bostan, Frédéric Chyzak, Marc Giusti, Romain Lebreton, Grégoire Lecerf, Bruno Salvy a Éric Schost, efektivní algoritmy ve formálním počtu ,2017( ISBN 979-10-699-0947-2 , číst online )
-
Mathematics L3 - Applied Mathematics on Google Books .
-
(en) EN Gantmacher (in) , Theory of Matrices , sv. 1, vydavatelství Chelsea,1959( číst online ) , s. 101-102.
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">