📄 bclagrange.txt
字号:
%-----------------质心lagrange插值第二形式M文件----------------------
%输入参数:x——插值节点组成的向量
% y——插值节点对应的函数值组成的向量
% u——插值点组成的向量
%输出参数:v——插值点u所对应的lagrange插值
function v=BClagrange(x,y,u)
n=length(x);
v=zeros(size(u));
molec=v; %存储质心第二形式的分子
denom=v; %存储质心第二形式的分母
eract=v;
w=v;
for j=1:n
wt=1;
for k=[1:j-1 j+1:n]
wt=(x(j)-x(k))*wt;
end
w(j)=1/wt;
end
for j=1:n
xdiff=u-x(j);
t=w(j)./xdiff;
molec=molec+t*y(j);
denom=denom+t;
exact(xdiff==0)=1; %把分母为零的下标找出来
end
v=(molec./denom);
k=find(exact);
xk=u(k);
m=length(k);
for j=1:m
v(k(j))=y(find(x==xk(j))); %把分母为零的下标变量直接赋对应的数据值
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -