1.簡述
? ? ??
第一部分:問題分析
(1)實(shí)驗(yàn)題目:拉格朗日插值算法
具體實(shí)驗(yàn)要求:要求學(xué)生運(yùn)用拉格朗日插值算法通過給定的平面上的n個(gè)數(shù)據(jù)點(diǎn),計(jì)算拉格朗日多項(xiàng)式Pn(x)的值,并將其作為實(shí)際函數(shù)f(x)的估計(jì)值。用matlab編寫拉格朗日插值算法的代碼,要求代碼實(shí)現(xiàn)用戶輸入了數(shù)據(jù)點(diǎn)(xi,f(xi))、插值點(diǎn)之后,程序能夠輸出插值點(diǎn)對(duì)應(yīng)的函數(shù)估值。
(2)實(shí)驗(yàn)?zāi)康模鹤屚瑢W(xué)們進(jìn)一步掌握拉格朗日插值算法的原理以及運(yùn)算過程,并且通過matlab編程培養(yǎng)實(shí)際的上機(jī)操作能力和代碼能力。
第二部分:數(shù)學(xué)原理?
?要估計(jì)任一點(diǎn)ξ,ξ≠xi,i=0,1,2,...,n,則可以用Pn(ξ)的值作為準(zhǔn)確值f(ξ)的近似值,此方法叫做“插值法”。
稱式(*)為插值條件(準(zhǔn)則),含xi(i=0,1,...,n)的最小區(qū)間[a,b],其中a=min{x0,x1,...,xn},b=max{x0,x1,...,xn}。
?
根據(jù)《插值多項(xiàng)式的性質(zhì)》中的定理6.1可得
其中(6.19)稱為基函數(shù),(6.18)稱為拉格朗日多項(xiàng)式,用(6.18)計(jì)算插值稱為拉格朗日多項(xiàng)式插值。
2.代碼
function Lagrange_main()
clc
x=0:1:10;
y=x./(cos(x)+1);
k=1;
for x0=0:0.1:10;
? ? y0(k)=Lagrange(x,y,x0);
? ? k=k+1;
end
x0=0:0.1:10;
plot(x0,y0)
hold on?
scatter(x,y,'ro')
end
function y0=Lagrange(x,y,x0)
n=length(x);
l=ones(1,n);
for k=1:n
? ? for j=1:n
? ? ? ? if j~=k
? ? ? ? ? ? l(k)=l(k)*(x0-x(j))/(x(k)-x(j));
? ? ? ? end
? ? end
end
y0=sum(y.*l);
end
?
3.運(yùn)行結(jié)果
文章來源:http://www.zghlxwxcb.cn/news/detail-608280.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-608280.html
到了這里,關(guān)于22matlab數(shù)據(jù)分析 拉格朗日插值(matlab程序)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!