ch2 Matlab矩阵及生成及操作.pptVIP

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

* * * * * * * * * * * * * * * Matlab矩阵的生成与操作 安徽工业大学数理学院 侯为根 wghou@ahut.edu.cn 【例1-1】表示矩阵 一、MATLAB矩阵的生成 1、直接输入法 将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。 A=[1,2,3;4,5,6;7,8,0] A=[1,2,3;4 5,6;7,8 0] 【例1-2】 试输入复数矩阵 需要避免的语句 B=[1+9*i,2+8*i,3+7*j; 4+6*j 5+5*i,6+4*i;7+3*i,8+2*i,i] B=[1 +9*i,2+8*i,3+7*j; 4+6*j 5+5*i,6+4*i;7+3*i,8+2*i,i] 2、利用M文件建立矩阵 对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。 【例1-3】利用M文件建立mymat矩阵。 (1) 启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵. (2) 把输入的内容以纯文本方式存盘(设文件名为mymat.m)。 (3) 运行该M文件,就会自动建立一个名为mymat的矩阵,可供以后使用。 A=[4 10 1 6 2;8 2 9 4 7; 7 5 7 1 5;0 3 4 5 4;23 13 13 0 3] 3、利用MATLAB函数建立矩阵 几个产生特殊矩阵的函数:zeros、ones、 eye、rand、randn、pascal、 magic(n)、 vander(V)、 hilb(n) 、 toeplitz(x,y)、compan(P) 。 这几个函数的调用格式相似,下面以产生零矩阵的zeros函数为例进行说明。其调用格式是: zeros(m) 产生m×m零矩阵 zeros(m,n) 产生m×n零矩阵。 zeros(size(A)) 产生与矩阵A同样大小的零矩阵 相关的函数有:length(A)给出行数和列数中的较大者,即length(A)=max(size(A));ndims(A)给出A的维数。 指令 说 明 zeros(m,n) 产生阶为 m×n, 元素全为0的矩阵 ones(m,n) 产生阶为 m×n, 元素全为1的矩阵 eye(n) 产生阶为 n×n的单位阵 pascal(m,n) 产生阶为 m×n 的 Pascal 矩阵 vander(m,n) 产生阶为 m×n 的 Vandermonde 矩阵 hilb(n) 产生阶为 n×n 的 Hilbert 矩阵 rand(m,n) 产生 [0,1]均匀分布的随机数矩阵,其阶为 m×n randn(m,n) 产生μ=0,? =1的正态分布随机数矩阵,其阶为 m×n magic(n) 产生阶为n×n的魔方阵 diag(v) 产生以向量v为对角元素的对角阵 【例1-4】 分别建立3×3、3×2和与矩阵A同样大小的零矩阵。 (1) 建立一个3×3零矩阵:zeros(3) (2) 建立一个3×2零矩阵:zeros(3,2) (3) 建立与矩阵A同样大小零矩阵:zeros(size(A)) 此外,常用的函数还有reshape(A,m,n),它在矩阵总元素保持不变的前提下,将矩阵A重新排成m×n的二维矩阵。 【例1-5】 将4阶魔方阵形变为2行8列的矩阵 reshaps(magic(4),2,8) hilb(n)指令可以产生n×n的 Hilbert 矩阵 Hilbert矩阵 Hilbert 矩阵的特性: 当矩阵变大时,其矩阵会接近奇异(即矩阵的行列式会接近于0),Hilbert矩阵常被用来评估各种逆矩阵计算方法的稳定性。 【例1-6】 计算6阶hilbert矩阵的行列式 det(hilb(6)) x1 = rand(10000, 1); x2 = randn(10000, 1); subplot(2,1,1); hist(x1, 40); title(均匀分布); subplot(2,1,2); hist(x2, 40); title(高斯分布); set(findobj(gcf, type, patch),EdgeColor, w); % 改边线为白色 【例1-7】产生10000个均匀均匀与正态分布的随机数 产生随机数矩阵指令rand 和 randn 4、建立大矩阵 大矩阵可由方括号中的小矩阵建立起来。 A=[1 2 3;4 5 6;7 8 0]; 5、冒号表达式 冒号表达式的一般格式:v=s1:s2:s3 还可以用linspace函数产生行向量:linspace(a,b,n) linspace(a,b,n)与a:(b-a)/(n-1):b

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档