Matlab实验报告(二)矩阵和数组操作.pdf

上传人:g****s 文档编号:85911422 上传时间:2023-04-13 格式:PDF 页数:4 大小:153.51KB
返回 下载 相关 举报
Matlab实验报告(二)矩阵和数组操作.pdf_第1页
第1页 / 共4页
Matlab实验报告(二)矩阵和数组操作.pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《Matlab实验报告(二)矩阵和数组操作.pdf》由会员分享,可在线阅读,更多相关《Matlab实验报告(二)矩阵和数组操作.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Matlab 实验报告(二)矩阵和数组操作 一、实验目的 1掌握矩阵和数组的一般操作,包括创建、保存、修改和调用等。2学习矩阵和数组的加减运算与乘法。3 掌握对数组中元素的寻访与赋值,会对数组进行一般的操作。二、预备知识 1常用的产生特殊矩阵的函数?eye(m,n)单位阵?rand(m,n)随机矩阵?randn(m,n)正态分布的随机矩阵?zeros(m,n)零矩阵?ones(m,n)全部元素都为 1 的矩阵?compan(A)矩阵 A 的伴随矩阵?bankel(m,n)n 维 Hankel 矩阵?invhilb(n)n 维逆 Hilbert 矩阵?magic(n)n 维 Magic 矩阵?t

2、oeplitz(m,n)Toeplitz 矩阵?wilkinson(n)n 维 Wilkinson 特征值测试矩阵?handamard(n)n维 Handamard 矩阵?hilb(n)n 维 Hilbert 矩阵?kron(A,B)Kronecker张量积?pascal(n)n 维 Pascal 矩阵?vander(A)由矩阵 A 产生 Vandermonde 矩阵 2 通过矩阵的结构变换,获得新矩阵 表 2 矩阵结构变化产生新矩阵 L=tril(A)L=tril(A,k)0 U=triu(A)U 主对角线及以上的元素取矩阵A 的元素,其余为 0 L 主对角线及以下元素取矩阵 A 的元素,其

3、余为0 L 及第 k 条对角线及以下元素取矩阵 A 的元素,其余为 U=triu(A,k)0 B=rot90(A)B=rot90(A,k)B=fliplr(A)B=flipud(A)B=reshape(A,m,n)U第 k 条对角线及以上的元素取矩阵 A 的元素,其余为矩阵 A 逆时针旋转 90得到 B 矩阵 A 逆时针旋转 k*90得到 B 矩阵 A 左右翻转得到 B 矩阵 A 上下翻转得到 B 将矩阵 A 的元素重新排列,得到 m*n 的新矩阵(m*n 就等于 A 的行列式之积。若 A 为 3*4,则 m,n 可为 2,6 或 4,3 等 3数组(矩阵)操作 对数组或矩阵的基本操作有插入、

4、重新排列、提取、按列拉长、置空(去掉某行或某列)、置零、用单信下标操作一个矩阵,用逻辑数组操作一个矩阵、按指定条件求子数组,求数组的规模等,下面一一举例说明(对数组和矩阵不加区别)。X=4:6 x=4 5 6 插入 通过对 x 进行插入运算创建矩阵 A A=x-3;x;x+3 A=1 2 3 4 5 6 7 8 9 重新排列 以逆序重排 A 的各行形成矩阵 B B=A(3:-1:1,1:3)B=7 8 9 4 5 6 1 2 3 提取 提取 A 的前两行的后两列形成矩阵 C C=A(1:2,2:3)C=2 3 5 6 按列拉长 对 C 按列拉长形成矩阵 D D=C(:)D=2 5 3 6 置空

5、 删除 B 的第 2 列 B(:,2)=B=7 9 4 6 1 3 置零 将矩阵 B 的第 2 行第 2 列的元素置为 1 B2,2=0 B=7 9 4 0 1 3 用单个下标操作一个矩阵 MATLAB 对矩阵中的元素赋予一个序号,序号值按列从第 1 列第1 行到第 1 列第 2 行到第 2 列第 1 行到第 2 列第 2 行,直至最后一列最后一行的顺序计数。B(3)ans=1 B(5)ans=0 B(2:4)ans=4 1 9 用逻辑数组操作一个矩阵 x=-4:4 x=-4 C3 C2 C1 0 1 2 3 4%判断数组中的元素的绝对值大于 3 的情况,绝对值大于 3 的元素置为 1,否则为

6、 0。abs(x)3 ans=1 0 0 0 0 0 0 0 1 对矩阵可进行同样操作:A=1,2,3;4,5,6;7,8,9 A=1 2 3 4 5 6 7 8 9 abs(A)3 ans=0 0 0 1 1 1 1 1 1 按指定条件求子数组 首先由条件表达式生成一个逻辑数组,然后使用系统提供的函数即可,函数在已知数组中按逻辑数组的元素值查找所需的元素下标。a=abs(x)2 a=1 1 0 0 0 0 0 1 1 b=find(a)b=1 2 8 9 y=x(b)y=-4 C3 3 4 函数find也可用于矩阵。A=1:3;4:6;7:9 A=1 2 3 4 5 6 7 8 9 B=A4

7、 B=0 0 0 0 1 1 1 1 1 r,s=find(B)r=3 s=1 2 2 3 2 2 3 3 3 三、实验内容与步骤 1用三种方法创建一个 33 矩阵,然后利用矩阵编辑器,将其扩充为 45 矩阵,并保存,试着调用它。直接输入法 如在命令区输入 A=3,2,1;4,5,6;7,8,9。直接利用 MATLAB 提供的函数创建一个 33 矩阵 如在命令区输入 rand(3,3)即得到一个 33 的随机矩阵。利用 MATLAB 提供的“Matrix Editor”完成输入 步骤 1 在命令区输入 A=1。步骤 2 用鼠标单击工具栏的工作区浏览器,MATLAB 弹出变量浏览器,选中变量 A

8、,鼠标左键双击 A,打开矩阵编辑器。步骤 3 在左下脚的两个文本框中分别输入希望得到的矩阵的行数和列数:3 行 3 列,即得到一个 33 矩阵。步骤 4 要将上面矩阵改为一个 45 矩阵,只需改变矩阵的行数和列数即可。如将 3 行 3 列改为 4 行 5 列,即可得到一个 45 矩阵。若想修改其中的元素,只需用鼠标选中表格中我们想要修改的元素,将原来的元素修改为我需要的值。步骤 5 要命令区输入save data A(data 为我们给变量文件起的名称,系统会自动沿设定好的路径以“.mat”格式存储文件),即可保存上面例子中创建的矩阵 A。步骤 6 在命令区输入 load data 即可把保存

9、在文件中的矩阵读到MATLAB 的工作区的内存中来。建立一个等差数列,然后由它产生一个对角阵。步骤 1 在命令区输入 a=linspace(0,1.5,5)产生一个等差数列。步骤 2 在命令区输入 B=diag(a)产生一个对角阵。3利用 MATLAB 的函数 inv(A)求方阵 A 的逆矩阵。步骤 1 在命令区输入 A=1,2;5,6得到一个 22 的方阵。步骤 2 再输入 B=inv(A)求出 A 的逆矩阵。练习 创建一个 55 矩阵,提取主对角线以上的部分。A=rand(3),B=magic(3),C=rand(3,4),计算 ABC 四、创建一个 33 矩阵,并求其转置,逆矩阵。用两种方法求 Ax=b 的解(A为4阶随机矩阵,b为4阶列向量)。创建一个 4 阶随机矩阵 A,计算 A。3 五、实验分析 矩阵和数组操作实验比较麻烦,容易搞混,尤其是它的各种运算 六、实验总结 矩阵和数组是比较相似,容易搞混的两个概念,特别是它的一些运算,但矩阵和数组操作是非常有用的在 MATLAB 中,它们可以直接解决一些简单的问题。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 文案大全

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁