Documente Academic
Documente Profesional
Documente Cultură
Aproximarea funciilor
Aproximarea functiilor
Interpolare
Problema de interpolare: Dandu-se multimea
interpolatoare F de de ordin n in X si perechile
(xi,yi) XxR cu proprietatea ca ij xixj sa
se determine aceea functie jF care in
punctele xi ia valorile yi.
Se aproximeaza comportarea funciei n afara
acestor puncte printr-un polinom generalizat de
interpolare, de forma:
Pn(x)=a1u1(x)+a2u2(x)++anun(x)
n care funciile liniar independente
u1(x),u2(x),,un(x)
sunt cunoscute i constituie baza interpolrii.
Interpolare
Interpolare
k1
u k x i fx i ,
scris matriceal
U.a=f
i 1: n
Interpolare
S-au folosit notatiile
u11 u12
u
u 22
21
u n1 u n 2
u1n
u 2n
u nn
cu uij=uj(xi), fi=f(xi)
a1
a
2
a
a n
f1
f
2
f
fn
Interpolare
Pn x
l x fx
k1
T
T
1
T
x f
a
u
x
u
x
u
x
l
k k
k1
cu
lT x u T x U 1 u1 x u 2 x u n x U 1
l x
1
l2 x ln x
lk x k 1.
i k,
Interpolarea polinomiala
i 1,i k
x xi
x k xi
Interpolare
Pn x
fx
k1
i 1,i k
x xi
x k xi
k1
a k x ik fx i ,
i 1: n
Interpolare
x1
x2
xn
x 12 x 1n 1 a1
y1
y
2
n1
x 2 x 2 a 2
2
2
n1
x n x n a n
y n
Interpolare
Alte forme ale polinomului de interpolare Lagrange
x
x
i1
xi
k 1 i 1,i k
x i x k
i 1,i k
n
lk x
i 1,i k
x xi
1
x k xi
x xk
P x
k 1
f x k lk x x
i1
n
i 1,i k
1
x
lk x
x x k x k
n
k1
xi
xi
k
xi
f x k
x x k x k
Interpolare
a
V
1
x2
xn
x
1
U
x1
1
x2
xn
a x1 a x1
1
a x2
a xn
1
x 2 x1 x n x1
1
xn x2
x2 xn
1
L l1 l2 ln prod V / prodU
Interpolare
Valoarea polinomului Lagrange ntr-un punct de
abscis a
b
i1
x1
x
2
U
x n
x1
0
U
y i prod V / prodU * y
x1 x1
x1 x 2
x x
x2 x2
2
1
xn xn
x1 x 2
0 0
x2 0
0 xn
1
1
1 1 1
1 1 1
1 1 1
xn
xn
I
n
xn
1 1
1 1
1 1
x1
0
0 0
x2 0
I
n
0 xn
U=diag(x)*ones(n)-ones(n)*diag(x)+eye(n)
Interpolare
0
a
V
0
1
V a*
a a
0
x
0 a
2
a 0
x n
1 1 x1
0 1 0
1 0 0
x1 x1
0 x2
I
n
xn 0
0 0
x2 0
0 xn
0
1
V=(a-diag(x))*~eye(n)+eye(n)
1 1
0 1
I
n
1 0
Interpolare
function b = Lagrange(a, x, y)
% valoare polinom Lagrange in a
n = length(x);
V=(a-diag(x))*~eye(n)+eye(n);
U=diag(x)*ones(n)-ones(n)*diag(x)+eye(n);
b=prod(V)./prod(U)*y;
function a = coefLagr(x, y)
% Intrri:
% x = tabloul absciselor celor n puncte
% y = tabloul ordonatelor celor n puncte
% Ieiri:
% a = coeficienti polinom Lagrange
Interpolare
a=zeros(n,1);
z=zeros(n,1);
% calcul coeficieni c din (x-x(1))...(x-x(n))
c=poly(x);
for i = 1 : n
% calcul coeficieni b ai mpririi
% polinomului prin x-x(i)
[b,r]=deconv(c,[1 -x(i)]);
% calcul p=(x(i)-x(1))...(x(i)-x(i-1))(x(i)-x(i+1))(x(i)-x(n))
z=x(i)-x;
z(i)=1;
p=prod(z);
a(1:n)=a(1:n)+y(i)*b(1:n)/p;
end
Interpolarea Lagrange-Exemplu
Interpolarea Lagrange-Exemplu
Solutie:
x 1 x x 1 x 2
x 2 x x 1 x 2
P ( x) 6
2
2 1 2 2 1 2 2 1 2 1 1 1 1 2
x 2 x 1 x x 1 1 4
1 4
3
2
2
x 2 x x 2 x x x3 4 x 2 4 x
3
2 2 2 1 2 2 1 4
1 4
x 2 x3 x 2 2 x x 2 x
12
Interpolare
Polinomul de interpolare de grad poate fi calculat
prin recuren, folosind polinoame de interpolare de
grad mai mic.
Dac se noteaz ={i1,i2,,ip} i
P - polinomul de interpolare ce trece prin punctele
(xi1,yi1),(xi2,yi2),,(xip,yip)
atunci polinomul de interpolare definit pe ansamblul
extins de puncte +j+k= {j,k}
P j k x
x x P
j
x x x k P j x
x k xj
Interpolare
Interpolare
b = Neville (x, y, a)
% Intrri:
% a = abscisa n care se calculeaz polinomul
% x = tabloul absciselor celor n+1 puncte
% y = tabloul ordonatelor celor n+1 puncte
% Ieiri:
% b = valoare polinom de interpolare
n = length(x);
q = y
for i = 1 : n
for j = 1 : n
q(j)=((a-x(j+i))*q(j)-(a-x(j))*
q(j+i))/(x(j)-x(j+i));
end
end
b = q(n);
Metoda Neville-exemplu
Interpolarea Lagrange-Exemplu
(folosind metoda Neville de recuren)
Solutie:
Q1,1
Q2,1
x x2 Q1,0 x x1 Q2,0 x 1 6 x 2 2
4 x 2
x1 x2
2 1
x x3 Q2,0 x x2 Q3,0 x 0 2 x 1 0
2 x
x2 x3
1 0
Interpolarea Lagrange-Exemplu
(folosind metoda Neville de recuren)
Solutie:
Q3,1
x x4 Q3,0 x x3 Q4,0 x 1 0 x 0 0
Q4,1
x3 x4
x x5 Q4,0 x x4 Q5,0 x 2 0 x 1 2
2x 2
x4 x5
Q1,2
Q2,2
0 1
1 2
x x3 Q1,1 x x1 Q2,1 x 0 4 x 2 x 2 2 x 2
x x
x1 x3
2 0
x x4 Q2,1 x x2 Q3,1 x 1 2 x x 1 0 2
x x
x2 x4
1 1
Interpolarea Lagrange-Exemplu
(folosind metoda Neville de recuren)
Solutie:
x x5 Q3,1 x x3 Q4,1 x 2 0 x 0 2 x 2 2
x x
Q3,2
Q1,3
x3 x5
x x4 Q1,2 x x1 Q2,2 x 1 x2 x x 2 x2 x
Q2,3
Q1,4
02
x1 x4
2 1
x x5 Q2,2 x x2 Q3,2 x 2 x2 x x 1 x2 x
x2 x5
x x5 Q1,3 x x1 Q2,3
x1 x5
1 2
x 2 x2 x x 2 x2 x
2 2
x2 x
x2 x
x2 x
Diferene divizate
F1 x1 F1 x 2
x1 x 2
Fp x1, , x p
Fp 1 x1, , x p 1 Fp 1 x 2, , x p
x1 x p
Diferene divizate
Ele se pot calcula cu relatia:
F x , , x
p
k1
fx k
x k
fx k
k1
x k
i1
xi
fx0 fx1
lim
fx1 ,
x0 x1
x0 x1
Diferene divizate
function a = DifDiv(x, y)
% Intrri:
%
x = abscisele celor n puncte
%
y = ordonatele celor n puncte
% Ieiri:
%
y =diferene divizate de ordin
1:n
n = length(x);
for k = 1 : n-1
y(k+1:n)=(y(k+1:n)-y(k))./
(x(k+1:n)-x(k));
end
x0 F1 x, x0 fx fx0
x0 x x1 F2 x, x0, x1 F1 x, x0 F1 x0, x1
x x0 x x n 1 Fn x0, , x n x x0 x x n Fn 1 x, x0, , x n
relatie denumita Identitatea lui Newton.
Aceasta relatie contine atat polinomul de interpolare
Lagrange cat si restul interpolarii:
fx Pn x R n x
fx Pn x R n x
fx Pn x
are n rdcini
are o rdcin
fn x Pnn x
f(n)
n!
Fn x 0,x1, , x n
x0, x n
f(n)
n!
R n x x x0 x x n Fn 1 x, x0, x1, , x n
R n x
M n 1 f
x0 x x n
fn 1
M n 1 f
n 1!
Diferente divizate-exemplu
Sa se calculeze polinomul de interpolare Lagrange
folosind identitatea lui Newton cu diferente divizate
corespunzatoare datelor:
Interpolarea Lagrange-Exemplu
(folosind identitatea lui Newton cu diferente divizate)
Solutie:
F1 ( x1 ) F1 ( x2 ) 6 2
F2 ( x1 , x2 )
4
x1 x2
2 1
F2 ( x2 , x3 )
F1 ( x2 ) F1 ( x3 ) 2 0
2
x2 x3
1 0
Interpolarea Lagrange-Exemplu
(folosind identitatea lui Newton cu diferente
divizate)
Solutie:
F2 ( x3 , x4 )
F1 ( x3 ) F1 ( x3 ) 0 0
0
x3 x4
0 1
F1 ( x4 ) F1 ( x5 ) 0 2
F2 ( x4 , x5 )
2
x4 x5
1 2
F3 ( x1 , x2 , x3 )
F2 ( x1 , x2 ) F2 ( x2 , x3 ) 4 2
1
x1 x3
2 0
F3 ( x2 , x3 , x4 )
F2 ( x2 , x3 ) F2 ( x3 , x4 ) 2 0
1
x2 x4
1 1
Interpolarea Lagrange-Exemplu
(folosind identitatea lui Newton cu diferente
divizate)
Solutie:
F3 ( x3 , x4 , x5 )
F2 ( x3 , x4 ) F2 ( x4 , x5 ) 0 2
1
x3 x5
02
F4 ( x1 , x2 , x3 , x4 )
F3 ( x1 , x2 , x3 ) F3 ( x2 , x3 , x4 ) 1 1
0
x1 x4
2 1
F4 ( x2 , x3 , x4 , x5 )
F3 ( x2 , x3 , x4 ) F3 ( x3 , x4 , x5 ) 1 1
0
x2 x5
1 2
F ( x) f (2) x 2 (4) x 2 ( x 1) 1
6 4 x 8 x 2 3x 2 x 2 x