一、matlab简介
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室),由美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
二、数据类型
1、函数句柄:是一个可调用的matlab函数的关联,有了函数句柄这种关联,用户在任何情况下都可以通过函数句柄调用matlab函数,即使是超出正常的函数调用范围仍然可以。
函数句柄四个用途:
(1)可以将一个函数传递给另一个函数;
(2)可以捕获一个函数的数值供下一次使用;
(3)可以在正常范围外调用函数;
(4)可以在函数句柄以.mat文件类型保存,供下一次matlab运行时使用。
2、结构类型
结构类型是包含一组彼此相关、数据结构相同但类型不同的数据类型。
3、细胞数组类型
细胞数组是matlab特有的一种数据类型,组成它的元素是细胞,细胞是用来存储不同类型数据的单元。相同数组的第二个细胞的类型与大小可以和第一个细胞完全不一样。
三、matlab运算符
1、算式运算符
2、关系运算符
关系运算符两侧的矩阵维数必须相同。
关系运算为真返回逻辑1,反之返回值为逻辑0。
3、逻辑运算符
参与矩阵元素逻辑运算符的逻辑矩阵必须是位数相同的矩阵。
4、运算优先级
四、matlab的矩阵
1、矩阵合并
纵向合并矩阵(要求矩阵A、B的列数相同):C = [A;B]
横向合并矩阵(要求矩阵A、B的维数相同):C = [A B]
2、矩阵拆分
3、矩阵运算相关函数
求矩阵行列式的值:det()
求转置矩阵:transpose()或者用运算符"\'"
eg:B=transpose(A)等价于B=A\'
求逆矩阵:inv()
求广义逆矩阵:pinv()
(即矩阵不是方阵或者是一个非满秩的方阵时,矩阵没有逆矩阵,但可以求得伪逆矩阵也成为广义逆矩阵)
求矩阵的秩:rank()
五、控制语句
1、每个if、for、while语句必须以end语句结束,否则是错误的;
2、for i=1:4等价于for i=[1 2 3 4]。for i=1:2:10表示迭代从1开始,步长为2,最大不超过10,即代表行向量1 3 5 7 9。
3、try语句的使用
4、switch语句的使用
5、程序流程控制语句
break;return;continue;
pause语句,pause;-->暂停程序运行,按任意键继续;
pause(n);-->程序暂停运行n秒后继续;
pause on/off;-->允许/禁止其后的程序暂停;
六、matlab的m文件
七、matlab图形可视化
plot();
1、图形窗口设置
2、图形上加颜色标题等