matlab拉格朗日插值等插值函数的源程序,可在存为m文件后运行不出 能不能发给我可以运行的啊
拉格朗日源文件:functiony=lagr1(x0,y0,x)n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;fork=1:...
拉格朗日源文件:
function y=lagr1(x0,y0,x)
n=length(x0); m=length(x);
for i=1:m
z=x(i);s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
747210469@qq.com
谢谢~ 展开
function y=lagr1(x0,y0,x)
n=length(x0); m=length(x);
for i=1:m
z=x(i);s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
747210469@qq.com
谢谢~ 展开
展开全部
是可以运行的
function y=lagr(x0,y0,x)
%x0,y0为节点
%x是插值点
n=length(x0);m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
是lagran1有问题
举例
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagr(x1,y1,x0)
y0 =
Columns 1 through 3
0.841470984807897 0.951808959041112 1.00916024603546
Columns 4 through 6
1.01802976048902 0.983113276351804 0.909297426825682
追问:
还是有个错误
??? Input argument "x0" is undefined.
Error in ==> lagran1 at 4
n=length(x0);m=length(x);
追答:
真搞不懂你是怎么调用的 lagran1 应该是m文件吧 不用在命令窗口输入
在命令窗口输入
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagran1(x1,y1,x0)
你在试试
追问:
我是将它存为M文件的,然后在按F5运行
截图是我运行出错的地方
追答:
那不行 ,你没有输入参数怎么可以
你在命令窗口输入
x0=1:5;
y0=sin(x1);
x=1:0.2:2;
在点F5试试
function y=lagr(x0,y0,x)
%x0,y0为节点
%x是插值点
n=length(x0);m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
是lagran1有问题
举例
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagr(x1,y1,x0)
y0 =
Columns 1 through 3
0.841470984807897 0.951808959041112 1.00916024603546
Columns 4 through 6
1.01802976048902 0.983113276351804 0.909297426825682
追问:
还是有个错误
??? Input argument "x0" is undefined.
Error in ==> lagran1 at 4
n=length(x0);m=length(x);
追答:
真搞不懂你是怎么调用的 lagran1 应该是m文件吧 不用在命令窗口输入
在命令窗口输入
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagran1(x1,y1,x0)
你在试试
追问:
我是将它存为M文件的,然后在按F5运行
截图是我运行出错的地方
追答:
那不行 ,你没有输入参数怎么可以
你在命令窗口输入
x0=1:5;
y0=sin(x1);
x=1:0.2:2;
在点F5试试
展开全部
是可以运行的
function y=lagr(x0,y0,x)
%x0,y0为节点
%x是插值点
n=length(x0);m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
是lagran1有问题
举例
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagr(x1,y1,x0)
y0 =
Columns 1 through 3
0.841470984807897 0.951808959041112 1.00916024603546
Columns 4 through 6
1.01802976048902 0.983113276351804 0.909297426825682
function y=lagr(x0,y0,x)
%x0,y0为节点
%x是插值点
n=length(x0);m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
是lagran1有问题
举例
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagr(x1,y1,x0)
y0 =
Columns 1 through 3
0.841470984807897 0.951808959041112 1.00916024603546
Columns 4 through 6
1.01802976048902 0.983113276351804 0.909297426825682
更多追问追答
追问
还是有个错误
??? Input argument "x0" is undefined.
Error in ==> lagran1 at 4
n=length(x0);m=length(x);
追答
真搞不懂你是怎么调用的 lagran1 应该是m文件吧 不用在命令窗口输入
在命令窗口输入
x1=1:5;
y1=sin(x1);
x0=1:0.2:2;
y0=lagran1(x1,y1,x0)
你在试试
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |