ch3 数值数组及向量化运算[精].docVIP

  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文档。上传文档
查看更多
ch3 数值数组及向量化运算[精]

数值数组及向量化运算 MATLAB的核心内容:数值数组和数组运算 数值计算的特点和地位 符号计算的局限性:有很多问题1)无法解,2)求解时间过长 数值计算:适用范围广,能处理各种复杂的函数关系,计算速度快,容量大。 【例3.1-1】已知,求。 (1)符号计算解法 syms t x ft=t^2*cos(t) sx=int(ft,t,0,x) ezplot(sx,0,5) hold on (2)数值计算解法 dt=0.05; t=0:dt:5; Ft=t.^2.*cos(t); Sx=dt*cumtrapz(Ft); % 小梯形面积的累加求Ft曲线下的面积,由一个个宽度为dt的小梯形面积累加得到的 t(end-4:end) % end指示最后一个元素的位置 Sx(end-4:end) plot(t,Sx,.k,MarkerSize,12) xlabel(x),ylabel(Sx),grid on 图 3.1-1 在区间[0, 5]采样点上算得的定积分值 【例3.1-2】已知,求。 (1)符号计算解法 无解 syms t x ft=exp(-sin(t)) sx=int(ft,t,0,4) (2)数值计算解法 dt=0.05; t=0:dt:4; Ft=exp(-sin(t)); Sx=dt*cumtrapz(Ft); Sx(end) plot(t,Ft,*r,MarkerSize,4) hold on plot(t,Sx,.k,MarkerSize,15) hold off xlabel(x) legend(Ft,Sx) 数值数组的创建和寻访 一维数组的创建 x=[1,3,5,7,9] 逐个元素输入法 x=a:inc:b 步长生成法,inc缺省时步长为1 x=linspace(a,b,n) 线性采样法 ,以a,b为左右端点,产生1*n行数组 x=logspace(a,b,n) 对数采样法,以a,b为左右端点,产生1*n行数组 运用diag, eye等标准数组生成函数。 【例3.2-1】一维数组的常用创建方法举例。 a1=1:6 a2=0:pi/4:pi a3=1:-0.1:0 b1=linspace(0,pi,4) b2=logspace(0,3,4) %创建数组[100 101 102 103] c1=[2 pi/2 sqrt(3) 3+5i] 二维数组的创建 小规模数组的直接输入法 【例3.2-2】在MATLAB环境下,用下面三条指令创建二维数组C。 a=2.7358; b=33/79; C=[1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+i] 三个要素:整个输入数组 “[ ]” 行与行间 “;”或“Enter” 同行中元素间 “,”或“空格” 中规模数组的数组编辑器创建法 【例3.2-3】根据现有数据创建一个的数组。 图3.2-1 利用数组编辑器创建中规模数组 中规模数组的M文件创建法 【例3.2-4】创建和保存数组 AM的 MyMatrix.m 文件。 打开文件编辑调试器,并在空白填写框中输入所需数组(见图3.2-2)。 最好,在文件的首行,编写文件名和简短说明,以便查阅(见图3.2-2)。 保存此文件,并且文件起名为 MyMatrix.m 。 以后只要在MATLAB指令窗中,运行 MyMatrix.m文件 ,数组 AM 就会自动生成于 MATLAB内存中。 图3.2-2 利用M文件创建数组 利用MATLAB函数创建数组 【例3.2-5】利用最常用标准数组生成函数产生标准数组的演示。 ones(2,4) %产生(2×4)全1数组 randn(state,0) %把正态随机数发生器置0 randn(2,3) %产生正态随机阵 D=eye(3) %产生3×3的单位阵 diag(D) %取D阵的对角元 diag(diag(D)) %外diag利用一维数组生成对角阵 randsrc(3,20,[-3,-1,

文档评论(0)

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

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档