MATLAB原理及应用实验报告第二章.doc
MATLAB原理及应用实验报告 实验二 数组(矩阵)及其运算一实验目的1、掌握MATLAB软件环境下进行的数值数组(矩阵)的创建和访问的基本方法。2、掌握数值数组(矩阵)的算术运算、逻辑运算二实验设备计算机、MATLAB软件三实验内容1.矩阵的创建(1)矩阵的创建 方法1:输入元素列表 矩阵行中的元素以空格()或逗号(,)间隔 矩阵行之间用分号(;)或回车(enter)间隔 整个元素列表用方括号()括起来 >> a=1 2 3;4 5 6;7 8 9 >> a=1:3;4:6;7:9;a1=1:6 %用冒号(:)可以操作简便 方法2:利用MATLAB内部函数产生矩阵 >>b=eye(3) >>c=ones(2,5) >>d=zeros(3,2) >>e=linspace(-3,6,10) >>f=logspace(0,4,5) >>r=rand(1,6) %产生0,1之间均匀分布的随机向量R(1×6)(2)矩阵元素的提取与替换 在MATLAB中,矩阵中元素可以通过其在矩阵中的行标和列标来确定。对矩阵中的元素进行提取与替换,也可以按行标和列表进行。【实验2-1】在命令窗口输入: >>A=1,2,3;4,5,6 运行后显示: A = 1 2 3 4 5 6在命令窗口输入: >>b=A(1,2)运行后显示:b =2在命令窗口输入: >>A(2,3)=-3运行后显示:A = 1 2 3 4 5 -3(3) 矩阵的操作 >>A=1,2,3;4,5,6;7,8,9 >>B=diag(A) %X为矩阵时,V=diag(X,k)得到列向量V,它取自X的第K个对角线的元素, %k=0,表示主对角线,等同于V=diag(X) >>C=diag(B) %产生对角阵 >>D=rot90(A) %将矩阵A逆时针旋转90度。 >>E=reshape(D,1,9) %reshape(A,m,n)从矩阵A中从新生成m×n的矩阵,按 “列”顺序重排 3.矩阵的运算 (1)算术运算 + - * / 。 两种不同转置的区别(数组转置,即非共轭转置;数组转置,即非共轭转置) 【实验2-2】在命令窗口输入:>>clear; >> A=zeros(2,3); >> A(:)=1:6; %全元素赋值法 >> A 运行后显示:A = 1 3 5 2 4 6>> A=A*(1+i) %运用标量与数组乘产生复数矩阵 运行后显示:A = 1.0000 + 1.0000i 3.0000 + 3.0000i 5.0000 + 5.0000i 2.0000 + 2.0000i 4.0000 + 4.0000i 6.0000 + 6.0000i>> B=A.' %数组转置,即非共轭转置 运行后显示:B = 1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i 5.0000 + 5.0000i 6.0000 + 6.0000i>> C=A' %矩阵转置,即共轭转置 运行后显示:C = 1.0000 - 1.0000i 2.0000 - 2.0000i 3.0000 - 3.0000i 4.0000 - 4.0000i 5.0000 - 5.0000i 6.0000 - 6.0000i求矩阵的逆矩阵>> B=1 2;3 4;>> B1=inv(B) 运行后显示:B1 = -2.0000 1.0000 1.5000 -0.5000>> B2=B(-1)运行后显示:B2 = -2.0000 1.0000 1.5000 -0.5000关于矩阵求幂>>A=1 2;3 4; B= 2 1;3 2;>>A.B 运行后显示:ans = 1 2 27 164.向量的运算 (1)向量点积运算 【实验2-3】在命令窗口输入: >> A=1 2;3 4; B= 2 1;3 2; >> C=dot(A,B) 运行后显示: C = 11 10 (2)向量叉积运算>> A=1 2 3; B= 2 1 3;%向量A与B必须是3个元素的向量。 >>C=cross(A,B) 运行后显示: ans = 3 3 -3(2)关系和逻辑运算 关系操作符(6种)>、<、>=、<= 、=、 逻辑操作符(4种)&(and)、(or)、(not)、 【实验2-4】在命令窗口输入: >> A=1 2 1;3 4 1;2 2 3; >> b=trace(A) %返回矩阵A的迹,即A的对角线元素之后。 运行后结果显示:b = 8 >> A=1 2 1;3 4 1;2 2 3;>> n=numel(A) %返回矩阵A的元素个数运行后结果显示:n = 95.矩阵的分析 【实验2-】在命令窗口输入 >> A=-1 1 0;-4 3 0;1 0 2;>> V,D=eig(A)%求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量。运行后结果显示: V = 0 0.4082 0.4082 0 0.8165 0.8165 1.0000 -0.4082 -0.4082D = 2 0 0 0 1 0 0 0 16.课后练习1、建立和(1)求矩阵A和B的积,矩阵A左除B,以及矩阵A的2次方(2)求数组A和B的积,数组A左除B,及数组A的2次方2.建立矩阵 (1)用两种方法索引出A矩阵第3行第2列的元素,并将其值改为自己的学号加20(2)索引出A矩阵第2行至第4行、第二列至第5列的所有元素3、使用两种方法建立范围为的向量,使得向量中的元素相邻元素的间隔是2(1)改变第二个元素的值,并将其赋给一个新的变量(学号加20),并求两个向量的点积(2)从第二个元素开始提取三个元素,并与向量1 2 3做叉积4、 复数表达,及计算。5、建立随机矩阵:(1) 在区间10,学号加40内均匀分布的5阶随机矩阵A。然后判断A的元素能否被3整除。(2) 均值为(学号/10)、方差为(100*学号)的5阶正态分布随机矩阵 (3) 对(1)向右取整,对(2)向左取整数