用matlab计算椭圆周长及牛顿迭代的matlab实现

用matlab计算椭圆周长及牛顿迭代的matlab实现

ID:14478900

大小:138.00 KB

页数:5页

时间:2018-07-28

用matlab计算椭圆周长及牛顿迭代的matlab实现_第1页
用matlab计算椭圆周长及牛顿迭代的matlab实现_第2页
用matlab计算椭圆周长及牛顿迭代的matlab实现_第3页
用matlab计算椭圆周长及牛顿迭代的matlab实现_第4页
用matlab计算椭圆周长及牛顿迭代的matlab实现_第5页
资源描述:

《用matlab计算椭圆周长及牛顿迭代的matlab实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、用MATLAB计算椭圆周长及牛顿迭代的MATLAB实现实验目的与要求一、实验方案:用二分法和牛顿迭代法(包括弦截法)编程求方程的实根,要求误差不超过。输出迭代次数,初始值和根的近似值;构造不同的迭代函数,用迭代法求解,并进行比较。编写M文件绘制该函数图形,源程序如下:functiony=EX0111x=-1:0.1:2;y=sin(x)-(x.^2)/2;plot(x,y,'r')holdonplot(x,zeros(size(x)))holdoffgrid运行后可以看出,函数的根在区间[1,1.5]。所以,分析题意,编写二分法源程序如下:functiony=EX0110sy

2、msxy;y=sin(x)-(x.^2)/2;a=1;b=1.5;delta=0.0001;ya=subs(y,a);yb=subs(y,b);N=1+round((log(b-a)-log(delta))/log(2));fork=1:Ndx=yb*(b-a)/(yb-ya+eps);c=b-dx;ab=b-a;yc=subs(y,c);ifyc==0,break;elseifya*yc<0b=c;yb=yc;elsea=c;ya=yc;enddd=min(abs(ab),abs(yc));ifdd

3、源程序如下:functiony=fun(x)y=sin(x)-(x.^2)/2;和该函数导数:functiony=dfun(x)y=cos(x)-x;以及牛顿迭代法:function[xk,k]=newtoneq(x0,n,derta)k=1;xk(1)=x0;t=x0-fun(x0)./dfun(x0);whileabs(t-x0)>=dertax0=t;k=k+1;xk(k)=t;t=x0-fun(x0)./dfun(x0);if(k-1)>nerror('nisfull'),endend构造新的迭代函数为,编辑源程序如下:functiony=iter()symsxy;y

4、=sqrt(2*sin(x));x0=1;max=20;derta=0.0001;t=[x0];x=subs(y,x0);k=0;whileabs(x-x0)>=dertat=[t,x];x0=x;x=subs(y,x0);k=k+1;ifk>maxdisp('迭代次数超过最大次数。')breakendendt一、实验结果和数据处理运行绘制函数图形源文件得如下图像,从图像中可看出,该函数的根所在的区间为[1,1.5]。图1运行运用二分法编程的源程序得如下数据:图2运行运用牛顿迭代法编程的源程序,在命令框中输入如下命令:[xk,k]=newtoneq(1,20,0.0001)运

5、行得出以下数据:图3三、实验目的与要求:已知椭圆的周长可以表示成(),取a=1。针对从0.1到0.9(步长h=0.1)分别求出周长s。(用Romberg积分方法)四、实验方案:编辑实现Romberg积分方法的源程序,得如下M文件:function[s,n,t]=rombint(fun,a,b,tol)formatlongs=10000;s0=0;k=2;t(1,1)=(b-a)*(fun(a)+fun(b))/2;while(abs(s-s0)>tol)h=(b-a)/2^(k-1);w=0;if(h~=0)fori=1:(2^(k-1)-1)w=w+fun(a+i*h);e

6、ndt(k,1)=h*(fun(a)/2+w+fun(b)/2);forl=2:kfori=1;(k-l+1)t(i,l)=(4^(l-1)*t(i+1,l-1)-t(i,l-1))/(4^(l-1)-1);endends=t(1,k);s0=t(1,k-1);k=k+1;n=k-1;elses=s0n=-k;endend并在运行时,依次在命令框中输入如下命令:fun=inline('sqrt(1+^2*cos(t).^2)','t');s=rombint(fun,0,2*pi,1e-6)其中,依次取值为0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9进

7、行运算。三、实验结果和数据处理运算结果如下:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。