




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二讲Matlab的数值计算 Matlab具有出色的数值计算能力 占据世界上数值计算软件的主导地位 Matlab数值计算是使用Matlab的基础 是Matlab强大计算功能的体现 一 Matlab的表达式和变量1 Matlab的表达式Matlab语句最常见的两种形式 表达式变量 表达式 对于第一种形式 计算结果系统自动赋值给名为ans的变量 ans永远只保存最近一次的表达式的运算结果对于第二种形式 系统将右边的表达式的结果赋值给左边的变量 然后在屏幕上显示出来注意 表达式末尾的 数字表达Matlab的数值采用十进制表示 可以使用科学计数法 用e表示位数 Matlab常用运算符 右除 左除 幂 2 Matlab的变量 变量名可以是字母或数字 但首字必须是字母 Matlab对变量名的大小写敏感 大小写代表不同的变量 显示结果的缺省格式是5位有效数字 可以用命令format改变输出格式 如 formatshorte formatlonge Matlab可以响应键盘输入 用 input 命令 x input pleaseinputx 二 Matlab的基本计算功能常用基本数学函数 Matlab常用的三角函数 有 sin x cos x tan x asin x acos x atan x 等 三 矩阵的创建 1 创建矩阵的方法直接输入法规则 矩阵元素必须用 括住 矩阵元素必须用逗号或空格分隔 在 内矩阵的行与行之间必须用分号分隔 矩阵元素 矩阵元素可以是任何Matlab表达式 可以是实数 也可以是复数 复数可用特殊函数i j输入a 123 456 x 2pi 2 sqrt 3 3 5i 符号的作用 逗号和分号的作用 逗号和分号可作为指令间的分隔符 Matlab允许多条语句在同一行出现 分号如果出现在指令后 屏幕上将不显示结果 注意 只要是赋过值的变量 不管是否在屏幕上显示过 都存储在工作空间中 以后可随时显示或调用 变量名尽可能不要重复 否则会覆盖 当一个指令或矩阵太长时 可用 续行 冒号的作用 用于生成等间隔的向量 默认间隔为1 用于选出矩阵指定行 列及元素 循环语句 2 用Matlab函数创建矩阵 空阵 Matlab允许输入空阵 当一项操作无结果时 返回空阵 rand 随机矩阵eye 单位矩阵zeros 全部元素都为0的矩阵ones 全部元素都为1的矩阵diag 产生对角阵 例 0 1分布的随机矩阵 用rand函数可以产生任意行列的的0 1分布的随机矩阵 ra rand 2 3 ra 0 92180 17630 93550 73820 40570 9169 还有伴随矩阵 稀疏矩阵 魔方矩阵 对角矩阵 范德蒙等矩阵的创建 就不一一介绍了 注意 Matlab严格区分大小写字母 因此a与A是两个不同的变量 Matlab函数名必须小写 3 矩阵的修改 直接修改可用 键找到所要修改的矩阵 用 键移动到要修改的矩阵元素上即可修改 指令修改可以用A 来修改 3 由矩阵编辑器修改由Matlab提供工具栏按钮来查看工作区变量单击变量 可以打开或删除变量打开后得到如下图 点击矩阵元素 修改即可 例如a 120 305 789 a 120305789a 3 3 0a 120305780 四 数据的保存与获取 把Matlab工作空间中一些有用的数据长久保存下来的方法是生成mat数据文件 save 将工作空间中所有的变量存到Matlab mat文件中 savedata 将工作空间中所有的变量存到data mat文件中 savedataab 将工作空间中a和b变量存到data mat文件中 下次运行Matlab时即可用load指令调用已生成的mat文件 load loaddata loaddataab mat文件是标准的二进制文件 还可以ASCII码形式保存 即可恢复保存过的所有变量 五 矩阵运算 1 矩阵加 减 运算规则 相加 减的两矩阵必须有相同的行和列两矩阵对应元素相加减 允许参与运算的两矩阵之一是标量 标量与矩阵的所有元素分别进行加减操作 2 矩阵乘 运算规则 A矩阵的列数必须等于B矩阵的行数标量可与任何矩阵相乘 a 123 456 780 b 1 2 3 c a bc 143223 d 1 0 2 f pi df 3 141606 2832 3 矩阵除 运算 矩阵除的运算在线性代数中没有 有矩阵逆的运算 在Matlab中有两种矩阵除运算 左除 右除A B为方程AX B的解B A为方程XA B的解A B inv A B而B A B inv A B A A B 其中inv B 表示矩阵B的逆 4 矩阵乘方 a n a p p a a p a自乘p次幂 方阵 1的整数 对于p的其它值 计算将涉及特征值和特征向量 如果p是矩阵 a是标量a p使用特征值和特征向量自乘到p次幂 如a p都是矩阵 a p则无意义 a 1 2 3 4 5 6 7 8 9 a 2ans 303642668196102126150 当一个方阵有复数特征值或负实特征值时 非整数幂是复数阵 a 0 5ans 0 4498 0 7623i0 5526 0 2068i0 6555 0 3487i1 0185 0 0842i1 2515 0 0228i1 4844 0 0385i1 5873 0 5940i1 9503 0 1611i2 3134 0 2717i 5 矩阵的其它运算 矩阵转置 共轭 矩阵的子矩阵可以通过标量 向量 冒号的标识来引用和赋值 子阵序号向量标识方式A v w v w可以是任何排列的向量 也可以是 它表示全部行 在V的位置 或全部列 在w的位置 0 1 向量标识方式A L1 A L2 A L1 L2 向量L1 L2的长度分别为矩阵A的行数和列数 向量L1 L2中的元素取1 表示提取相应的行或列 或0 不提取 6 矩阵标识和子矩阵 例 提取矩阵的子阵 B magic 5 B1 B 1 2 1 3 5 B2 B 3 1 B 1 3 2 4 zeros 2 6 矩阵的一些特殊操作 矩阵的变维a 1 12 b reshape a 3 4 b为3行4列c zeros 3 4 c a 矩阵的变向rot90 旋转 逆时针 fliplr 左右翻 flipud 上下翻矩阵的抽取diag 抽取主对角线 tril 抽取主下三角 triu 抽取主上三角 例 a 123 456 789 b rot90 a c flipud a d fliplr a a 123456789b 369258147c 789456123d 321654987 la tril a 1 ua triu a 1 na triu a la 000400780ua 023006000na 123056009 7 特殊的应用矩阵 在控制系统分析和设计中 应用一些特殊的矩阵约当阵 将状态空间模型转换为约当标准形形式 jordan a 得到矩阵a的约当标准形 V J jordan a J为约当标准形 V为相似变换阵 满足V a V J 例 a 1 2 3 4 J jordan a V JJ jordan a J 5 372300 0 3723V 0 23890 76110 5222 0 5222JJ 5 372300 0 3723 伴随矩阵 将状态空间模型转换为可控标准形compan p 获得多项式P的伴随矩阵p 123 a compan p p 123a 2 310 格雷姆 Gram 矩阵 计算可控性和可观性格雷姆阵Gc gram G c 计算稳定系统G的可控性格雷姆矩阵GcGo gram G o 计算稳定系统G的观测性性格雷姆矩阵Go 7 常用的矩阵函数 矩阵的行列式 矩阵的秩 特征值等在现代控制理论中有广泛的应用 Matlab提供了相应的函数求其值det A 方阵A的行列式eig A 方阵A的特征值和特征向量rank A 矩阵A的秩trace A 矩阵A的迹expm A 矩阵的指数sqrtm A 求矩阵的平方根funm A fun 求一般的方阵函数 A 123 456 780 deta det A ranka rank A tracea trace A eiga eig A deta 27ranka 3tracea 6eiga 12 1229 0 3884 5 7345 注意 funm函数的问题f funm A fun 对于方阵A 计算用函数 fun 定义的矩阵函数 例如 funm A sin 就是计算矩阵A的sin函数 funm使用的算法有潜在的不稳定性 如果A是接近于一个多重特殊值和病态特征向量的矩阵 它会产生不精确的值 Matlab系统会因此出现警告的信息 但是有时候出现正确结果时 也会出现警告信息 例 矩阵函数和数组函数运算的区别B 1 6 1 2 1 3 5 6 pi sinb sin B sinb 0 50001 00000 86600 5000 fsinmb funm B sin fsinmb 0 08490 00000 0000 0 0849 8 矩阵的数组运算 数组运算指元素对元素的算术运算 与通常意义上的由符号表示的线性代数矩阵运算不同在Matlab中提供了如下的数组运算符 1 数组加减 a ba b 注意 运算符中的小黑点绝对不能遗漏 否则将不按数组运算规则进行计算 不管执行什么数组计算 所计算结果数组总是与参与运算的数组同维 数组运算中所有的二元运算必须是同维的数组或者其中有一个是标量 2 数组乘除 a b a b两数组必须有相同的行和列两数组相应元素相乘 a 123 456 789 b 246 135 7910 a bans 281841530497290 a 123 456 789 b 246 135 7910 a bans 253746558510985133172 a b b aa b b aa b b a 都是a的元素被b的对应元素除a b b a 都是b的元素被a的对应元素除例 a 123 b 456 c1 a b c2 b ac1 4 00002 50002 0000c2 4 00002 50002 0000 给出a b对应元素间的商 3 数组乘方 元素对元素的幂例 a 123 b 456 z a 2z 1 004 009 00z a bz 1 0032 00729 00 4 数组转置 元素对元素的转置 a 1 2 i3 i 4 5 i6 i aa a aaa a a 1 0000 2 0000i0 3 0000i4 0000 5 0000i0 6 0000iaa 1 0000 2 0000i4 0000 5 0000i0 3 0000i0 6 0000iaaa 1 0000 2 0000i4 0000 5 0000i0 3 0000i0 6 0000i 六 多项式运算 Matlab语言把多项式表达成一个行向量 该向量中的元素是按多项式降幂排列的 f x anxn an 1xn 1 a0可用行向量p anan 1 a1a0 表示1 poly 产生特征多项式系数向量特征多项式一定是n 1维的特征多项式第一个元素一定是1 例 a 123 456 780 p poly a p 1 00 6 00 72 00 27 00p是多项式p x x3 6x2 72x 27的Matlab描述方法 我们可用 p1 poly2str p x 函数文件 显示数学多项式的形式p1 x 3 6x 2 72x 27 2 roots 求多项式的根 a 123 456 780 p poly a p 1 00 6 00 72 00 27 00r roots p r 12 12 5 73 显然r是矩阵a的特征值 0 39 当然我们可用poly令其返回多项式形式p2 poly r p2 1 00 6 00 72 00 27 00Matlab规定多项式系数向量用行向量表示 一组根用列向量表示 3 conv convs多项式乘运算 例 a x x2 2x 3 b x 4x2 5x 6 c x2 2x 3 4x2 5x 6 a 123 b 456 c conv a b conv 123 456 c 4 0013 0028 0027 0018 00p poly2str c x p 4x 4 13x 3 28x 2 27x 18 4 deconv多项式除运算 a 123 c 4 0013 0028 0027 0018 00 d deconv c a d 4 005 006 00 5 多项式微分 Matlab提供了polyder函数多项式的微分 命令格式 polyder p 求p的微分polyder a b 求多项式a b乘积的微分 p q polyder a b 求多项式a b商的微分 即有理多项式求导例 a 12345 poly2str a x ans x 4 2x 3 3x 2 4x 5b polyder a b 4664poly2str b x ans 4x 3 6x 2 6x 4 例 有理多项式求导num 10 14567 den poly 2 1 0 5 p q polyder num den num分子多项式 den分母多项式p 1070195200 125 390 185q 1 00007 000019 250026 500019 25007 00001 0000该结果证实 6 多项式展开与组合 Matlab提供了函数residue执行部分分式展开 命令格式 r p k residue b a 或者相应的逆运算 b a residue r p k 例 num 10 14567 den poly 2 1 0 5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030费托蜡行业产能过剩预警与供需平衡策略
- 2025-2030费托蜡在新基建工程材料中的应用场景开发与验证
- 2025-2030装配式建筑在青年公寓领域的应用前景研究
- 2025-2030自动驾驶出租车商业化试点效果评估
- 数学线上线下混合教学活动方案
- 小学音乐课教学活动方案设计
- 保险理赔流程操作手册及注意事项
- 2025个体网络店铺购买合同
- 八年级物理时间测量练习题
- 大型工程分包合同资料移交记录范例
- (2025秋新版)外研版八年级英语上册全册教案
- GB/T 45870.1-2025弹簧测量和试验参数第1部分:冷成形圆柱螺旋压缩弹簧
- 数据备份课件
- 银行集团管理办法
- 人行国内证管理办法
- 电厂钢结构安装方案(3篇)
- 部编版六年级下册语文小升初《词语积累与运用》专项检测卷 含答案
- 残运会应急预案管理办法
- T/SFABA 2-2016食品安全团体标准食品配料焙烤食品预拌粉
- 村集体合作入股协议书
- A-Level化学(A2)2024-2025年有机合成与分析化学深度学习试题
评论
0/150
提交评论