参考blog:https://zhuanlan.zhihu.com/p/77669451
一、基本操作
1.系统预处理变量
pi
:圆周率
inf,Inf
:无穷大
nan,Nan
:不定值
eps
:浮点运算相对精度
i,j
:虚部变量
ans
:内置用来储存输出的东西
matlab 以双精度执行所有的运算,运算结果可以在屏幕上输出,同时赋给指定变量;若无指定变量,则系统会自动将结果赋给变量 ans
2.变量储存
%save 文件名 变量名列表
save 'file1.mat' p q %将变量 p与去存储到文件file1.mat里面
save('file1.mat','p','q') % 和上面结果一样
3.变量读取
load file1.mat x %从数据文件中提取变量x
4.变量清除
%清除当前工作空间中的变量;
clear file1.mat x %清除指定的变量
clear all %清除所有工作空间变量
二、运算
1.数学运算符
基本运算符:+,-,*,/,^,\
2.矩阵运算
运算符 | |
---|---|
矩乘 | * |
乘方(矩乘幂) | ^ |
矩除 | \ |
点乘 | .* |
点除 | ./ |
点幂 | .^ |
与 | & |
或 | | |
非 | ~ |
小于 | < |
小于等于 | <= |
大于 | > |
大于等于 | >= |
等于 | == |
不等于 | ~= |
A矩阵转置 | A.’ |
A矩阵共轭转置 | A’ |
A\B = inv(A)*B
三、矩阵
1.定义矩阵
A = [1,2,3;
4,5,6;
7,8,9]
%列元素直接用逗号隔开,行与行用分号隔开
2.矩阵下标
以3*3的矩阵为例
A
i
n
d
e
x
=
[
1
4
7
2
5
8
3
6
9
]
A_{index} = \left[\begin{matrix} 1&4&7\\ 2&5&8\\ 3&6&9 \end{matrix}\right]
Aindex=⎣⎡123456789⎦⎤
3.矩阵引用
A(i) %index为i的元素
A(i,j) %i行j列的元素
A(i:j,n:m) %i至j行,n至m列的子矩阵
A(i,:) %第i行整行,整列类似
4.矩阵赋值
%直接赋值
A = [1,2,3;
4,5,6;
7,8,9]
B = [11,45,14]
C = [19,1,9;
8,1,0]
%A(index) = val:给A矩阵index位置上的值赋值val
A(7) = 66 %A = [1,2,66;
% 4,5,6;
% 7,8,9]
%A(row,column) = val:给A矩阵row行column列的值赋值val
A(1,3) = 67 %A = [1,2,67;
% 4,5,6;
% 7,8,9]
%矩阵合并
A = [B;C] %A = [11,45,14;
% 19,1,9;
% 8,1,0]
5.建立矩阵
diag(A) %建立对角矩阵(A为单行或单列矩阵)
reshape(A,n,m) %将A矩阵reshape为n行m列,返回结果矩阵,不改变原矩阵
eye(size) %建立单位矩阵
eye(m,n)
zeros(m,n) %0矩阵
ones(m,n) %1矩阵
rand(m,n) %随机矩阵