第一范文网 - 专业文章范例文档资料分享平台

实验1 - 熟悉matlab环境及基本操作 (2)

来源:用户分享 时间:2020-06-30 本文由坦然理解 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

t=sqrt(x)

四、矩阵的定义、生成和基本运算

1. 矩阵的创建

① a:逐个元素直接输入 把矩阵元素需用“[ ]”括起来,同行元素

之间用空格或逗号分隔,行与行之间用分号或回车符分隔 矩阵

元素可为运算表达式,无任何元素的矩阵称为空矩阵。例如

x=[1 2 3;4 5 6;7 8 9] y=[1,2,3;4,5,6;7,8,9] k=[sin(pi/7),cos(pi/4)] T=[]

②编写M文件创建大矩阵 对于大型矩阵,可通过编写脚本式M文件,然后运行该文件来创建。例如:编写一名为Example10.m的M文件,内容如下。

%Example10.m

%编写一M文件创建矩阵的示例文件。

emn=[456 344 224 56 36;0 97 665 86 45;29 50 5 124 36;14 38 54 259 178;459 54 145 245 233]

ans =

1/2*k^2-1/2*k ans =

1/2*a^2*x^4+1/2*a*x^2 ans = 1/6*pi^2

③通过函数创建特殊矩阵

%Example.m

%编写一M文件,通过函数创建特殊矩阵的示例文件。

%由函数zeros创建全0矩阵。

N=4;M=3;A=[1 2 3 4 5;2 3 5 6 1;4 4 4 2 5];

- 6 -

B1=zeros(M,N) %生成M×N阶全0阵。 C1=zeros(size(A)) %生成与A同阶的全0阵。 A2=ones(N) %生成N×N阶全1阵。 B2=ones(M,N) %生成M×N阶全1阵。 C2=ones(size(A)) %生成与A同阶的全1阵。 %由函数eye创建单位矩阵。

A2=eye(N) %生成N×N阶单位矩阵 C2=eye(size(A)) %生成与A同阶单位矩阵。 %由函数rand或randn创建随机矩阵。

A3=rand(N) %生成N×N阶均匀分布的随机阵,元素值在(0.0,1.0)区间内。 B3=rand(M,N) %生成M×N阶均匀分布的随机阵。 C3=rand(size(A)) %生成与A同阶阶均匀分布的随机阵。 H=hilb(N) %生成N×N阶Hilbert矩阵。

2. 矩阵元素的引用

①相对位置引用格式:变量名(行标,列标) ②绝对位置引用格式:变量名(绝对位置索引)

clear

rand('state',0) A=rand(5,3)

A(4) %引用距阵A的第四个元素

A(2,3) %引用矩阵A的第二行第三列元素

3. 矩阵元素的抽取 ① 抽取行

clear

rand('state',0) A=rand(5,6)

A(4,:) %抽取矩阵A的第四行

A([2 3],:) %抽取矩阵A的第二行和第三行 B=A([3 3],:) %抽取矩阵A的第三行和第三行赋值给B

C=A(3:end,:) %抽取矩阵A的第三行至最后一行赋值给B

② 抽取列

clear

rand('state',0)

- 7 -

A=rand(5,6)

A(:,3) %抽取矩阵A的第三列

A(:,[1 3]) %抽取矩阵A的第一列和第三列 B=A(:,[3 1]) %抽取矩阵A的第三列和第一列赋值给B

③抽取块

clear

rand('state',0) A=rand(3,4)

B=A([1 2],[2 3]) %抽取矩阵A的第一、二行与第二、三列交叉的元素赋值给B

④抽取矩阵对角线上的元素

clear

rand('state',0)

A=rand(6) %产生(6×6)的均匀分布随机数组 V=diag(A) %抽取矩阵A的主对角线上的元素赋值给向量V D=diag(V) %以向量V为对角线元素生成对角矩阵 D1=diag(V,2) D2=diag(V,-2)

U=diag(A,1) %抽取矩阵A的主对角线上方第一条对角线的元素赋值给向量U L=diag(A,-1) %抽取矩阵A的主对角线下方第一条对角线的元素赋值给向量L

⑤抽取矩阵上三角部分和下三角部分

clear

rand('state',0)

A=rand(5) %产生(5×5)的均匀分布随机数组

U=triu(A,1) %从矩阵A的主对角线上方第一条对角线开始抽取A的上三角部分 U=triu(A,-1) %从矩阵A的主对角线下方第一条对角线开始抽取A的上三角部分 L1=tril(A,1) L2=tril(A,-1)

4. 矩阵的基本数学运算

① 矩阵的四则运算(+ - * / \\)与线性代数理论一致,其中,A\\B=inv(A)*B=A^-1*B。

- 8 -

clear

A=[3 2 3 0;2 1 -4 6] B=[-1 3;4 1;6 0;7 9] C=A+B' D=A*B E=B/D F=D\\A

② 矩阵与常数间的运算(+ - * / \\ ^)同线性代数理论一致,需注注的是,当进行数除时,常数通常只能做除数。

clear

A=[1 2 3 0;2 1 -4 6] C=A+2 D=A*2 E=A/2 F=2\\A

G=A([1 2],[1 2])^2

③ 矩阵的数组运算(.+ .- .* ./ .\\ .^)是指同维数组间对应元素之间的加、减、乘、除和幂运算,其中“.+”和“ .-”分别与“+”和“-”相同,所以,“.+”和“ .-”一般不用。

clear

A=[7 2 8 0;5 1 -4 6] B=A+2 C=A.*B D=A./B E=B.\\A F=A.^2

④ 矩阵的基本初等运算 clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] A(2,:)=A(2,:)*2 %2乘A的第二行

A(1,:)=A(1,:)+A(2,:) %2乘A的第二行,加到A的第一行 A([2 3],:)=A([3 2],:) %交换A的第二行和第三行

- 9 -

⑤ 矩阵的逆运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] B=inv(A)

⑥ 矩阵的行列式运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] B=det(A)

⑦ 矩阵的指数运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] B=expm(A)

⑧ 矩阵的对数运算

clear

A=[4 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9] B=expm(A) C=logm(B) D1=logm(A) D2=log(A)

⑨ 矩阵的开方运算

clear

A=[9 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9] B=A^2

C=sqrtm(B) B1=sqrtm(A) B2=sqrt(A)

5. 矩阵的一些特殊操作

- 10 -

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新教学研究实验1 - 熟悉matlab环境及基本操作 (2)全文阅读和word下载服务。

实验1 - 熟悉matlab环境及基本操作 (2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1108585.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top