返回   MATLAB中国论坛|MATLAB爱好者之家—不仅仅是MATLAB! > 基础科学-不仅仅是MATLAB! > 数学


数学 A discussion board for Mathematics.

挖掘已有资源,发帖前请先搜索!
虚拟主机 域名注册 香港空间
回复
 
LinkBack 主题工具 显示模式
旧 2009-11-08, 08:20 AM   #1
初级会员
 
注册日期: 2009-11-08
住址: 上海
年龄: 24
帖子: 2
感谢他人: 0
有 0 帖获得 0 感谢
声望力: 0
kevinton 正向着好的方向发展
发送 MSN 消息给 kevinton
默认 编程请教!!!

我用matlab编程来计算函数
主要用牛顿插值多项式来模拟函数求得函数后再进行画图
程序如下:
function yh=shiyan3(X,n)
h=(X(2)-X(1))/n;
x=X(1):h:X(2);
y=(x.^2+1).^(-1)
x1=(x(1)+x(2))/2:hx(n)+x(n+1))/2;
p( : ,1)=x;
p( : ,2)=y;
for i=3:n+2
p(1:n+3-i,i)=diff(p(1:n+4-i,i-1))./(x(i-1:n+1)-x(1:n+3-i))';
end
for k=1:length(x1)
s=y(1);
for i=3:n+2
q=1;
for j=1:i-2
q=q*(x1(k)-x(j))
end
s=s+p(1,i)*q;
end
y1(k)=s;
end
% 不加余项
for i=1:n
xh(2*i-1)=x(i);xh(2*i)=x1(i);
yh(2*i-1)=y(i);yh(2*i)=y1(i);
end
xh(2*n+1)=x(n+1);
yh(2*n+1)=y(n+1);
plot(xh,yh,'r:',x,(x.^2+1).^(-1),'b-')
hold on
plot(x,y,'b+')

但计算结果完全跑偏
计算差商之前应该没问题
关键在于模拟区间的牛顿多项式
我不知道错在哪里
还望高手指正
感激不尽!!!
kevinton 当前离线   回复时引用此帖
回复

书签

主题工具
显示模式

发帖规则
不可以发表新主题
可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 启用



所有时间均为北京时间。现在的时间是 01:29 AM


Powered by vBulletin
版权所有 ©2000 - 2012,Jelsoft Enterprises Ltd.
陕ICP备07001583号
感谢MEyu科技提供优质空间

SEO by vBSEO ©2009, Crawlability, Inc.