MATLAB编程算矩阵,MatLab矩阵计算
取名MATLAB即Matrix Laboratory 矩阵实验室的意思。
例如: 在MATLAB命令窗口输入命令:
a=[1,1.5,2,9,7; 0,3.6,0.5,-4,4;
7,10,-3,22,33;3,7,8.5,21,6;
3,8,0,90,-20]
将显示一个5*5矩阵。
MATLAB的数据与变量
① 命名规则
在MATLAB 6.5中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。在MATLAB中,严格区分字母的大小写。MATLAB提供的标准函数名必须用小写字母。
② 变量查询函数who与whos
作用都是列出在matlab工作空间中已经驻留的变量名清单。不同的是whos在给出驻留变量的同时,还给出他们的维数及性质. clear命令用于删除MATLAB工作空间中的变量。
③ 永久变量
在matlab工作内存中,驻留了几个由系统本身在启动时定义的变量,我们称为永久变量。永久变量用who指令是查看不到的,只可随时调用
eps — 容差变量,定义为1.0到最近浮点数的距离,在 pc机上= 2-52
pi — 圆周率的近似值3.1415926
inf或Inf — 表示正无大,定义为1/0
NaN — 非数,它产生于0× ,0/0,/ 等运算
i,j — 虚数单位
ans — 对于未赋值运算结果,自动赋给ans
1.建立矩阵
建立矩阵可以用:直接输入法、利用函数建立矩阵和利用M文件建立矩阵。
直接输入法:
规则:
① 矩阵元素必须用[ ]括住;
② 同一行的各元素之间用空格或逗号分隔;
③ 在[ ]内矩阵的行与行之间必须用分号分隔).
利用函数建立数值矩阵:MATLAB提供了许多生成和操作矩阵的函数,可以利用它们去建立矩阵。
[ ] matlab允许输入空阵,当一项操作无结果时,返回空阵。
eye(size(A)) 产生与A矩阵同阶的单位矩阵
zeros(m,n) 产生0矩阵
ones(m,n) 产生一个元素全为1的矩阵
rand (m,n) 产生随机元素的矩阵
Size(a) 返回包含两个元素的向量
Length(a) 返回向量的最大者。
reshape(A,m,n) 返回一个m×n矩阵,且该矩阵中的元素是按照列方法从矩阵A中提取的
利用M文件建立矩阵:对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。其步骤为:
第一步:使用编辑程序输入矩阵。
第二步:把输入的内容以纯文本方式存盘, 并把文件名改为*.m。
第三步:在MATLAB命令窗口中输入文件名,就会建立一个矩阵,可供以后显示和调用。
冒号表达式
在MATLAB中,冒号是一个重要的运算符。利用它可以产生向量,还可用来拆分矩阵。冒号表达式的一般格式是:
e1:e2:e3
其中e1为初始值,e2为步长,e3为终止值。冒号表达式可产生一个由e1开始到e3结束,以步长e2自增的行向量。
MATLAB提供了许多数学函数,函数的自变量规定为矩阵变量,运算法则是将函数逐项作用于矩阵的元素上,因而运算的结果是一个与自变量同维数的矩阵。
例如: A= [1 2 3;4 5 6]
B=fix(pi*A) C=cos(pi*B) D=abs(B)
自然对数 E=log(D) F=log10(E)
sqrt(x) exp(x) tan (x) ctan (x)
函数使用说明: (1) 三角函数以弧度为单位计算。 (2) abs函数可以求实数的绝对值、复数的模、字符串的ASCII码值。 (3) 用于取整的函数有fix、floor、ceil、round,要注意它们的区别。
(4)函数一定是出现在等式的右边
(5)函数允许嵌套
4.矩阵的基本运算
(1)矩阵转置 A’
(2)矩阵加和减 A+B , A-B
规则:
相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。
允许参与运算的两矩阵之一是标量。标量与矩阵的所有元素分别进行加减操作。
(3)矩阵乘法 A*B
规则:
① A矩阵的列数必须等于B矩阵的行数
② 标量可与任何矩阵相乘。
(4)矩阵除法 A\b=inv(A)*b
在MATLAB中,有两种矩阵除法运算:\和/,分别表示左除和右除。如果A矩阵是非奇异方阵,则A\B和B/A运算可以实现。A\B等效于A的逆左乘B矩阵,也就是inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。对于矩阵来说,左除和右除表示两种不同的除数矩阵和被除数矩阵的关系。对于矩阵运算,一般A\B≠B/A。
(5)矩阵的乘方 A^n , A^p
对于p的其它值,计算将涉及特征值和特征向量,如果p是矩阵,A是标量A^p使用特征值和特征向量自乘到p次幂;如A,p都是矩阵,A^p则无意义。
5.矩阵数组运算
(1) 数组的乘: A.*B A,B必须同维,或其中之一为标量.
(2) 数组的左除: A.\B 将得到一个矩阵,该矩阵的元素维数组A和数组B中的每个相应元素进行B(i,j)/A(i,j)运算的结果.
(3) 数组的乘方: A.^B 以A中的元素为底,B中的相应元素为幂作乘方运算,相当于计算[A(i,j)^B(i,j)]。A,B必须同维,或其中之一为标量.
数组运算指元素对元素的算术运算,与通常意义
上的由符号表示的线性代数矩阵运算不同。
① 数组加减(.+ , .-)
a.+b
a.-b
② 数组的乘( )
ab —— a,b两数组必须有相同的行和列两数组相应元素相乘。
a=[1 2 3;4 5 6;7 8 9]; b=[2 4 6;1 3 5;7 9 10];
a.*b
ans =
2 8 18
4 15 30
49 72 90
③ 数组的除( ./ .\ )
a./b=b.\a
a.\b=b./a
a./b=b.\a — 都是a的元素被b的对应元素除
a.\b=b./a — 都是a的元素被b的对应元素除
例: a=[1 2 3];b=[4 5 6]; c1=a.\b; c2=b./a
c1 = 4.0000 2.5000 2.0000
c2 = 4.0000 2.5000 2.0000
④ 数组乘方(.^) — 元素对元素的幂
例:
a=[1 2 3];b=[4 5 6];
z=a.^2
z =
1.00 4.00 9.00
z=a.^b
z =
1.00 32.00 729.00
6、字符串
在MATLAB中,字符串是用单撇号括起来的字符序列。MATLAB将字符串当作一个行向量,每个元素对应一个字符,其标识方法和数值向量相同。也可以建立多行字符串矩阵。
字符串是以ASCII码形式存储的。abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵。相反,char函数可以把ASCII码矩阵转换为字符串矩阵。
与字符串有关的另一个重要函数是eval,其调用格式为: eval(t) 其中t为字符串。它的作用是把字符串的内容作为对应的MATLAB语句来执行。
【例1】 求解线性方程组AX=B
1 1.5 2 9 7 3
0 3.6 0.5 -4 4 -4
其中A= 7 10 -3 22 33 , B= 20
3 7 8.5 21 6 5
3 8 0 90 -20 16
在MATLAB命令窗口输入命令:
a=[1,1.5,2,9,7,0;0,3.6,0.5,-4,4,0;
7,10,-3,22,33;3,7,8.5,21,6;3,8,0,90,-20];
b=[3;-4;20;5;16];
x=a\b
得到的结果是:x =3.5653
-0.9255
-0.2695
0.1435
0.0101
或者x=inv(a)*b
【例2】 求方程 x4+7x3 +9x-20=0的全部根。
在MATLAB命令窗口输入:
p=[1,7,0,9,-20]; %建立多项式系数向量
x=roots(p) %求根
得到的结果是:
x =
-7.2254
-0.4286 + 1.5405i
-0.4286 - 1.5405i
1.0826
MATLAB编程算矩阵,MatLab矩阵计算相关推荐
- 在matlab表示特殊矩阵,MATLAB特殊矩阵以及矩阵转置
特殊矩阵 通用特殊矩阵 zeros函数:产生全0矩阵,即零矩阵. ones函数:产生....1矩阵,即幺矩阵. eye函数:产生对角线为1的矩阵,当矩阵是方正时,得到单位矩阵. rand函数:产生(0 ...
- matlab编程选择语句,Matlab编程-基本命令行语句
(1) mathlab命令行中","与":"的区别: 结尾不加任何东西也会输出结果 以","结尾不显示变量数值,但是再次输入变量名之后可以输 ...
- matlab 全1矩阵,matlab全为1的矩阵
生成一个 m 行 n 列的零矩阵,m=n 时可简写为 zeros(n) 生成一个 m 行 n 列的元素全为 1 的矩阵, m=n 时可写为 ones(n) 生成一个主对角线全为 1 的 m 行 n 列 ...
- matlab编程选择语句,matlab编程控制语句
matlab编程控制语句 M文件 程序控制结构 函数文件 程序举例 程序调试,2.1 M文件 2.1.1 M文件概述 用MATLAB语言编写的程序,称为M文件.M文件可以根据调用方式的不同分为两类:命 ...
- matlab 数组 组成 矩阵,MATLAB矩阵与数组
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 MATLAB既然以矩阵实验室命名,就说明该软件在矩阵计算方面具有非常优异的表现.在MATLAB中,一般情况下一个矩阵就是指一个长方形的数组.特殊情况有两个 ...
- 用MATLAB编程课程设计,matlab课程设计报告---用Mtlab编程实现句柄图形应用
matlab课程设计报告---用Mtlab编程实现句柄图形应用 课程设计报告(论文)课程设计报告(论文) 课 程基于 Matlab 的数学实验 学 号 姓 名 班 级 任课教师 用用 M Mtlabt ...
- matlab 怎么打矩阵,matlab怎么打印矩阵 matlab 如何输出矩阵?
matlab 如何输出矩阵 a %注意变量a后面没有";"号,即可输出disp(a) Matlab常用生成矩阵函数: zeros(m,n) 生成一个 m 行 n 列的零矩阵,m=n ...
- 用matlab编程求矩阵的极大无关组,向量组极大无关组表示问题
已知向量组T: Eqn11.gif (3.16 KB, 下载次数: 1) 2013-10-21 19:19 上传 . (1) 求向量组T的秩,并判断向量组T的相关性: (2) 求T的极大线性无关组: ...
- matlab编程 英文翻译,MATLAB编程,MATLAB programming,音标,读音,翻译,英文例句,英语词典...
Image:114994698204558.jpg matlab matlab是矩阵实验室(matrix laboratory)之意.除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理 ...
- matlab编程测试教程,Matlab实验1 MATLAB的基本操作、编程基础
实验一MATLAB的基本操作.编程基础 一.实验目的 1.初步了解matlab 6.5应用环境: 2.练习利用matlab 6.5中的命令或程序描述基本信号: 3.练习利用matlab 6.5中的命令 ...
最新文章
- 技术揭秘!百度搜索中台低代码的探索与实践
- Install matplotlib Error: src/ft2font.h:16:22: fatal error: ft2build.h: No such file or directory
- How to get ABAP code coverage result
- The rxfastforest algorithm case of kaggle
- 微服务面试题及详细答案
- Greenplum字段拼接
- Android新浪微博分享
- 【第1课 项目愿景】PMP敏捷精讲第五章:项目立项 1/4-科科过PMP
- python发送文件到指定的邮箱_python笔记:批量将指定附件发送到指定邮箱地址
- Unity Shader学习-单张纹理
- OTT广告系统设计与实现
- Django admin修改app名称
- Codeforces Round #499 (Div. 2) 1011 C. Fly 二分
- 下载和安装MySQL(傻瓜)教程
- 豆瓣读者董董:王博士的格子衬衫与怀里的蛇
- BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)
- Ai带你玩股票项目(V1.0)内测说明
- 潇洒郎: 解决联想电脑Y430p 一碰触摸板就蓝屏
- Feishu(飞书) 聊天机器人应用(3/3)- DevOps 机器人助手,管理 GitLab Issues,BOT 开源示例程序
- dateadd函数转成oracle,oracle dateadd函数