在结点上给出结点基函数,接着做该基函数的线性组合,组合的系数为结点的函数值,这种插值多项式称为拉格朗日插值公式。通俗地说,就是通过平面上的两个点确定一条直线。该插值方法是一种较为基础的方法,同时该方法也较容易理解与实现。
拉格朗日插值多项式的表达式为:
其中,li(x)称为i次的基函数。且li(x)的表达式为:
结合以上两式可得拉格朗日插值多项式的表达式为:
在MATLAB中,没有可以实现拉格朗日插值的专门函数,根据以上对拉格朗日插值公式的介绍,可以自行创建该插值函数。
例:拉格朗日插值函数的编写与实现
1)创建M文件,输入以下代码并保存。
function yh= test4(x,y ,xh)
n=length(x);
m=length(xh);
yh =zeros( 1,m);
cl=ones(n-1,1);
c2=ones(1,m);
for i=l:n
xp=x([1:i-1 i+1:n]);
yh =yh+y(i) prod((cl * xh-xp ' *c2)./(x(i)-xp'* c2));
end
2)输入以下代码,即可实现插值。
>>x=[1 2 3 4 5 6];
y=[24 45 67 168 310 412];
xh=4.5;
test4(x,y,xh)
ans =文章来源:https://www.toymoban.com/news/detail-736574.html
238.7852文章来源地址https://www.toymoban.com/news/detail-736574.html
到了这里,关于MATLAB-拉格朗日插值运算的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!