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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

matlab第二讲矩阵的输入与生成.docx

1、matlab第二讲矩阵的输入与生成第二讲 矩阵的输入与生成2.1 矩阵的创建2.2 数组的生成2.3 数组的应用矩阵的裁剪2.4 矩阵的生成2.1 矩阵的创建1、直接输入例1: a=1 2 3;4 5 6a = 1 2 3 4 5 6注:1.必须使用方括号将所有元素括起来; 2.行与行之间用分号或回车符分隔; 3.同行元素用空格或逗号分隔; 4.该方法只适合创建小型矩阵。2、通过函数创建矩阵对于一些特殊矩阵,可利用Matlab的函数运算创建。例2:x=0,pi/6,pi/3;pi/2,2*pi/3,5*pi/6; y=sin(x)y = 0 0.5000 0.8660 1.0000 0.866

2、0 0.50003、导入数据创建矩阵 通过其他途径得到的数据(例如实验中测得的数据)可以使用数据导入向导(Import Wizard)调入Matlab的工作空间。(load,xlaread都是导入数据的命令)2.2数组的生成Matlab中的数组在外观上与矩阵毫无差别,也就是说矩阵的输入方法可以直接移植到数组的输入上。同样,下述关于数组的生成方法也可以用来生成矩阵。Matlab中数组与矩阵的差别完全在于运算规则上。1、 i:j:k创建从i开始,步长为j,到k结束的数字序列,即i,i+j,i+2j,k。数字i、j和k不必是整数,该序列的最后一个数是小于或等于k。如果j=1,则可简写为i:k。如果j

3、=0,则返回一个空矩阵。如果j0且ki,则返回一个空矩阵。如果ji,则返回一个空矩阵。例3: 2:5ans = 2 3 4 5 2.1:1.1:5.3ans = 2.1000 3.2000 4.3000 1:-1:-4ans = 1 0 -1 -2 -3 -4 1:-1:4ans = Empty matrix: 1-by-02、 linspace(a,b,n)在区间a,b上创建一个有n个元素的向量,这n个数把整个区间线性分隔,即把区间a,b等分为n-1个小区间,取其n个节点。n=100时可简写为linspace(a,b)。这个命令和冒号表示形式相近,但是它直接定义了数据的个数。例3: a=li

4、nspace(0,6,6)a = 0 1.2000 2.4000 3.6000 4.8000 6.0000注:以上关于数组生成的命令经常用于作图,如: x=linspace(0,pi); %生成数组 y=sin(x); %计算函数 plot(x,y); %作图2.3 数组的应用矩阵的裁剪A(行数组,列数组)取出矩阵A中行数组指定的行,列数组指定的列元素按原次序排列组成的矩阵。具体用法如下:A(i,j)返回矩阵A中下(i,j)的元素值。A(:,j) 返回矩阵A中第j列列向量。A(i,:) 返回矩阵A中第i行行向量。A(:,j:k) 返回由矩阵A中的第j列,第j+1列,直到第k列列向量组成的子阵。

5、A(i:k,:) 返回由矩阵A中的第i行,第i+1行,直到第k行行向量组成的子阵。A(i:k,j:l) 返回由矩阵A中的第i行到第k行行向量和第j列到第l列列向量组成的子阵。A(:,j1 j2) 返回矩阵A的第j1列、第j2列等的列向量。A(i1 i2 ,:) 返回矩阵A的第i1行、第i2行等的行向量。A(i1 i2.,j1 j2.) 返回矩阵第i1行、第i2行等和第j1列、第j2列等的元素。例4: A=magic(5)A =17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 A(2,3)ans =7 A(2,:)

6、ans =23 5 7 14 16 A(:,3)ans =1 7 13 19 25 A(1:3,:)ans =17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 A(:,3:5)ans =1 8 15 7 14 16 13 20 22 19 21 3 25 2 9 A(1:3,3:5)ans =1 8 15 7 14 16 13 20 22 A(2 4,:)ans =23 5 7 14 16 10 12 19 21 3 A(:,2 4)ans =24 8 5 14 6 20 12 21 18 2 A(1 3 5,2 4)ans =24 8 6 20 18 2A(:)

7、将矩阵A中的每列合并成一个长的列向量。A(j:k) 返回一个行向量,其中的元素为A(:)中的从第j个元素到第k个元素。A(j1 j2 ) 返回一个行向量,其中的元素为A ( : )中的第j1、j2元素。例5: A=magic(3)A = 8 1 6 3 5 7 4 9 2 A(:)ans =8 3 4 1 5 9 6 7 2 A(2:5)ans =3 4 1 5 A(1 3 5 7 9)ans =8 4 5 6 22.4 矩阵的生成ones(n) 建立一个nxn的1矩阵。ones(m,n) 建立一个mxn的1矩阵。ones(size( A ) 建立一个和矩阵A同样大小的1矩阵。例6: a=on

8、es(3,4)a = 1 1 1 1 1 1 1 1 1 1 1 1zeros(n) 建立一个nxn的0矩阵。zeros(m,n) 建立一个mxn的0矩阵。zeros(size(A)建立一个和矩阵A同样大小的0矩阵。例7: a=zeros(3)a = 0 0 0 0 0 0 0 0 0eye(n) 建立一个nxn 的单位矩阵。注意eye命令只能用来建立二维矩阵。eye(m,n) 建立一个mxn 的单位矩阵。注意e y e命令只能用来建立二维矩阵。eye(size(A) 建立一个和矩阵A同样大小的单位矩阵。例8: a=eye(3)a = 1 0 0 0 1 0 0 0 1 b=eye(3,4)b

9、 = 1 0 0 0 0 1 0 0 0 0 1 0 b=eye(4,3)b = 1 0 0 0 1 0 0 0 1 0 0 0rand 产生在01之间均匀分布的随机数;每调用一次给一个新的数值。rand(n) 产生一个nxn的矩阵,其元素为01之间均匀分布随机数。rand(m,n) 产生一个mxn的矩阵,其元素是01之间均匀分布的随机数。 例9: rand(3)ans = 0.4565 0.4447 0.9218 0.0185 0.6154 0.7382 0.8214 0.7919 0.1763randn 产生零均值、单位方差的正态分布随机数。randn(n) 产生一个nn的矩阵,其元素为零

10、均值、单位方差的正态分布随机数。randn(m,n) 产生一个mn的矩阵,其元素为零均值、单位方差的正态分布随机数。例10: randn(3,5)ans = -0.4326 0.2877 1.1892 0.1746 -0.5883 -1.6656 -1.1465 -0.0376 -0.1867 2.1832 0.1253 1.1909 0.3273 0.7258 -0.1364diag(A) 生成一个由矩阵A主对角线元素组成的列向量。主对角线总是从矩阵左上角开始。对于方阵来说它结束于矩阵的右下角。diag(x) 生成一个n维的方阵,它的主对角线元素值取自向量x,其余元素的值都为0。diag(A

11、 ,k) 生成一个由矩阵A第k条对角线的元素组成的列向量。k= 0为主对角线;k 0为上第k对角线。diag(x ,k) 生成一个(n+ abs(k) )维的方阵,该矩阵的第k条对角线元素取自向量x,其余元素都为零。例11: A=magic(4)A = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 a=diag(A)a = 16 11 6 1 B=diag(a)B = 16 0 0 0 0 11 0 0 0 0 6 0 0 0 0 1 b=diag(A,1)b = 2 10 12 C=diag(b,-1)C = 0 0 0 0 2 0 0 0 0 10 0 0

12、0 0 12 0triu(A) 生成一个和A大小相同的上三角矩阵。该矩阵的主对角线及以上元素取自A中相应元素,其余元素都为零。triu(A,k) 生成一个和A大小相同的上三角矩阵。该矩阵的第k条对角线及以上元素取自A中相应元素,其余元素都为零。命令triu(A,0)等同于命令triu( A )。tril(A) 生成一个和A大小相同的下三角矩阵。该矩阵的主对角线及以下元素取自A中相应元素,其余元素都为零。tril(A,k) 生成一个和A大小相同的下三角矩阵。该矩阵的第k条对角线及以下元素取自A中相应元素,负数k表示主对角线下的对角线。其余元素都为零。命令tril(A,0)等同于命令tril(A)

13、。例12: A=magic(5)A = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 triu(A)ans = 17 24 1 8 15 0 5 7 14 16 0 0 13 20 22 0 0 0 21 3 0 0 0 0 9 tril(A,-1)ans = 0 0 0 0 0 23 0 0 0 0 4 6 0 0 0 10 12 19 0 0 11 18 25 2 0fliplr(A) 通过二维矩阵A的行元素按照B(i,j)=A(j,n-j+1)交换位置生成一个新矩阵。这里的lr是left - right

14、的缩写。flipud(A) 通过二维矩阵A的列元素按照B(i,j)=A(n-i+1,j)交换位置生成一个新矩阵。这里的ud是up - down的缩写。例13: A=magic(3)A = 8 1 6 3 5 7 4 9 2 fliplr(A)ans =6 1 8 7 5 3 2 9 4 flipud(A)ans =4 9 2 3 5 7 8 1 6rot90(A) 生成一个由矩阵A逆时针旋转90而得的新阵。rot90(A,k) 生成一个由矩阵A逆时针旋转k90而得到的新阵。例14: A=magic(3)A = 8 1 6 3 5 7 4 9 2 rot90(A)ans = 6 7 2 1 5

15、9 8 3 4hilb(n) 生成一个nn的希尔伯特矩阵。例15: format rat hilb(4)ans = 1 1/2 1/3 1/4 1/2 1/3 1/4 1/5 1/3 1/4 1/5 1/6 1/4 1/5 1/6 1/7 invhilb(n) 生成一个nn的希尔伯特矩阵的逆矩阵,其元素都为整数。例16: invhilb(4)ans = 16 -120 240 -140 -120 1200 -2700 1680 240 -2700 6480 -4200 -140 1680 -4200 2800 invhilb(4)*hilb(4)ans = 1.0000 0 0 0 0 1.0

16、000 0 0 0 0 1.0000 0 0 0 -0.0000 1.0000magic(n) 给出一个nn的魔方矩阵。(行和,列和,两条对角线和相等)例17: magic(4)ans = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1pascal(n) 返回一个nn的Pascal矩阵,它是对称、正定的矩阵,它的元素由Pascal三角(杨辉三角)组成。它的逆矩阵的所有元素是整数。例18: pascal(4)ans = 1 1 1 1 1 2 3 4 1 3 6 101 4 10 20练习 直接输入生成矩阵;取矩阵的第1、3行元素生成矩阵;将矩阵按列合成一个列向量。以为首项,为步长,为末项生成向量;计算向量的正弦值,赋值到变量;以向量为对角线生成对角矩阵。生成一个5阶希尔伯特矩阵;取矩阵的第1、3、5行,第2到4列元素生成矩阵;左右翻转矩阵得矩阵;对矩阵逆时针旋转90度得矩阵;取矩阵的主对角线向量;以向量为第-3对角线生成对角矩阵(矩阵得阶数是多少?)。

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

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