数值分析matlab代码Word下载.doc

上传人:wj 文档编号:13041641 上传时间:2022-10-03 格式:DOC 页数:25 大小:179.77KB
下载 相关 举报
数值分析matlab代码Word下载.doc_第1页
第1页 / 共25页
数值分析matlab代码Word下载.doc_第2页
第2页 / 共25页
数值分析matlab代码Word下载.doc_第3页
第3页 / 共25页
数值分析matlab代码Word下载.doc_第4页
第4页 / 共25页
数值分析matlab代码Word下载.doc_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

数值分析matlab代码Word下载.doc

《数值分析matlab代码Word下载.doc》由会员分享,可在线阅读,更多相关《数值分析matlab代码Word下载.doc(25页珍藏版)》请在冰豆网上搜索。

数值分析matlab代码Word下载.doc

迭代次数为:

'

disp(i)

break;

end

p0=p;

end

ifi==n0&

&

~(abs(p-p0)<

=10^(-6))

disp(n0)

disp('

次牛顿迭代后无法求出方程的解'

2、disp('

Steffensen加速'

p1=0.5*p0+0.5*cos(p0);

p2=0.5*p1+0.5*cos(p1);

p=p0-((p1-p0).^2)./(p2-2.*p1+p0);

用Steffensen加速求得方程的根为'

次Steffensen加速后无法求出方程的解'

1、%使用二分法找到方程600x^4-550x^3+200x^2-20x-1=0在区间[0.1,1]上的根,

%误差限为e=10^-4

二分法'

a=0.2;

b=0.26;

tol=0.0001;

n0=10;

fa=600*(a.^4)-550*(a.^3)+200*(a.^2)-20*a-1;

p=(a+b)/2;

fp=600*(p.^4)-550*(p.^3)+200*(p.^2)-20*p-1;

iffp==0||(abs((b-a)/2)<

tol)

disp('

用二分法求得方程的根p='

disp(p)

二分迭代次数为:

disp(i)

break;

end

iffa*fp>

a=p;

elseb=p;

~(fp==0||(abs((b-a)/2)<

tol))

次二分迭代后没有求出方程的根'

2、%使用牛顿法找到方程600x^4-550x^3+200x^2-20x-1=0在区间[0.1,1]上的根,

p0=0.3;

p=p0-(600*(p0.^4)-550*(p0.^3)+200*(p0.^2)-20*p0-1)./(2400*(p0.^3)-1650*p0.^2+400*p0-20);

if(abs(p-p0)<

用牛顿法求得方程的根p='

牛顿迭代次数为:

p0=p;

次牛顿迭代后没有求出方程的根'

3、%使用割线法找到方程600x^4-550x^3+200x^2-20x-1=0在区间[0.1,1]上的根,

割线法'

p0=0.2;

p1=0.25;

q0=600*(p0.^4)-550*(p0.^3)+200*(p0.^2)-20*p0-1;

q1=600*(p1.^4)-550*(p1.^3)+200*(p1.^2)-20*p1-1;

fori=2:

p=p1-q1*(p1-p0)/(q1-q0);

ifabs(p-p1)<

tol

用割线法求得方程的根p='

割线法迭代次数为:

p0=p1;

q0=q1;

pp=p1;

p1=p;

q1=600*(p.^4)-550*(p.^3)+200*(p.^2)-20*p-1;

~(abs(p-pp)<

次割线法迭代后没有求出方程的根'

4、%使用试位法找到方程600x^4-550x^3+200x^2-20x-1=0在区间[0.1,1]上的根,

试位法'

p=p1-q1*(p1-p0)/(q1-q0);

用试位法求得方程的根p='

试位法迭代次数为:

q=600*(p.^4)-550*(p.^3)+200*(p.^2)-20*p-1;

ifq*q1<

p0=p1;

q0=q1;

q1=q;

次试位法迭代后没有求出方程的根'

5、%使用muller方法找到方程600x^4-550x^3+200x^2-20x-1=0在区间[0.1,1]上的根,

muller法'

x0=0.1;

x1=0.2;

x2=0.25;

h1=x1-x0;

h2=x2-x1;

d1=((600*(x1.^4)-550*(x1.^3)+200*(x1.^2)-20*x1-1)-(600*(x0.^4)-550*(x0.^3)+200*(x0.^2)-20*x0-1))/h1;

d2=((600*(x2.^4)-550*(x2.^3)+200*(x2.^2)-20*x2-1)-(600*(x1.^4)-550*(x1.^3)+200*(x1.^2)-20*x1-1))/h2;

d=(d2-d1)/(h2+h1);

fori=3:

b=d2+h2*d;

D=(b*b-4*(600*(x2.^4)-550*(x2.^3)+200*(x2.^2)-20*x2-1)*d)^0.5;

if(abs(d-D)<

abs(d+D))

E=b+D;

elseE=b-D;

h=-2*(600*(x2.^4)-550*(x2.^3)+200*(x2.^2)-20*x2-1)/E;

p=x2+h;

ifabs(h)<

用muller方法求得方程的根p='

muller方法迭代次数为:

x0=x1;

x1=x2;

x2=p;

h1=x1-x0;

h2=x2-x1;

d1=((600*(x1.^4)-550*(x1.^3)+200*(x1.^2)-20*x1-1)-(600*(x0.^4)-550*(x0.^3)+200*(x0.^2)-20*x0-1))/h1;

d2=((600*(x2.^4)-550*(x2.^3)+200*(x2.^2)-20*x2-1)-(600*(x1.^4)-550*(x1.^3)+200*(x1.^2)-20*x1-1))/h2;

d=(d2-d1)/(h2+h1);

ifi==n0%条件有待商榷?

次muller方法迭代后没有求出方程的根'

1、%观察Lagrange插值的Runge现象

x=-1:

0.05:

1;

y=1./(1+25.*x.*x);

plot(x,y),gridon;

n=5;

2/n:

n+1

q(1,i)=y(i);

h=0.05;

z=-1:

h:

fork=1:

2/h+1

fori=2:

forj=2:

i

q(j,i)=((z(k)-x(i-j+1))*q(j-1,i)-(z(k)-x(i))*q(j-1,i-1))/(x(i)-x(i-j+1));

end

w(k)=q(n+1,n+1);

holdon,plot(z,w,'

r'

),gridon;

%****n=10****

n=10;

holdon,plot(z,w,'

k'

legend('

原始图'

'

n=5'

n=10'

2、%固支样条插植

%********第一段********

x=[1,2,5,6,7,8,10,13,17];

a=[3,3.7,3.9,4.2,5.7,6.6,7.1,6.7,4.5];

n=numel(a);

n-1

h(i)=x(i+1)-x(i);

A=[2*h

(1),h

(1),0,0,0,0,0,0,0;

h

(1),2*(h

(1)+h

(2)),h

(2),0,0,0,0,0,0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 表格类模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1