Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
391,95 KB
Nội dung
210
CHƯƠNG 3: NỘI SUYVÀXẤPXỈHÀM
§1.NỘISUYLAGRANGE
Trongthựctếnhiềukhitacầntínhgiátrịcủahàmy =f(x)tạimộtgiátrị
xtrongmộtđoạn[a,b]nàođómàchỉbiếtmộtsốnhấtđịnhcá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ệmhaytínhtoán.Vìvậynảysinhvấnđềtoánhọclàtrênđoạna≤x≤
b
chomộtloạtcácđiểmx
i(i=0,1,2 )vàtạicácđiểmxinàygiátrịcủahàmlà
y
i=f(xi)đãbiếtvàtacầntìmy=f(x)dựatrêncácgiátrịđãbiếtđó.Lúcđóta
cầntìmđathức:
P
n(x)=aoxn+a1x
n‐1
+…+an‐1x+an
saochoP
n(xi)=f(xi)=yi.ĐathứcPn(x)đượcgọilàđathứcnộisuycủahàm
y=f(x).Tachọn đathứcđểnộisuyhàmy=f(x)vìđathứclàloạihàmđơn
giản,luôncóđạohàmvànguyênhàm.Việctínhgiátr
ịcủanótheothuậttoán
Hornercũngđơngiản.
BâygiờtaxâydựngđathứcnộisuykiểuLagrange.GọiL
ilàđathức:
)xx) (xx)(xx) (xx(
)xx) (xx)(xx) (xx(
L
ni1ii1ii0i
n1i1i0
i
−−−−
−
−
−−
=
+−
+−
RõrànglàL
i(x)làmộtđathứcbậcnvà:
⎩
⎨
⎧
≠
=
=
ij0
ij1
)x(L
ji
TagọiđathứcnàylàđathứcLagrangecơbản.
Bâygiờtaxétbiểuthức:
∑
=
=
n
0i
iin
)x(L)x(f)x(P
TathấyP
n(x)làmộtđathứcbậcnvìcácLi(x)làcácđath ứcbậcnvà
thoảmãnđiềukiệnP
n(xi)=f(xi)=yi.TagọinólàđathứcnộisuyLagrange.
Vớin=1tacóbảng
x x
0 x1
y y0 y1
Đathứcnộisuysẽlà:
P
1(x)=yoL0(x)+y1L1(x1)
10
1
0
xx
xx
L
−
−
=
01
0
1
xx
xx
L
−
−
=
211
nên
01
0
1
10
1
01
xx
xx
y
xx
xx
y)x(P
−
−
+
−
−
=
NhưvậyP
1(x)làmộtđathứcbậcnhấtđốivớix
Vớin=2tacóbảng
x x
0 x1 x2
y y0 y1 y2
Đathứcnộisuysẽ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(
)xx)(xx(
L
1202
10
2
−−
−−
=
NhưvậyP
1(x)làmộtđathứcbậchaiđốivớix.
Taxâydựnghàm
lagrange()đểthựchiệnviệcnộisuyhàmtheothuậttoán
Lagrange:
function[l,L]=lagrange(x,y)
%Duavao:x=[x0x1 xn],y=[y0y1 yn]
%ketqua:l=HesocuadathucLagrangebacn
%L=DathucLagrange
n=length(x)‐1;%baccuadathucl
l=0;
for
m=1:n+1
p=1;
fork=1:n+1
ifk~=m
p=conv(p,[1‐x(k)])/(x(m)‐x(k));
end
end
L(m,:)=p;%dathucLagrange
l=l+y(m)*p;
end
212
Chohàmdướidạngbảng:
x‐2‐1 1 2
y‐6 0 0 6
vàtìmy(2.5)tadùngchươngtrình
ctlagrange.m:
clearall,clc
x
=[‐2‐112];
y=[
‐6006];
l=lagrange(x,y);
yx=polyval(l,2.5)
§2.NỘISUYNEWTON
Bâygiờtaxétmộtcáchkhácđểxâydựngđathứcnộisuygọilàphương
phápNewton.Trướchếttađưavàomộtkháiniệmmớilàtỉhiệu
Giảsửhàmy=y(x)cógiá
trịchotrongbảngsau:
x x
0 x1 x2
…
xn‐1 xn
y y0 y1 y2
…
yn‐1 yn
Tỉhiệucấp1củaytạix
i,xjlà:
ji
ji
ji
xx
yy
]x,x[y
−
−
=
Tỉhiệucấphaicủaytạix
i,xj,xklà:
k
i
k
jji
k
ji
xx
]x,x[y]x,x[y
]x,x,x[y
−
−
=
v.v.
Vớiy(x)=P
n(x)làmộtđathứcbậcnthìtỉhiệucấp1tạix,x0:
0
0nn
0n
xx
)x(P)x(P
]x,x[P
−
−
=
làmộtđathứcbậc(n‐1).Tỉhiệucấp2tạix,x
0,x1:
1
10n0n
10n
xx
]x,x[P]x,x[P
]x,x,x[P
−
−
=
làmộtđathứcbậc(n‐2)v.vvàtớitỉhiệucấp(n+1)thì:
213
Pn[x,xo, ,xn]=0
Từcácđịnhnghĩatỉhiệutasuyra:
P
n(x)=Pn(x0)+(x‐x0)Pn[x,xo]
P
n[x,x0]=Pn[x0,x1]+(x‐x1)Pn[x,xo,x1]
P
n[x,xo,x1]=Pn[x0,x1,x2]+(x‐x2)Pn[x,xo,x1,x2]
P
n[x,xo, ,xn‐1]=Pn[x0,x1, ,xn]+(x‐xn)Pn[x,xo, ,xn]
Do P
n[x,xo, ,xn]=0nêntừđótacó:
P
n(x)=Pn(x0)+(x‐x0)Pn[xo,x1]+(x‐x0)(x‐x1)Pn[x0,x1,x2]+…
+(x‐x
0)…(x‐xn‐1)Pn[x0,…,xn]
NếuP
n(x)làđathứcnộisuycủahàmy=f(x)thì:
P
n(xi)=f(xi)=yivớii=0÷n
Dođócáctỉhiệutừcấp1đếncấpncủaP
nvàcủaylàtrùngnhauvà
nhưvậytacó:
P
n(x)=y0+(x‐x0)y[x0,x1]+(x‐x0)(x‐x1)y[x0,x1,x2]+ +
(x‐x
0)(x‐x1) (x‐xn‐1)y[x0, ,xn]
ĐathứcnàygọilàđathứcnộisuyNewtontiếnxuấtpháttừnútx
0của
hàmy=f(x).NgoàiđathứctiếncòncóđathứcnộisuyNewtonlùixuấtphát
từđiểmx
ncódạngnhư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ườnghợpcácnútcáchđềuthìx
i=x0+ihvớii=0,1, ,n.Tagọisai
phântiếncấp1tạiilà:
∆y
i=yi+1‐yi
vàsaiphântiếncấphaitạii:
∆
2
yi=∆(∆yi)=yi+2‐2yi+1+yi
vàsaiphântiếncấpnlà:
∆
n
yi=∆(∆
n‐1
yi)
Khiđótacó:
[]
h
y
x,xy
0
10
∆
=
[]
2
0
2
210
h2
y
x,x,xy
∆
=
214
[]
n
0
n
n210
h!n
y
x, ,x,x,xy
∆
=
Bâygiờđặtx=x
0+httrongđathứcNewtontiếntađược:
0
n
0
2
000n
y
!n
)1nt()1t(t
y
!2
)1t(t
yty)htx(P ∆
+−
⋅
⋅
⋅
−
+⋅⋅⋅+∆
−
+∆+=+
thìtanhậnđượcđathứcNewtontiếnxuấtpháttừx
0trongtrườnghợpnút
cáchđều.Vớin=1tacó:
P
1(x0+ht)=y0+∆y0
Vớin=2tacó:
0
2
000n
y
!2
)1t(t
yty)htx(P ∆
−
+∆+=+
Mộtcáchtươngtựtacókháiniệmcácsaiphânlùitạii:
∇y
i=yi‐yi‐1
∇
2
yi=∇(∇yi)=yi‐2yi‐1+yi‐2
∇
n
yi=∇(∇
n‐1
yi)
vàđathứcnộisuyNewtonlùikhicácđiểmnộisuycáchđều:
n
n
n
2
nn0n
y
!n
)1nt()1t(t
y
!2
)1t(t
yty)htx(P ∇
−+
⋅
⋅
⋅
+
+⋅⋅⋅+∇
+
+∇+=+
Taxâydựnghàm
newton()đểnộisuy:
function[n,DD]=newton(x,y)
%Duavao:x=[x0x1 xN]
%y=[y0y1 yN]
%Layra:n=hesocuadathucNewtonbacN
N=length(x)‐1;
DD=zeros(N+1,N+1);
DD(1:N+1,1)=yʹ;
fork=2:N+1
form=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);
fork=N:‐1:1
215
n=[na(k)]‐[0n*x(k)];
end
Chohàmdướidạngbảng:
x‐2‐1 1 2 4
y‐6 0 0 6 60
Tadùngchươngtrình
ctnewton.mđểnộisuy:
clearall,clc
x=
[‐2‐1124];
y=[‐600660];
a=newton(x,y)
yx=polyval(a,2.5)
§3.NỘISUYAITKEN‐NEVILLE
Một dạng khác củađa thức nội suyđược xácđịnh bằng thuật toán
Aitken‐Neville.Giảsửtacónđiểmđãchocủahàmf(x).Nhưvậyquahai
điểm x
0 và x1 ta cóđa thức nội suy Lagrange của hàm f(x)được viết dưới
dạng:
01
11
00
01
xx
xxy
xxy
)x(P
−
−
−
=
Đâylàmộtđathứcbậc1:
01
0
1
10
1
001
xx
xx
y
xx
xx
y)x(P
−
−
+
−
−
=
Khix=x
0thì:
0
01
011
000
001
y
xx
xxy
xxy
)x(P =
−
−
−
=
Khix=x
1thì:
1
01
111
100
101
y
xx
xxy
xxy
)x(P =
−
−
−
=
ĐathứcnộisuyLagrangecủaf(x)qua3điểmx
0,x1,x2códạng:
216
02
212
001
012
xx
xx)x(P
xx)x(P
)x(P
−
−
−
=
vàlàmộtđathứcbậc2:
)xx)(xx(
)xx)(xx(
y
)xx)(xx(
)xx)(xx(
y
)xx)(xx(
)xx)(xx(
y)x(P
1202
10
2
2101
20
1
2010
21
0012
−−
−
−
+
−−
−
−
+
−−
−−
=
Khix=x
0thì:
0
02
0212
000
0012
y
xx
xx)x(P
xxy
)x(P =
−
−
−
=
Khix=x
1thì:
1
02
121
101
1012
y
xx
xxy
xxy
)x(P =
−
−
−
=
Khix=x
2thì:
2
02
222
20201
2012
y
xx
xxy
xx)x(P
)x(P =
−
−
−
=
TổngquátđathứcnộisuyLagrangequanđiểmlà:
02
nn 12
0)1n (01
n 012
xx
xx)x(P
xx)x(P
)x(P
−
−
−
=
−
Như vậy ta có thể dùng phép lặpđểxácđịnh lần lượt cácđa thức
Lagrange.SơđồtínhtoánnhưvậygọilàsơđồNeville‐Aitken.
Taxâydựnghàm
aitkenneville()đểnộisuy:
functiona=aitkenneville(xData,yData,x)
%Travegiatrinoisuytaix.
%Cuphap:y=aitkenneville(xData,yData,x)
n=length(xData);
y=yData;
fork=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);
Chocáccặpsố(1,3),(2,5),(3,7),(4,9)và(5,11),đểtìmytạix=2.5tadùng
chươngtrình
ctaitkennevile.m:
clearall,clc
x=
[1234];
y=[3579];
yx=aitkenneville(x,y,2.5)
§4.NỘISUYBẰNGĐƯỜNGCONGSPLINEBẬCBA
Khisốđiểmchotrướcdùngkhinộisuytăng,đathứcnộisuycódạng
sóngvàsaisốtăng.Taxéthàmthực:
2
1
f31(x)
18x
=
+
vànộisuynóbằngthuậttoánNewtonnhờchươngtrình
cttestintp.m
%NoisuyNewton
x1=[‐1‐0.500.51.0];
y1=f31(x1);
n1=newton(x1,y1)
x2=[‐1‐0.75‐0.5‐0.2500.250.50.751.0];
y2=f31(x2);
n2=newton(x2,y2)
x3=[‐1‐0.8‐0.6‐0.4‐0.200.20.40.60.81.0];
y3
=f31(x3);
n3=newton(x3,y3)
xx=[‐1:0.02:1];%phamvinoisuy
yy=f31(xx);%hamthuc
yy1=polyval(n1,xx);%hamxapxiqua5diem
yy2=polyval(n2,xx);%hamxapxiqua9diem
yy3=polyval(n3,xx);%hamxapxiqua11diem
subplot(221)
plot(xx,
yy,ʹk‐ʹ,xx,yy1,ʹbʹ)
subplot(224)
218
plot(xx,yy1‐yy,ʹrʹ,xx,yy2‐yy,ʹgʹ,xx,yy3‐yy,ʹbʹ)%dothisaiso
subplot(222)
plot(xx,yy,ʹk‐ʹ,xx,yy2,ʹbʹ)
subplot(223)
plot(xx,yy,ʹk‐ʹ,xx,yy3,ʹbʹ)
vànhậnđượckếtquả.
Đểtránhhiệntượngsaisốlớnkhi
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
đườngcongnàyđượcghéptrơntạicác
điểmnối.Tachọncácđườngcongnàylà
hàmbậc3vìhàmbậc1vàbậchaikhó
bảođảmđiềukiệnnốitrơn.
Cho
mộtloạtgiátrịnộisuy(x1,y1),…,(xi,y i),…,(xn,yn).Trênmỗiđoạnta
cómộthàmbậc3.Nhưvậygiữanútivà(i+1) tacóhàmf
i,i+1(x),nghĩalàta
dùng(n‐1)hàmbậc3f
1,2(x),f2,3(x),…,fn‐1,n(x)đểthaythếchohàmthự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àmnàythoảmãn:
f
i,i+1(xi)=ai=yi (3)
32
i,i1 i1 ii ii ii i i1
f(x)dh ch bha y
++ +
=+++=(4)
i,i 1 i i
f(x)b
+
′
= (5)
2
i,i 1 i 1 i i i i i
f(x)3dh 2ch b
++
′
=++(6)
i,i 1 i i i
f(x)2c y
+
′′ ′′
==
(7)
i,i1 i1 i i i i1
f(x)6dh2cy
++ +
′′ ′′
=+=(8)
Muốnnốitrơntacần cóđạohàmbậcnhấtliêntụcvàdođó:
i1,i i i,i1 i i
f (x) f (x) k
−+
′′ ′′
==
Lúcnàycácgiátrịkchưabiết,ngoạitrừk
1=kn=0(tacáccácmútlàđiểm
uốn).Điểmxuấtphátđểtínhcáchệsốcủaf
i,i+1(x)làbiểuthứccủa
i,i 1 i
f(x)
+
′
′
.Sử
dụngnộisuyLagrangechohaiđiểmtacó:
i,i 1 i i i i 1 i 1
f(x)kL(x)kL(x)
+++
′′
=+
Trongđó:
y
x
x
i‐1
xi
xi+1
yi‐1
yi+1
yi
f
i‐1,i
f
i,i+1
219
i1 i
ii1
ii1 i1i
xx xx
L (x) L ( x)
xx x x
+
+
++
−−
==
−−
Dovậy:
ii1i1i
i,i 1 i
ii1
k(x x ) k (x x)
f(x)
xx
++
+
+
−− −
′′
=
−
Tíchphânbiểuthứctrênhailầntheoxtacó:
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đóAvàBlàcáchằngsốtíchphân
SốhạngcuốitrongphươngtrìnhtrênthườngđượcviếtlàCx+D.
ĐặtC=A‐BvàD=‐Ax
i+1+Bxiđểdễdàngtính toán.Từđiềukiệnfi,i+1(xi)=yi
tacó:
3
ii i1
ii1 i
ii1
k(x x )
A(x x ) y
6(x x )
+
+
+
−
+−=
−
nên:
i
ii i1
ii1
y
k(x x )
A
xx 6
+
+
−
=−
−
Tươngtự,điềukiệnf
i,i+1(xi+1)=yi+1chota:
i1
i1 i i1
ii1
y
k(x x)
B
xx 6
+
++
+
−
=−
−
Kếtquảlà:
3
ii1
i,i 1 i i 1 i i 1
ii1
3
i1 i
ii i1
ii1
ii1i1i
ii1
k(xx)
f (x ) (x x )(x x )
6xx
k(xx)
(x x )(x x )
6xx
y(x x ) y (x x)
xx
+
+++
+
+
+
+
++
+
⎡⎤
−
=−−−
⎢⎥
−
⎣⎦
⎡⎤
−
−−−−
⎢⎥
−
⎣⎦
−− −
+
−
Đạohàmcấp2k
itạicácnútbêntrongđượctínhtừđiềukiện:
i1,i i i,i1 i
f (x) f (x)
−+
′′
=
Saukhibiếnđổitacóphươngtrì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
−− − + + +
−+
−+
−+ − + −
⎛⎞
−−
=−
⎜⎟
−−
⎝⎠
Khicácđiểmchiacáchđều(x
i+1‐xi)=htacó:
[...]... y = cubicspline(xData, yData, x) fprintf(ʹ\nʹ) end §5. NỘI SUY BẰNG ĐA THỨC CHEBYSHEV Khi nộisuy bằng đa thức Newton hay Lagrange, nghĩa là thay hàm thực bằng đa thức xấp xỉ, có khoảng cách cách đều thì sai số giữa đa thức nội suyvàhàm thực có xu hướng tăng tại hai mút nội suy. Ta thấy rõ điều này khi chạy chương trình cttestintp.m. Do vậy ta nên chọn các điểm mốc nộisuy ở hai mút dày hơn ở giữa. ... tâm tại điểm giữa của đoạn nội suy. Như vậy với ‐1 x′1 đoạn nộisuy [‐1, 1] ta có: 2n + 1 − 2k x′k = cos π k = 1, 2,…,n (1) 2(n + 1) Với đoạn nộisuy [a, b] bất kì: b−a b+a b−a 2n + 1 − 2k a+b xk = x′k + cos = π+ k = 1, 2,…,n (2) 2 2 2 2(n + 1) 2 Các nút nộisuy này được gọi là các nút Chebyshev. Đa thức nộisuy dựa trên các nút Chebyschev gọi là đa thức nộisuy Chebyshev. Ta xét hàm thực: ... 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ộisuy 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ộisuy 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 là từ một loạt các điểm cho trước (có thể là các giá trị ... §6. XẤP XỈ HÀM BẰNG PHÂN THỨC HỮU TỈ Xấpxỉ Padé dùng để xấpxỉhàm f(x) tại x0 bằng hàm hữu tỉ: Q (x − x 0 ) Pm ,n (x − x 0 ) = m D n (x − x 0 ) q 0 + q 1 (x − x0 ) + q 2 (x − x0 )2 + L + q m (x − x0 )m = 1 + d1 (x − x0 ) + d 2 (x − x0 )2 + L + d n (x − x0 )n với m = n hay m = n + 1 Trong đó f(x0), fʹ(x0),…, f(m+n)(x0) đã cho Trước hết ta khai triển Taylor hàm f(x) tại x = x0 đến bậc (m + n). ... Từ các kết quả ta thấy khi T = 0.1 và N = 32 thì Xa(k) lớn tại k = 2 và k= 5. Lúc đó kω0 = 2πk/NT = 2πk/3.2 ≈ 1.5π và 3.125π ≈ 3π. Khi T = 0.05 và N = 64 thì Xb(k) cũng lớn tại k = 2 và k = 5. Lúc đó kω0 = 1.25π ≈ 1.5π và 3.125π ≈ 3π. Khi T = 0.1 và N = 64 thì Xc(k) lớn tại k = 4 ,k = 5, k = 9 và k = 10. Lúc đó kω0 = 2πk/NT = 2πk/6.4 ≈ 1.25π ~ 1.5625π và 2.8125π ~ 3π. Khi T = 0.1 và N = 64 thì Xd(k) lớn tại k = 5 và k = ... = 1 + 8x 2 Ta chọn số nút nộisuy lần lượt là 5, 9, 11 và xây dựng các đa thức Newton (hay Lagrange) c4(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ộisuy 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); xx = [‐1:0.02: 1]; %pham vi noi suy yy1 = polyval(n1,xx); %ham xap xi qua 5 diem ... ⋅ ⋅ ⋅ + a m fm (x i )]} 2 Rõ ràng S là hàm của các giá trị cần tìm ai và chúng ta sẽ chọn các ai sao ∂S phải bằng không. cho S đạt giá trị min, nghĩa là các đạo hàm ∂a i Ta sẽ xét các trường hợp cụ thể. 2. Hàmxấpxỉ có dạng đa thức: Trong trường hợp tổng quát ta chọn hệ hàm xấpxỉ là một đa thức, nghĩa là: f(x) = a0 + a1x + a2x2 +∙∙∙+ amxm Vậy hàm S là : S = ( y i − a 0 + a1x + a 2... x = flipdim(x, 1); Để xấpxỉ một dãy số liệu bằng hàm đa thức ta dùng chương trình ctpolynomfit.m: clear all, clc xData = [0 1 2 3 4]; yData = [1 8 24 63 124]; x = polyfits(xData, yData, 3); y = 0:0.1:4; 235 z = polyval(xʹ, y); hold on plot(y, z,ʹ‐bʹ, xData, yData, ʹroʹ); 3 .Hàm dạng Aecx: Khi các số liệu thể hiện một sự biến đổi đơn điệu ta dùng hàmxấpxỉ là y = Aecx. Lấy logarit hai vế ta có : ... A = exp(d3/d1); Ta dùng chương trình ctpowerfit.m để xấpxỉ dãy số liệu đã cho: clc x = [ 1 2 3 4 5]; y = [1.5 15.1 52.5 130.5 253]; [q,A] = powerfit(x, y) t = 0.1:0.1:5; z = exp(log(A)+q*log(t)); plot(t, z, ʹ‐bʹ, x, y, ʹroʹ); 5. Hàm lượng giác: Khi quan hệ y = f(x) có dạng tuần hoàn ta dùng hàm xấpxỉ là tổ hợp tuyến tính của các hàm sin và cosin dạng: 237 n n... c = d2/d1; A = exp(d3/d1); Ta dùng chương trình ctexpfit.m để xấpxỉ dãy số liệu đã cho clear all, clc x = [1.2 2.8 4.3 5.4 6.8 7.9]; y = [7.5 16.1 38.9 67 146.6 266.2]; [c, A] = expfit(x, y); t = 0:0.1:8; z = A*exp(c*t); plot(t, z, ʹ‐bʹ, x, y, ʹroʹ); 236 4. Hàm dạng Axq: Khi các số liệu thể hiện một sự biến đổi đơn điệu ta cũng có thể dùng hàmxấpxỉ là y = Axq. Lấy logarit hai vế ta có: .
210
CHƯƠNG 3: NỘI SUY VÀ XẤP XỈ HÀM
§1.NỘI SUY LAGRANGE
Trongthựctếnhiềukhitacầntínhgiátrịcủa hàm y =f(x)tạimộtgiátrị
xtrongmộtđoạn[a,b]nàođómàchỉbiếtmộtsốnhấtđịnhcác
giátrịcủa
hàm . P
n(x)=aoxn+a1x
n‐1
+…+an‐1x+an
saochoP
n(xi)=f(xi)=yi.ĐathứcPn(x)đượcgọilàđathức nội suy của hàm
y=f(x).Tachọn đathứcđể nội suy hàm y=f(x)vìđathứclàloại hàm đơn
giản,luôncóđạo hàm và nguyên hàm. Việctínhgiátr
ịcủanótheothuậttoán
Hornercũngđơngiản.