ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:37.47KB ,
资源ID:7668166      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7668166.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(matlab使用法.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

matlab使用法.docx

1、matlab使用法二分法function x0,k=bisect1(fun1,a,b,ep)if nargin0 x0=fa,fb; k=0; return;endk=1;while abs(b-a)/2ep x=(a+b)/2; fx=feval(fun1,x); if fx*fa fun1=inline(x3-x-1); x0,k=bisect1(fun1,1.3,1.4,1e-4)x0 = 1.3247k = 7简单迭代法function x0,k=iterate1(fun1,x0,ep,N)if nargin4 N=500;endif narginep & k fun1=inline(

2、x+1)(1/3); x0,k=iterate1(fun1,1.5)x0 = 1.3247k = 7 fun1=inline(x3-1); x0,k=iterate1(fun1,1.5)x0 = Infk = 9Steffesen加速迭代(简单迭代法的加速)function x0,k=steffesen1(fun1,x0,ep,N)if nargin4 N=500;endif narginep & k fun1=inline(x+1)(1/3); x0,k=steffesen1(fun1,1.5)x0 = 1.3247k = 3 fun1=inline(x3-1); x0,k=steffese

3、n1(fun1,1.5)x0 = 1.3247k = 6Newton迭代function x0,k=Newton7(fname,dfname,x0,ep,N)if nargin5 N=500;endif narginep & 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函数调用举例:1.求多项式的根: 求f(x)=x3-x-1=0的根: roots(1 0 -1 -1)ans = 1.3247 -0.6624 +

4、 0.5623i -0.6624 - 0.5623i2.求一般函数的根 fun=inline(x*sin(x2-x-1),x)fun = Inline function: fun(x) = x*sin(x2-x-1) fplot(fun,-2 0.1);grid on x=fzero(fun,-2,-1)x = -1.5956 x=fzero(fun,-1 -0.1)x = -0.6180x,f,h=fsolve(fun,-1.6)x = -1.5956f = 1.4909e-009h = 1(h0表示收敛,h A=2 3 4;3 5 2;4 3 30; b=6,5,32b = 6 5 32

5、A,x=gauss3(A,b)A = 2.0000 3.0000 4.0000 6.0000 0 0.5000 -4.0000 -4.0000 0 0 -2.0000 -4.0000x = -13 8 2列选主元的高斯消元法:function A,x=gauss5(A,b)%本算法用列选主元的高斯消元法求解线性方程组n=length(b);A=A,b;for k=1:n-1 %选主元 ap,p=max(abs(A(k:n,k); p=p+k-1; if pk t=A(k,:); A(k,:)=A(p,:); A(p,:)=t; end %消元 A(k+1):n,(k+1):(n+1)=A(k+

6、1):n,(k+1):(n+1)-A(k+1):n,k)/A(k,k)*A(k,(k+1):(n+1); A(k+1):n,k)=zeros(n-k,1); end%回代 x=zeros(n,1); x(n)=A(n,n+1)/A(n,n); for k=n-1:-1:1 x(k)=(A(k,n+1)-A(k,(k+1):n)*x(sk+1:n)/A(k,k);end A=2 3 4;3 5 2;4 3 30; b=6,5,32; A,x=gauss5(A,b)A = 4.0000 3.0000 30.0000 32.0000 0 2.7500 -20.5000 -19.0000 0 0 0.

7、1818 0.3636x = -13 8 2三角分解法:Doolittle 分解function L,U=doolittle1(A)n=length(A);U=zeros(n);L=eye(n);U(1,:)=A(1,:);L(2:n,1)=A(2:n,1)/U(1,1);for k=2:n U(k,k:n)=A(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n); L(k+1:n,k)=A(k+1:n,k)-L(k+1:n,1:k-1)*U(1:k-1,n)/U(k,k);Endy=zeros(n,1);x=y;y(1)=b(1);for i=2:n y(i)=b(i)-L(i,1

8、:i-1)*y(1:i-1);endx(n)=y(n)/U(n,n);for i=n-1:-1:1 x(i)=(y(i)-U(i,i+1:n)*x(i+1:n)/U(i,i);end A=1 2 3;2 5 2 ;3 1 5;b=14 18 20; L,U,x=doolittle1(A,b)L = 1 0 0 2 1 0 3 -8 1U = 1 2 3 0 1 -4 0 0 -36x = 2.8333 1.33332.8333 平方根法:function L,x=choesky3(A,b)n=length(A);L=zeros(n);L(:,1)=A(:,1)/sqrt(A(1,1);for

9、k=2:n L(k,k)=A(k,k)-L(k,1:k-1)*L(k,1:k-1); L(k,k)=sqrt(L(k,k); for i=k+1:n L(i,k)=(A(i,k)-L(i,1:k-1)*L(k,1:k-1)/L(k,k); endend y=zeros(n,1);x=y;y(1)=b(1)/L(1,1);for i=2:n y(i)=(b(i)-L(i,1:i-1)*y(1:i-1)/L(i,i);endx(n)=y(n)/L(n,n);for i=n-1:-1:1 x(i)=(y(i)-L(i+1:n,i)*x(i+1:n)/L(i,i);end A=4 -1 1;-1 4.

10、25 2.75;1 2.75 3.5A = 4.0000 -1.0000 1.0000 -1.0000 4.2500 2.7500 1.0000 2.7500 3.5000 b=4 6 7.25b = 4.0000 6.0000 7.2500L,x=choesky3(A,b)L = 2.0000 0 0 -0.5000 2.0000 0 0.5000 1.5000 1.0000x = 1 1 1迭代法求方程组的解Jacobi迭代法:function x,k=jacobi2(a,b,x0,ep,N)%本算法用Jacobi迭代求解ax=b,用分量形式n=length(b);k=0;if nargi

11、n5 N=500;endif nargin4 ep=1e-5;endif narginep & kN k=k+1; x0=x; for i=1:n y(i)=b(i); for j=1:n if j=i y(i)=y(i)-a(i,j)*x0(j); end end if abs(a(i,i)1e-10|k=N warning(a(i,i) is too small); return end y(i)=y(i)/a(i,i); end x=y; enda=4 3 0;3 4 -1; 0 -1 4;b=24 30 -24;x,k=jacobi2(a,b)x = 3.0000 4.0000 -5.

12、0000k =59Gauss-seidel迭代法:function x,k=gaussseide2(a,b,x0,ep,N)%本算法用Gauss-seidel迭代求解ax=b,用分量形式n=length(b);k=0;if nargin5 N=500;endif nargin4 ep=1e-5;endif narginep & kN k=k+1; x0=x; y=x; for i=1:n z(i)=b(i); for j=1:n if j=i z(i)=z(i)-a(i,j)*x(j); end end if abs(a(i,i) u,v=sort(-abs(diag(a)u = -1.190

13、9 -0.4326 -0.1867 -0.1139v = 2 1 3 4A=a(v,v)A = 1.1909 -1.6656 0.1746 2.1832 -1.1465 -0.4326 0.3273 -0.5883 1.1892 0.1253 -0.1867 -0.1364 -0.0376 0.2877 0.7258 0.1139求二次多项式的根,避免上下溢,避免两个数相加或者相减接近0function x flag=root2qe(a,b,c)if nargin=1 c=a(3);b=a(2);a=a(1);endif a=0 M=max(abs(a,b,c); a=a/M;b=b/M;c=

14、c/M; s=sign(b); if s=0 s=1; end x1=(-b-s*sqrt(b2-4*a*c)/(2*a); x2=c/(a*x1); x=x1 x2; flag=two solutions;elseif b=0 x=-c/b; flag=one solution;elseif c=0 x= ; flag=no solutionelse x=1; flag=all x are solutions;end x flag=root2qe(6,10,-4)x = -2.0000 0.3333flag =two solutions x flag=root2qe(6e+154,10e+1

15、54,-4e+154)x = -2.0000 0.3333flag =two solutions x flag=root2qe(0,1,1)x = -1flag =one solution x flag=root2qe(1,-1e+5,1)x = 1.0e+004 * 10.0000 0.0000flag =two solutions计算如下的递推数列:x1=1/3; x2=1/12; x(k+1)=2.25*x(k)-0.5*x(k-1); 可以证明, xk=4(1-k)/3; 是一个单调递减数列,但是计算数据如下:function ex2x(1)=1/3;x(2)=1/12;for k=3

16、:60 x(k)=2.25*x(k-1)-0.5*x(k-2);endplot(x(1:60)想想是什么原因导致这种现象?找出函数y=arctan(x)在区间【1,6】的11个等分点,做10次插值多项式。打印出Newton形式的系数,在同一个图上作出在区间【0,8】的33个等分点上插值多项式的值与y=arctan(x)的值,由此得出什么结论?function ex3n=11;x=linspace(1,6,n);h=(6-1)/(n-1);y=atan(x);for j=2:n y(1:n+1-j,j)=diff(y(1:n+2-j,j-1)/(j-1)*h);endy=y(1,:);forma

17、t long efprintf(n the coefficients of Newton interpolation is :nn);fprintf(%12.9f,y);pz=;v=linspace(0,8,33);for t=v, z=y(n); for j=n-1:-1:1 z=z*(t-x(j)+y(j); end pz=pz z;endplot(v,pz,g*-,v,atan(v),b+:);fprintf(n xi, p(xi), atan(xi), errorn);for j=1:length(v) fprintf(%12.6f%12.6f%12.6f%12.6f,. v(j),pz(j),atan(v(j),abs(pz(j)-atan(v(j);end (注:可编辑下载,若有不当之处,请指正,谢谢!)

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

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