Tài liệu CHƯƠNG 3: NỘI SUY VÀ XẤP XỈ HÀM - Pdf 99


210
CHƯƠNG 3: NỘI SUY VÀ XẤP XỈ HÀM

§1.NỘISUYLAGRANGE
Trongthựctếnhiềukhitacầntínhgiátrịcủahàmy =f(x)tạimộtgiátrị
xtrongmộtđoạn[a,b]nàođómàchỉbiếtmộtsốnhấtđịnhcác
giátrịcủa
hàm tại một số điểm cho trước. Các giá trị nàyđược cung cấp qua thực
nghiệmhaytínhtoán.Vìvậynảysinhvấnđềtoánhọclàtrênđoạna≤x≤
b
chomộtloạtcácđiểmx
i(i=0,1,2 )vàtạicácđiểmxinàygiátrịcủahàmlà
y
i=f(xi)đãbiếtvàtacầntìmy=f(x)dựatrêncácgiátrịđãbiếtđó.Lúcđóta
cầntìmđathức:
 P
n(x)=aoxn+a1x
n‐1

+…+an‐1x+an
saochoP
n(xi)=f(xi)=yi.ĐathứcPn(x)đượcgọilàđathứcnộisuycủahàm
y=f(x).Tachọn đathứcđểnộisuyhàmy=f(x)vìđathứclàloạihàmđơn 
giản,luôncóđạohàmvànguyênhàm.Việctínhgiátr
ịcủanótheothuậttoán
Hornercũngđơngiản.
 BâygiờtaxâydựngđathứcnộisuykiểuLagrange.GọiL
ilàđathức:
)xx) (xx)(xx) (xx(
)xx) (xx)(xx) (xx(

=
n
0i
iin
)x(L)x(f)x(P 
TathấyP
n(x)làmộtđathứcbậcnvìcácLi(x)làcácđath ứcbậcnvà
thoảmãnđiềukiệnP
n(xi)=f(xi)=yi.TagọinólàđathứcnộisuyLagrange.
Vớin=1tacóbảng

x x
0 x1
y y0 y1

Đathứcnộisuysẽlà:
 P
1(x)=yoL0(x)+y1L1(x1)

10
1
0
xx
xx
L


=

01

1(x)làmộtđathứcbậcnhấtđốivớix
Vớin=2tacóbảng

x x
0 x1 x2
y y0 y1 y2

Đathứcnộisuysẽlà:
 P
2(x)=yoL0(x)+y1L1(x1)+y2L2(x2)

)xx)(xx(
)xx)(xx(
L
2010
21
0
−−
−−
= 
)xx)(xx(
)xx)(xx(
L
2101
20
1
−−
−−
= 
)xx)(xx(

l=l+y(m)*p;
end


212
Chohàmdướidạngbảng:

x‐2‐1 1 2
y‐6 0 0 6

vàtìmy(2.5)tadùngchươngtrình
ctlagrange.m:


clearall,clc
x
=[‐2‐112];
y=[
‐6006];
l=lagrange(x,y);
yx=polyval(l,2.5)

§2.NỘISUYNEWTON
Bâygiờtaxétmộtcáchkhácđểxâydựngđathứcnộisuygọilàphương
phápNewton.Trướchếttađưavàomộtkháiniệmmớilàtỉhiệu
 Giảsửhàmy=y(x)cógiá
trịchotrongbảngsau:

x x
0 x1 x2


= 
v.v.
 Vớiy(x)=P
n(x)làmộtđathứcbậcnthìtỉhiệucấp1tạix,x0:

0
0nn
0n
xx
)x(P)x(P
]x,x[P


= 
làmộtđathứcbậc(n‐1).Tỉhiệucấp2tạix,x
0,x1:
1
10n0n
10n
xx
]x,x[P]x,x[P
]x,x,x[P


= 
làmộtđathứcbậc(n‐2)v.vvàtớitỉhiệucấp(n+1)thì:

213
 Pn[x,xo, ,xn]=0

từđiểmx
ncódạngnhưsau:
 P
n(x)=yn+(x‐xn)y[xn,xn‐1]+(x‐xn)(x‐xn‐1)y[xn,xn‐1,xn‐2]+ +
(x‐x
n)(x‐xn‐1) (x‐x1)y[xn, ,x0]
Trườnghợpcácnútcáchđềuthìx
i=x0+ihvớii=0,1, ,n.Tagọisai
phântiếncấp1tạiilà:
 ∆y
i=yi+1‐yi
vàsaiphântiếncấphaitạii:
 ∆
2
yi=∆(∆yi)=yi+2‐2yi+1+yi
 
vàsaiphântiếncấpnlà:
 ∆
n
yi=∆(∆
n‐1
yi)
Khiđótacó:

[]
h
y
x,xy
0
10


0
n
0
2
000n
y
!n
)1nt()1t(t
y
!2
)1t(t
yty)htx(P ∆
+−




+⋅⋅⋅+∆

+∆+=+

thìtanhậnđượcđathứcNewtontiếnxuấtpháttừx
0trongtrườnghợpnút
cáchđều.Vớin=1tacó:
 P
1(x0+ht)=y0+∆y0
Vớin=2tacó:
0
2

)1t(t
yty)htx(P ∇
−+



+
+⋅⋅⋅+∇
+
+∇+=+ 
Taxâydựnghàm
newton()đểnộisuy:

function[n,DD]=newton(x,y)
%Duavao:x=[x0x1 xN]
%y=[y0y1 yN]
%Layra:n=hesocuadathucNewtonbacN
N=length(x)‐1;
DD=zeros(N+1,N+1);
DD(1:N+1,1)=yʹ;

fork=2:N+1
form=1:N+2‐k
DD(m,k)=(DD(m+1,k‐1)‐DD(m,k‐1))/(x(m+k‐1)‐x(m));
end
end
a=DD(1,:);
n=a(N+1);
fork=N:‐1:1


xxy
xxy
)x(P



= 
Đâylàmộtđathứcbậc1:
01
0
1
10
1
001
xx
xx
y
xx
xx
y)x(P


+


= 
Khix=x
0thì:
0
01


216

02
212
001
012
xx
xx)x(P
xx)x(P
)x(P



= 
vàlàmộtđathứcbậc2:

)xx)(xx(
)xx)(xx(
y
)xx)(xx(
)xx)(xx(
y
)xx)(xx(
)xx)(xx(
y)x(P
1202
10
2
2101



= 
Khix=x
1thì:

1
02
121
101
1012
y
xx
xxy
xxy
)x(P =



= 
Khix=x
2thì:

2
02
222
20201
2012
y
xx

n=length(xData);
y=yData;
fork=1:n‐1
y(1:n‐k)=((x‐xData(k+1:n)).*y(1:n‐k) 
+(xData(1:n‐k)‐x).*y(2:n‐k+1)) 
./(xData(1:n‐k)‐xData(k+1:n));

217
end
a=y(1);


Chocáccặpsố(1,3),(2,5),(3,7),(4,9)và(5,11),đểtìmytạix=2.5tadùng
chươngtrình
ctaitkennevile.m:

clearall,clc
x=
[1234];
y=[3579];
yx=aitkenneville(x,y,2.5)

§4.NỘISUYBẰNGĐƯỜNGCONGSPLINEBẬCBA
 Khisốđiểmchotrướcdùngkhinộisuytăng,đathứcnộisuycódạng
sóngvàsaisốtăng.Taxéthàmthực:

2
1
f31(x)
18x

plot(xx,yy,ʹk‐ʹ,xx,yy2,ʹbʹ)
subplot(223)
plot(xx,yy,ʹk‐ʹ,xx,yy3,ʹbʹ)

vànhậnđượckếtquả.
Đểtránhhiệntượngsaisốlớnkhi
số điểm mốc tăng ta dùng nội suy nối
trơn(spline). Trên cácđoạn nội suy ta
thay hàm bằng mộtđường cong.
Các
đườngcongnàyđượcghéptrơntạicác
điểmnối.Tachọncácđườngcongnàylà
hàmbậc3vìhàmbậc1vàbậchaikhó
bảođảmđiềukiệnnốitrơn.
 Cho
mộtloạtgiátrịnộisuy(x1,y1),…,(xi,y i),…,(xn,yn).Trênmỗiđoạnta
cómộthàmbậc3.Nhưvậygiữanútivà(i+1) tacóhàmf
i,i+1(x),nghĩalàta
dùng(n‐1)hàmbậc3f
1,2(x),f2,3(x),…,fn‐1,n(x)đểthaythếchohàmthực.Hàm
f
i,i+1(x)códạng:
f
i,i+1(x)=ai+bi(x‐xi)+ci(x‐xi)
2
+di(x‐xi)
3
(1)
Hàmnàythoảmãn:
f

Muốnnốitrơntacần cóđạohàmbậcnhấtliêntụcvàdođó:

i1,i i i,i1 i i
f (x) f (x) k
−+
′′ ′′
==

Lúcnàycácgiátrịkchưabiết,ngoạitrừk
1=kn=0(tacáccácmútlàđiểm
uốn).Điểmxuấtphátđểtínhcáchệsốcủaf
i,i+1(x)làbiểuthứccủa
i,i 1 i
f(x)
+


.Sử
dụngnộisuyLagrangechohaiđiểmtacó:

i,i 1 i i i i 1 i 1
f(x)kL(x)kL(x)
+++
′′
=+

Trongđó:
y
x
x

ii1
k(x x ) k (x x)
f(x)
xx
++
+
+
−− −
′′
=


Tíchphânbiểuthứctrênhailầntheoxtacó:

33
ii1i1i
i,i 1 i i 1 i
ii1
k(x x ) k (x x)
f (x) A(x x ) B(x x)
6(x x )
++
++
+
−− −
=+−−−


TrongđóAvàBlàcáchằngsốtíchphân
SốhạngcuốitrongphươngtrìnhtrênthườngđượcviếtlàCx+D.

=−


Tươngtự,điềukiệnf
i,i+1(xi+1)=yi+1chota:

i1
i1 i i1
ii1
y
k(x x)
B
xx 6
+
++
+

=−


Kếtquảlà:
3
ii1
i,i 1 i i 1 i i 1
ii1
3
i1 i
ii i1
ii1
ii1i1i

+


Đạohàmcấp2k
itạicácnútbêntrongđượctínhtừđiềukiện:

i1,i i i,i1 i
f (x) f (x)
−+
′′
=

Saukhibiếnđổitacóphươngtrình:

i1 i1 i i i1 i1 i1 i i1
i1 i i i1
i1 i i i1
k(xx)2k(xx)k(xx)
yyyy
6
xxxx
−− − + + +
−+
−+
−+ − + −
⎛⎞
−−
=−
⎜⎟
−−

‐6*(yData(2:n‐1)‐yData(3:n)) 
./(xData(2:n‐1)‐xData(3:n));
[c,d,e]=band3(c,de);
k=band3sol(c,d,e,k);
i=findseg(xData,x);
h=xData(i)‐xData(i+1);

y=((x‐xData(i+1))^3/h‐(x‐xData(i+1))*h)*k(i)/6.0 
‐((x‐xData(i))^3/h‐(x‐xData(i))*h)*k(i+1)/6.0 
+yData(i)*(x‐xData(i+1))/h


‐yData(i+1)*(x‐xData(i))/h;

Tacóchươngtrình
ctcubicspline.mdùngnộisuy:

clearall,clc
x1=0:0.1:5;
y1=(x1+1).^2;
while1
x=input(ʹx=ʹ);
ifisempty(x)
fprintf(ʹKetthucʹ);
break

221
end
y=cubicspline(xData,yData,x)
fprintf(ʹ\nʹ)

kk
b
ababa2n12kab
xx cos
2222(n1)2
−+− +−+

=+= π+
+
k=1,2,…,n (2)
CácnútnộisuynàyđượcgọilàcácnútChebyshev.Đathứcnộisuydựatrên
cácnútChebyschevgọilàđathứcnộisuyChebyshev.
Taxéthàmthực:

2
1
f(x)
18x
=
+

Tachọnsốnútnộisuylầnlượtlà5,9,11vàxâydựngcácđathứcNewton
(hayLagrange)c
4(x),c8(x)vàc10(x)điquacácnútnàyvàvẽđồthịcủahàm
thựccũngnhưsaisốkhinộisuybằngchươngtrình
ctcomchebynew.mvớicác
Nkhácnhau.
x1=[‐1‐0.500.51.0];
y1=f31(x1);
n1=newton(x1,y1);

%dothisaiso

Khităngsốđiểmmốc,nghĩalàtăngbậccủađathứcChebyschev,saisốgiảm.
ĐathứcChebyshevbậcnđượcxácđịnhbằng:
 T
n+1(xʹ)=cos((n+1)arccos(xʹ))(3)
vàcácnútChebyshevchobởi(1)lànghiệmcủa(3).
Tacó:

n1
n
nn1n1
T (x ) cos(arccos(x ) narccos( x ))
cos(arccos(x ))cos(narccos(x ) sin(arccos(x ))sin(narccos(x ))
x T (x ) 0.5 cos((n 1)arccos(x ) cos((n 1)arccos(x )
x T (x ) 0.5T (x ) 0.5T (x )
+
+−
′′′
=+
′′′′
=−
′′ ′ ′
=+ + −−
⎡⎤
⎣⎦
′′ ′ ′
=+ −

nên:

5
‐20ʹx
3
+5xʹ
 T
6(xʹ)=32xʹ
6
‐48xʹ
4
+18xʹ
2
‐1
 T
7(xʹ)=64xʹ
7
‐112xʹ
5
+56xʹ
3
‐7xʹ
Hàmf(x)đượcxấpxỉbằng:

N
2ab
mm
xx
b
a2
m0
f(x) d T (x )

n
k
k0
2
d f(x )T (x )
n1
2m(2n12k)
f(x )cos m 1,2, ,n
n1 2(n1)
=
=

=
+
+−
=π=
++


  (8)
Taxâydựnghàm
cheby()đểtìmđathứcnộisuyChebyshev:

function[c,x,y]=cheby(f,N,a,b)
%vao:f=tenhamtrendoan[a,b]
%Ra:c=CachesocuadathucNewtonbacN
%(x,y)=cacnutChebyshev
ifnargin==2
a=‐1;
b=1;

=
+
ta dùngchương
trình
ctcheby.m:

clearall,clc
N=2;
a=‐2;
b=2;
[c,x1,y1]=cheby(ʹf31ʹ,N,a,b)%dathucChebyshev
%sosanhvoidathucLagrange/Newton
k=[0:N];
xn=cos((2*N+1‐2*k)*pi/2/(N+1));%pt.(1):nutChebyshev
x=((b‐a)*xn+a+b)/2;%pt.(2)

y=f31(x);
n=newton(x,y)
l=lagrange(x,y)

§6.XẤPXỈHÀMBẰNGPHÂNTHỨCHỮUTỈ

XấpxỉPadédùngđểxấpxỉhàmf(x)tạix0bằnghàmhữutỉ:

m0
m,n 0
n0
Q(x x)
P(xx)
D(x x)

00
2mn
01 0 2 0 mn 0
f(x) T (x) f(x ) f (x )( x x )
f(x) f (x)
(x x) (x x)
2! (m n)!
a a (x x ) a (x x ) a (x x )
+
+
+
+
+

≈=+−
′′
+−++ −
+
=+ − + − ++ −
L
L
  (2)
Đểđơngiảntacoix
0=0.TacầntínhcáchệsốcủaDn(x)vàQm(x)saocho:

m
mn
n
Q(x)
T(x) 0

++++ =


L
L
(4)


m1 m 1 m1 2 mn1 n
m2 m1 1 m 2 mn2 n
mn mn1 1 mn2 2 m n
aadad ad0
aadad ad0
aadad ad0
+−−+
++ −+
++− +−
++ ++ =


++++ =




++++=

L
L
L

mm=min(m‐1,N);
q(m)=a(m:‐1:m‐mm)*[1;d(1:mm)];%pt.(4)
end
num=q(M+1:‐1:1)/d(N);den=[d(N:‐1:1)ʹ1]/d(N);%giamdan
ifnargout==0%vehamthuc,khaitrientaylorvaham
Pade
ifnargin<6
x0=xo‐1;
xf=xo+1;
end
x=x0+[xf‐x0]/100*[0:100];
yt=feval(f,x);
x1=x‐xo;
yp=polyval(num,x1)./polyval(den,x1);
yT=polyval(a(M+N+1:‐1:1),x1);
clf,plot(x,yt,ʹkʹ,
x,yp,ʹrʹ,x,yT,ʹbʹ)
end


Đểxấpxỉhàme
x
tadùngchươngtrìnhctpadeapp.m:

f1=inline(ʹexp(x)ʹ,ʹxʹ);
M=3;
N=2;%baccuaQ(x)vaD(x)
xo=0;%tamcuachuoiTaylor
[n,d]=padeapp(f1,xo,M,N)%tinhcachesocuaQ(x)/P(x)
x0=‐3.5;

32
131211101
2
0302010
2
1312111
h(x ) H x H x H x H y
h(x ) H x H x H x H y
h(x ) 3H x 2H x H y
h(x ) 3H x 2H x H y

=+++=

=+++=


′′
=++=


′′
=++=

(2)
Cácđạohàmbậcnhấtđượctínhgầnđúngbằng:

20
00
0
13

−ε = − ε ,(x1,y1)
Hàm
hermit()tạonênphươngtrình(2):

functionH=hermit(x0,y0,dy0,x1,y1,dy1)
A=[x0^3x0^2x01;x1^3x1^2x11;
3*x0^22*x010;3*x1^22*x110];
b=[y0y1dy0dy1]’;%Pt.(2)
H=(A\b)’;


Hàm
hermits()dùnghàmhermit()đểtínhcáchệsốcủađathứcHermittrên
nhiềuđoạnvàgiátrịnộisuy:

function[H,yi]=hermits(x,y,dy,xi)
%TimcachesocuacdathucHermitetrencdoan
clc
forn=1:length(x)‐1
H(n,:)=hermit(0,y(n),dy(n),x(n+1)‐x(n),y(n+1),dy(n+1));

228
end
yi=ppval(mkpp(x,H),xi)

Đểnộisuytadùngchươngtrìnhcthermite.m:


clearall,clc
x=

=
=

(1a)
 iDFT:
N1
j
2nk/N
n0
1
x[n] X(k)e
N

π
=
=

(1b)
NóichunghệsốDFTcủaX(k)làmộtsốphứcvànóxácđịnhbiênđộvàpha
của thành phần tín hiệu có tần số số Ω
k = k Ω0(rad), tươngứng với tần số
tươngtựω
k=kω0=kΩ0/T=2πk/NT(rad/s).TagọiΩ0=2π/Nvàω0= 2π/NTlà
cáctầnsốcơbảnsốvàtươngtự(tầnsốphângiải)vìđâylàhiệutầnsốcóthể
phânbiệtbởiNđiểmDFT.
 DFT và DFS có cùng bản chất
 nhưng khác nhau về phạm vi thời
gian/tầnsố.Cụthểlàtínhiệux[n]vàDFTX[k]củanókéodàihữuhạntrên
phạmvithờigian/tầnsố{0≤n≤N‐1}và{0
≤k≤N‐1}.Tínhiệux[n]được

fork=0:N‐1
X(k+1)=x*exp(‐j*2*pi*k*n/N).ʹ;
end%DFT
k=[0:N‐1];
forn=0:N‐1
xr(n+
1)=X*exp(j*2*pi*k*n/N).ʹ;
end%IDFT
time_dft=toc
plot(k,abs(X))
pause,holdon
tic
X1=fft(x);%FFT
xr1=ifft(X1);%IFFT
time_fft=toc%duarathoigianthuchien
clf,plot(k,abs(X1),ʹrʹ)%phobiendo


Chạyđoạnlệnhvàsosánhthờigianthựchiện1024đi ểmtínhDFT/iDFTvà
FFT/iFFT.

230
2.ÝnghĩavậtlýcủabiếnđổiFourrierrờirạc:Đểhiểuđượcýnghĩavậtlícủa
FFttathựchiện cáclệnhtrongchươngtrình
ctmeanning.m.Chươngtrìnhcho
taphổbiênđộcủatínhiệu
 x(t)=sin(1.5πt)+0.5cos(3πt)(2)
đượclấymẫumỗiTs.
TừcáckếtquảtathấykhiT=0.1vàN =32thìX
a(k)lớntạik=2vàk=5.

subplot(421)
stem(t,xan,ʹ.ʹ)
k=0:N‐1;
Xa=fft(xan);
dscrp=norm(xan‐real(ifft(Xa)))
subplot(423)
stem(k,abs(Xa),ʹ.ʹ)
N=32;
n
=[0:N‐1];

231
T=0.1;
t=n*T;
xan=sin(w1*t)+0.5*sin(w2*t);
subplot(422)
stem(t,xan,ʹ.ʹ)
k=0:N‐1;
Xa=fft(xan);
Dscrp=norm(xan‐real(ifft(Xa)))
subplot(424)
stem(k,abs(Xa),ʹ.ʹ)
N=64;
n=[0:N‐1];
T=0.05;
t=n*T;
xbn=sin(w1*t)+0.5*sin(w2*t);
subplot(425)
stem(t,xbn,
ʹ.ʹ)

j2 kt/ NT
k1
1
ˆ
x(t) X(k)e
N
1
X(0) 2 Real X(k )e X(N/ 2)cos( /T)
N
π
<

π
=
=
⎧⎫
⎡⎤
=+ + π
⎨⎬
⎣⎦
⎩⎭


%
 (5)
Taxâydựnghàmnộisuy
interpdfs():

function[xi,Xi]=interpdfs(T,x,Ws,ti)
%T:chulilaymau

w2=.5*pi;%haitanso
N=32;
n=[0:N‐1];
T=0.1;
t=n*T;
x=sin(w1*t)+0.5*sin(w2*t)+(rand(1,N)‐0.5);%0.2*sin(20*t);
ti=[0:T/5:(N‐1)*T];
subplot(411),plot(t,x,ʹk.ʹ)%solieubandau
title(ʹSolieubandauvaketquanoisuyʹ)
[xi,Xi]=interpdfs(T,x,1,ti);
holdon,plot(ti,xi,ʹrʹ)%taitaotinhieu
k=[0:N‐1];
subplot(412),stem(k,abs(Xi),ʹk.ʹ)%phobandau
title(ʹPhobandauʹ)
[xi,Xi]=interpdfs(T,x,1/2,ti);
subplot(413),stem(k,abs(Xi),ʹr.ʹ)%phodaloc
title(ʹPhodalocʹ)
subplot(414),plot(t,x,ʹk.ʹ,ti,xi,ʹrʹ)%tin
hieudaloc
title(ʹTinhieudalocʹ)

§9.XẤPXỈHÀMBẰNGPHƯƠNGPHÁPBÌNHPHƯƠNGBÉNHẤT
1.Kháiniệmchung
:Trongcácmụctrướctađãn ội suygiátrịcủahàm.Bài
toánđólàchomộthàmdướidạngbảngsốvàphảitìmgiátrịcủahàmtạimột
giátrịcủađốis
ốkhôngnằmtrongbảng.
 Trongthựctế,bêncạnhbàitoánnộisuytacòngặpmộtdạngbàitoán 
khác.Đólàtìmcôngthứcthựcnghiệmcủamộthàm.
Nộidungbàitoán

[]
{}
nn
2
2
ii00i11i mmi
i1 i1
S e y af(x) af(x) a f (x)
==
= = − + +⋅⋅⋅+
∑∑

RõràngSlàhàmcủacácgiátrịcần tìma
ivàchúngtasẽchọncácaisao
choSđạtgiátrịmin,nghĩalàcácđạohàm
i
a
S


phảibằngkhông.
Tasẽxétcáctrườnghợpcụthể.
2.Hàmxấpxỉcódạngđathức:Trongtrườnghợptổngquáttachọnhệhàm
xấpxỉlàmộtđathức,nghĩalà:
 f(x)=a
0+a1x+a2x
2
+∙∙∙+amx
m






=+⋅⋅⋅++
⋅⋅⋅
=+⋅⋅⋅++
=+⋅⋅⋅++
=+⋅⋅⋅++
=+⋅⋅⋅++
∑∑∑∑
∑∑∑∑
∑∑∑∑
∑∑∑∑
∑∑∑
====


====
+

+
====
+

+
====

+
===

n
1i
2m
i1m
3m
im
n
1i
i
2
i
n
1i
2
i0
n
1i
n
1i
1m
i1m
2m
im
n
1i
ii
n
1i
i0
n


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status