数据分析_MATLAB相关算法.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据分析_MATLAB相关算法

数据分析-MATLAB相关算法 ?一.非线性方程求解 1.二分法 m文件: function[c,err,yc]=bisect(f,a,b,delta) %f是所要求解的函数 %a,b是区间的左右限 %delta是误差界 %c是近似解 %yc是函数f在c上的值,err为误差 if nargin4 ??? delta=1e-5; end ya=feval(f,a); yb=feval(f,b); if yb==0 ??? c=b,return,end if ya*yb0, ??? disp((a,b)不是有根区间);?? ???????????????????????????? ??? return,end max1=1+round((log(b-a)-log(delta))/log(2)); for k=1:max1 ????c=(a+b)/2; ??? yc=feval(f,c); ????if yc==0 ??????? a=c; ??????? b=c; ??????? break, ??? elseif yb*yc0 ??????? b=c; ??????? yb=yc; ??? else ??????? a=c; ??????? ya=c; ??? end ??? if (b-a)delta ??????? break, ??? end ??? k,c=(a+b)/2,err=abs(b-a),yc=feval(f,c); end 2.不动点迭代 m文件 function[p0,k,err,p]=fixpt(g,p0,tol.max1) %g是给定的迭代函数 %p0是初值 %p是不动点的近似值 P(1)=p0; for k=2:max1 ??? P(k)=feval(g,P(k-1)); ????k,err=abs(P(k)-P(k-1)) ????p=P(k); ??? if (errtol) ??????? break;end ??? if k==max1 ??????? disp(超过了迭代最大次数; ??? end end P 选定的迭代函数: function y=g(x) y=sin(x)/x; 二.方阵的特征值与特征向量 1幂法 function [m xbiaozhi]=mifa(A,jingdu,cishu) %幂法求矩阵最大特征值,其中 %m为绝对值最大的特征值,x为对应最大特征值的特征向量 %biaozhi表明迭代是否成功 if nargin3 ??? cishu=100; end if nargin2 ??? jingdu=1e-5; end n=length(A); x=ones(n,1); biaozhi=迭代失败!; k=0;m1=0; while k=cishu ??? v=A*x; ??? [vmax,k]=max(abs(v)); ??? m=v(k); ??? x=v/m; ??? if abs(m-m1)jingdu ??????? biaozhi=迭代成功!;break; ????end ??? m1=m; ??? k=k+1; end 三.常微分方程求解 1.改进欧拉法解微分方程 function yout=gaijinoula(f,x0,y0,xn,n) %定义输入输出 x=zeros(1,n+1);y=zeros(1,n+1); x(1)=x0;y(1)=y0; h=(xn-x0)/n; for i=1:n ??? x(i+1)=x(i)+h; ????z0=y(i)+h*feval(f,x(i),y(i)); ???y(i+1)=y(i)+(feval(f,x(i),y(i))+feval(f,x(i+1),z0))*h/2; ??? end ? shuchu=[x,y] fprintf( x(i)?? y(i)) ? 举例: 所要求解的函数: function Dy=f(x,y) Dy=x+y; 2.四阶龙格库塔法解微分方程 functionyout=xin(bianliang) %定义输入输出 clear all x0=0;xn=1;y0=1;h=0.1; %设置初始值、区间和步长 [y,x]=lgkt4j(x0,xn,y0,h); %四阶龙格库塔法 n=length(x); fprintf( i?? x(i)??y(i)\n); %输出格式 for i=1:n ??? fprintf(%2d %3.3f %4.4f\n,i,x(i),y(i)); end ? function[y,x]=lgkt4j(x0,xn,y0,h) x=x0:h:xn; %设置区间 n=length(x); y1=x; y1(1)=y0; for i=1:n ??? K1=f(x(i)

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档