二讲矩阵的输入与生成.ppt

上传人:牧羊曲112 文档编号:5072022 上传时间:2023-06-02 格式:PPT 页数:25 大小:314.99KB
返回 下载 相关 举报
二讲矩阵的输入与生成.ppt_第1页
第1页 / 共25页
二讲矩阵的输入与生成.ppt_第2页
第2页 / 共25页
二讲矩阵的输入与生成.ppt_第3页
第3页 / 共25页
二讲矩阵的输入与生成.ppt_第4页
第4页 / 共25页
二讲矩阵的输入与生成.ppt_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《二讲矩阵的输入与生成.ppt》由会员分享,可在线阅读,更多相关《二讲矩阵的输入与生成.ppt(25页珍藏版)》请在三一办公上搜索。

1、Matlab语言程序设计,2023/6/2,2023/6/2,2,第二讲 矩阵的输入与生成,2.1 矩阵的创建2.2 数组的生成2.3 数组的应用矩阵的裁剪2.4 矩阵的生成,2023/6/2,3,2.1 矩阵的创建,直接输入矩阵通过函数创建矩阵导入数据创建矩阵,2023/6/2,4,直接输入,a=1,2,3;4,5,6;注:1.必须使用方括号 2.当一行输不完时可以用续行“”3.行与行之间用分号或回车符分隔 4.同行元素用空格或逗号分隔 5.该方法只适合创建小型矩阵,2023/6/2,5,通过函数创建矩阵,对于一些特殊矩阵,可利用Matlab的函数创建。例1:x=0,pi/6,pi/3;pi

2、/2,2*pi/3,5*pi/6;y=sin(x)y=0 0.5000 0.8660 1.0000 0.8660 0.5000,2023/6/2,6,导入数据创建矩阵,通过其他途径得到的数据(例如实验中测得的数据)可以使用数据导入向导(Import Wizard)调入Matlab的工作空间。,2023/6/2,7,2.2数组的生成,Matlab中的数组在外观上与矩阵毫无差别,也就是说矩阵的输入方法可以直接移植到数组的输入上。同样,下述关于数组的生成方法也可以用来生成矩阵。,2023/6/2,8,2.2数组的生成,i:k 创建从i开始,步长为1,到k结束的数字序列,即i,i+1,i+2,k。如果

3、ik,M AT L A B则返回一个空矩阵,也就是。数字i和k不必是整数,该序列的最后一个数是小于或等于k。i:j:k 创建从i开始,步长为j,到k结束的数字序列,即i,i+j,i+2j,k。如果j=0,则返回一个空矩阵。数字i、j和k不必是整数,该序列的最后一个数是小于或等于k。,2023/6/2,9,2.2数组的生成,linspace(a,b)在区间a,b上创建一个有1 0 0个元素的向量,这1 0 0个数把整个区间线性分隔。linspace(a,b,n)在区间a,b上创建一个有n个元素的向量。这个命令和冒号表示形式相近,但是它直接定义了数据的个数。,2023/6/2,10,2.2数组的生

4、成,logspace(a,b)在区间 上创建一个有50个元素的向量,这50个数把整个区间对数分隔。logspace(a,b,n)在区间 上创建一个有n个元素的数组,这n个数把整个区间对数分隔。,2023/6/2,11,2.2数组的生成,注:以上关于数组生成的命令经常用于作图,如:x=linspace(0,pi);%生成数组 y=sin(x);%计算函数 plot(x,y);%作图,2023/6/2,12,2.3 数组的应用矩阵的裁剪,A(i,j,k)返回多维数组A中下(i,j,k)的元素值。A(:,j)返回二维矩阵A中第j列列向量。A(i,:)返回二维矩阵A中第i行行向量。A(:,j:k)返回

5、由二维矩阵A中的第j列,第j+1列,直到第k列列向量组成的子阵。,2023/6/2,13,2.3 数组的应用矩阵的裁剪,A(i:k,:)返回由二维矩阵A中的第i行,第i+1行,直到第k行行向量组成的子阵。A(i:k,j:l)返回由二维矩阵A中的第i行到第k行行向量和第j列到第l列列向量组成的子阵。A(:)将矩阵A中的每列合并成一个长的列向量。A(j:k)返回一个行向量,其中的元素为A(:)中的从第j个元素到第k个元素。,2023/6/2,14,2.3 数组的应用矩阵的裁剪,A(j1 j2)返回一个行向量,其中的元素为A(:)中的第j1、j2元素。A(:,j1 j2)返回矩阵A的第j1列、第j2

6、列等的列向量。A(i1 i2,:)返回矩阵A的第i1行、第i2行等的行向量。A(i1 i2.,j1 j2.)返回矩阵第i1行、第i2行等和第j1列、第j2列等的元素。,2023/6/2,15,2.4 矩阵的生成,ones(n)建立一个nxn的1矩阵。ones(m,n)建立一个mxn的1矩阵。ones(size(A)建立一个和矩阵A同样大小的1矩阵。zeros(n)建立一个nxn的0矩阵。zeros(m,n)建立一个mxn的0矩阵。,2023/6/2,16,2.4 矩阵的生成,zeros(size(A)建立一个和矩阵A同样大小的0矩阵。eye(n)建立一个nxn 的单位矩阵。注意eye命令只能用

7、来建立二维矩阵。eye(m,n)建立一个mxn 的单位矩阵。注意e y e命令只能用来建立二维矩阵。eye(size(A)建立一个和矩阵A同样大小的单位矩阵。,2023/6/2,17,2.4 矩阵的生成,rand 产生在01之间均匀分布的随机数;每调用一次给一个新的数值。rand+i*rand 产生一个复数随机数。rand(n)产生一个nxn的矩阵,其元素为01之间均匀分布随机数。rand(m,n)产生一个mxn的矩阵,其元素是01之间均匀分布的随机数。,2023/6/2,18,2.4 矩阵的生成,randn 产生零均值、单位方差的正态分布随机数。randn(n)产生一个nn的矩阵,其元素为零

8、均值、单位方差的正态分布随机数。randn(m,n)产生一个mn的矩阵,其元素为零均值、单位方差的正态分布随机数。,2023/6/2,19,2.4 矩阵的生成,diag(A)生成一个由矩阵A主对角线元素组成的列向量。主对角线总是从矩阵左上角开始。对于方阵来说它结束于矩阵的右下角。diag(x)生成一个n维的方阵,它的主对角线元素值取自向量x,其余元素的值都为0。,2023/6/2,20,2.4 矩阵的生成,diag(A,k)生成一个由矩阵A第k条对角线的元素组成的列向量。k=0为主对角线;k 0为上第k对角线。diag(x,k)生成一个(n+abs(k)维的方阵,该矩阵的第k条对角线元素取自向

9、量x,其余元素都为零。,2023/6/2,21,2.4 矩阵的生成,triu(A)生成一个和A大小相同的上三角矩阵。该矩阵的主对角线及以上元素取自A中相应元素,其余元素都为零。triu(A,k)生成一个和A大小相同的上三角矩阵。该矩阵的第k条对角线及以上元素取自A中相应元素,其余元素都为零。命令triu(A,0)等同于命令triu(A)。,2023/6/2,22,2.4 矩阵的生成,tril(A)生成一个和A大小相同的下三角矩阵。该矩阵的主对角线及以下元素取自A中相应元素,其余元素都为零。tril(A,k)生成一个和A大小相同的下三角矩阵。该矩阵的第k条对角线及以下元素取自A中相应元素,负数k

10、表示主对角线下的对角线。其余元素都为零。命令tril(A,0)等同于命令tril(A)。,2023/6/2,23,2.4 矩阵的生成,fliplr(A)通过二维矩阵A的行元素按照B(I,j)=A(j,n-j+1)交换位置生成一个新矩阵。这里的lr是left-right的缩写。flipud(A)通过二维矩阵A的列元素按照B(i,j)=A(n-i+1,j)交换位置生成一个新矩阵。这里的ud是up-down的缩写。,2023/6/2,24,2.4 矩阵的生成,rot90(A)生成一个由矩阵A逆时针旋转90而得的新阵。rot90(A,k)生成一个由矩阵A逆时针旋转k90而得到的新阵。,2023/6/2,25,2.4 矩阵的生成,hilb(n)生成一个nn的希尔伯特矩阵。invhilb(n)生成一个nn的希尔伯特矩阵的逆矩阵,其元素都为整数。magic(n)给出一个nn的魔方矩阵。pascal(n)返回一个nn的P a s c a l矩阵,它是对称、正定的矩阵,它的元素由Pascal三角组成。它的逆矩阵的所有元素是整数。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号