数值计算方法matlab程序.doc

数值计算方法matlab程序.doc

ID:53584552

大小:83.50 KB

页数:16页

时间:2020-04-04

数值计算方法matlab程序.doc_第1页
数值计算方法matlab程序.doc_第2页
数值计算方法matlab程序.doc_第3页
数值计算方法matlab程序.doc_第4页
数值计算方法matlab程序.doc_第5页
资源描述:

《数值计算方法matlab程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数值计算方法matlab程序二分法function[x0,k]=bisect1(fun1,a,b,ep)ifnargin<4ep=1e-5;endfa=feval(fun1,a);fb=feval(fun1,b);iffa*fb>0x0=[fa,fb];k=0;return;endk=1;whileabs(b-a)/2>epx=(a+b)/2;fx=feval(fun1,x);iffx*fa<0b=x;fb=fx;elsea=x;fa=fx;k=k+1;endendx0=(a+b)/2;>>fun1=inline('x^3-x-1');>>[x0

2、,k]=bisect1(fun1,1.3,1.4,1e-4)x0=1.3247k=7>>简单迭代法function[x0,k]=iterate1(fun1,x0,ep,N)ifnargin<4N=500;endifnargin<3ep=1e-5;endx=x0;x0=x+2*ep;数值计算方法matlab程序k=0;whileabs(x-x0)>ep&k>fun1=inline('(x+1)^(1/3)');>>[

3、x0,k]=iterate1(fun1,1.5)x0=1.3247k=7>>fun1=inline('x^3-1');>>[x0,k]=iterate1(fun1,1.5)x0=Infk=9>>Steffesen加速迭代(简单迭代法的加速)function[x0,k]=steffesen1(fun1,x0,ep,N)ifnargin<4N=500;endifnargin<3ep=1e-5;endx=x0;x0=x+2*ep;k=0;whileabs(x-x0)>ep&k

4、;x=x0-(y-x0)^2/(z-2*y+x0);k=k+1;endx0=x;ifk==N数值计算方法matlab程序warning('已达最大迭代次数')end>>fun1=inline('(x+1)^(1/3)');>>[x0,k]=steffesen1(fun1,1.5)x0=1.3247k=3>>fun1=inline('x^3-1');>>[x0,k]=steffesen1(fun1,1.5)x0=1.3247k=6Newton迭代function[x0,k]=Newton7(fname,dfname,x0,ep,N)ifnargin

5、<5N=500;endifnargin<4ep=1e-5;endx=x0;x0=x+2*ep;k=0;whileabs(x-x0)>ep&k>fname=inline('x-cos(x)');>>dfname=inline('1+sin(x)');>>[x0,k]=Newton7(fname,dfname,pi/4,1e-8)x0=0.7391k=4数值计算方法matlab

6、程序非线性方程求根的Matlab函数调用举例:1.求多项式的根:求f(x)=x^3-x-1=0的根:>>roots([10-1-1])ans=1.3247-0.6624+0.5623i-0.6624-0.5623i2.求一般函数的根>>fun=inline('x*sin(x^2-x-1)','x')fun=Inlinefunction:fun(x)=x*sin(x^2-x-1)>>fplot(fun,[-20.1]);gridon>>x=fzero(fun,[-2,-1])x=-1.5956>>x=fzero(fun,[-1-0.1])x=-0.

7、6180[x,f,h]=fsolve(fun,-1.6)x=-1.5956f=数值计算方法matlab程序1.4909e-009h=1(h>0表示收敛,h<0表示发散,h=0表示已达到设定的计算函数值的最大次数)第三章:线性方程组的数值解法1.高斯消元法function[A,x]=gauss3(A,b)%本算法用顺序高斯消元法求解线性方程组n=length(b);A=[A,b];fork=1:n-1A((k+1):n,(k+1):(n+1))=A((k+1):n,(k+1):(n+1))-A((k+1):n,k)/A(k,k)*A(k,(k+1)

8、:(n+1));A((k+1):n,k)=zeros(n-k,1);A;endx=zeros(n,1);%上面为消元过程x(n)=A(n

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

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

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