1.矩阵操作相关函数
zeros函数
- 基本功能:创建全零矩阵。
- 基本格式:
A = zeros(m,n),其中m和n分别表示矩阵的行数和列数,例如创建一个3X4的全零矩阵A,可以写为A = zeros(3,4)。
ones函数
- 基本功能:创建全 1 矩阵。
- 基本格式:
B = ones(m,n),和zeros函数类似,例如B = ones(2,5)会创建一个2X5的全 1 矩阵。 -
eye函数
- 基本功能:创建单位矩阵,即主对角线元素为 1,其余元素为 0 的方阵。
- 基本格式:
C = eye(n),这里n为方阵的阶数,如C = eye(4)会创建一个4X4的单位矩阵。
-
rand函数
- 基本功能:生成均匀分布的随机矩阵。
- 基本格式:
D = rand(m,n),生成一个mXn的随机矩阵,其元素在区间内均匀分布,例如D = rand(3,3)会生成一个3X3的随机矩阵。
-
randn函数
- 基本功能:生成正态分布的随机矩阵。
- 基本格式:
E = randn(m,n),生成一个mXn的随机矩阵,其元素服从均值为 0,标准差为 1 的正态分布,如E = randn(2,2)。
-
size函数
- 基本功能:获取矩阵的大小(行数和列数)。
- 基本格式:
[r,c] = size(A),其中A是矩阵,r返回行数,c返回列数。也可以只获取行数或列数,如r = size(A,1)获取行数,c = size(A,2)获取列数。
-
reshape函数
- 基本功能:改变矩阵的形状,重新排列矩阵元素。
- 基本格式:
B = reshape(A,m,n),将矩阵A的元素重新排列成一个mXn的矩阵B,要求A的元素总数等于m*n,例如A = [1 2 3 4;5 6 7 8],B = reshape(A,4,2)会将A重塑为一个4X2新的矩阵。
2.数学运算相关函数
-
sum函数
- 基本功能:对矩阵元素求和。
- 基本格式:
s = sum(A),如果A是向量,返回向量元素之和;如果A是矩阵,默认按列求和,返回一个列向量,其元素为每列元素之和。可以通过sum(A,2)按行求和,例如A = [1 2;3 4],sum(A)返回[4;6],sum(A,2)返回[3;7]。
-
prod函数
- 基本功能:对矩阵元素求积。
- 基本格式:
p = prod(A),和sum函数类似,按列求积,也可以通过prod(A,2)按行求积,例如A = [1 2;3 4],prod(A)返回[3;8],prod(A,2)返回[2;12]。
-
max函数
- 基本功能:求矩阵元素的最大值。
- 基本格式:
[M,I] = max(A),如果A是向量,M返回最大值,I返回最大值的索引(位置);如果A是矩阵,默认按列求最大值,M返回每列最大值组成的列向量,I返回最大值所在行的索引组成的列向量。可以通过max(A,[],2)按行求最大值,例如A = [1 3;2 4],max(A)返回[3;4],I返回[2;2],max(A,[],2)返回[3;4]。
·min函数
- 基本功能:求矩阵元素的最小值。
- 基本格式:
[m,i] = min(A),和max函数类似,例如A = [1 3;2 4],min(A)返回[1;2],i返回[1;1]。
-
sqrt函数
- 基本功能:计算矩阵元素的平方根。
- 基本格式:
B = sqrt(A),对矩阵A中的每个元素求平方根得到矩阵B,例如A = [1 4;9 16],B = sqrt(A)得到B = [1 2;3 4]。
-
exp函数
- 基本功能:计算以自然常数e为底的指数函数。
- 基本格式:
C = exp(A),对矩阵A中的每个元素计算
得到矩阵C,例如A = [0 1; - 1 0],C = exp(A)得到C = [1.0000 2.7183;0.3679 1.0000]。
-
log函数
- 基本功能:计算自然对数。
- 基本格式:
D = log(A),对矩阵中大于的元素计算自然对数得到矩阵,例如A = [1 2;3 4],D = log(A)得到D = [0 0.6931;1.0986 1.3863]。
3.方程求解相关函数
-
solve函数(符号计算)
- 基本功能:用于求解代数方程(组)。
- 基本格式:对于单个方程,
solution = solve(equation, variable),其中equation是包含变量的方程表达式,variable是要求解的变量。对于方程组,solutions = solve(equations, variables),equations是方程数组,variables是要求解的变量数组,例如求解方程组x+y=3,x-y=1关于x和y的解: syms x y;
equations = [x + y == 3, x - y == 1];
variables = [x, y];
solutions = solve(equations, variables);
-
fsolve函数(数值计算)
- 基本功能:用于求解非线性方程组。
- 基本格式:
[x,fval,exitflag,output] = fsolve(fun,x0),其中fun是定义非线性方程组的函数句柄,x0是初始猜测值向量,例如对于方程组
,可以这样定义函数句柄:
function F = myfun(x)
F(1) = x(1)^2 + x(2)^2 - 5;
F(2) = x(1) - x(2) - 1;
end
- 然后
x0 = [1;1]作为初始猜测值,[x,fval,exitflag,output] = fsolve(@myfun,x0)进行求解。
4.绘图相关函数
-
plot函数
- 基本功能:绘制二维曲线。
- 基本格式:
plot(x,y),其中x和y是长度相同的向量,分别表示横坐标和纵坐标的数据,例如x = [1 2 3 4];y = [1 4 9 16];plot(x,y)会绘制出
在[1,4]的曲线。也可以在一个图中绘制多条曲线,如plot(x1,y1,x2,y2)。
-
subplot函数
- 基本功能:将图形窗口划分为多个子图。
- 基本格式:
subplot(m,n,p),将图形窗口划分为mXn个小的子图区域,当前绘图在第p个子图中进行,例如subplot(2,2,1)会将窗口划分为2X2个子图,当前在左上角的子图进行绘图。
-
xlabel、ylabel、title函数
- 基本功能:分别用于给轴、轴添加标签和给图形添加标题。
- 基本格式:
xlabel('x轴标签')、ylabel('y轴标签')、title('图形标题'),例如x = [1 2 3 4];y = [1 4 9 16];plot(x,y);xlabel('x');ylabel('y');title('二次函数曲线')。
-
bar函数
- 基本功能:绘制柱状图。
- 基本格式:
bar(x,y),如果x是向量,y\)可以是向量(和\(x\)长度相同)或者矩阵(列数和\(x\)长度相同),例如x = [1 2 3];y = [4 5 6];bar (x,y)` 绘制简单的柱状图。
hist函数
- 基本功能:绘制直方图。
- 基本格式:
hist(y,n),对向量y的数据进行统计并绘制直方图,n是直方图的区间数,例如y = randn(1000);hist(y,10)会绘制y的直方图,分为10个区间.
5.编程和流程控制相关函数
for循环函数
for variable = start:increment:endstatements
end
- 例如
for i = 1:5;disp(i);end会依次输出到。 -
while循环函数
while expressionstatements
end
- 例如
i = 1;while i <= 5;disp(i);i = i + 1;end也会依次输出1到5。
if expressionstatements
elseif expression2statements2
elsestatements3
end
- 例如
x = 3;if x > 2;disp('x大于2');elseif x == 2;disp('x等于2');else;disp('x小于2');end会输出x大于2。