Unit 1

  1. MATLAB的中文名称:矩阵实验室
  2. MATLAB功能区的3个选项卡:主页、绘图和应用程序
  3. 命令提示符>>
  4. 转换当前文件夹cd
  5. 续行符...
  6. 注释%
  7. 命令行中使用分号不显示信息
  8. MATLAB帮助命令help用于搜索命令; lookfor用于对M文件进行关键字搜索

Unit 2

  1. 数据类型有关的函数complex(a,b)可以生成a+bi的复数;double single可以将其他类型的数据转换成对应的数据类型;real可以求一个复数的实部;imag可以求一个复数的虚部;angle可以求一个复数的辐角;conj可以求复数的共轭复数;class可以求一个数据的数据类型。
  2. 默认的数据类型是double
  3. 默认的输出格式是short
  4. format 格式符可以改变输出格式
  5. 冒号表达式e1:e2:e3e1是初始值,e2是步长,e3是终止值
  6. linspace(a,b,n)可以生成类似冒号表达式的矩阵,a是初始值,b是终止值,n为个数
  7. 序号和下标互化sub2ind(S,I,J) S是转化矩阵的行和列矩阵,I是行下标,J是列下标。ind2sub(S,D)S是是转化矩阵的行和列矩阵,D是序号
  8. length(A)求出A最长维的长度;ndims(A)给出矩阵的维数;numbel(A)给出矩阵的元素个数
  9. 利用冒号表达式获得子矩阵A(:)可以获得一个由其元素组成的列向量
  10. reshape(A,m,n)可以把矩阵A转化成m,n的矩阵(按列排)
  11. MATLAB中的变量要求:只能是字母开头、后接字母、数字或下划线
  12. 预定义变量
变量/常量描述示例/注释
数学常量与数值
pi圆周率 π (≈ 3.14159)area = pi * r^2;
i, j复数的虚数单位 (√-1)c = 2 + 3i;c = 2 + 3j;
Inf无穷大 (Infinity),例如 1/0 的结果limit_val = 1/0;
NaN非数值 (Not-a-Number),表示无意义的数学运算结果,如 0/0result = 0/0;
eps浮点数的相对精度,即从 1.0 到下一个最大浮点数之间的差值。它代表了计算机能够区分的最小数值差eps 的值通常非常小,例如 2.2204e-16
realmax系统所能表示的最大正浮点数-
realmin系统所能表示的最小正浮点数-
intmax系统所能表示的最大正整数intmax('int32') 会返回 32 位整数的最大值
intmin系统所能表示的最小负整数intmin('int32') 会返回 32 位整数的最小值
运算与结果
ans存储最近一次未赋值给变量的计算结果>> 2+2
ans = 4
逻辑值
true逻辑真,等同于 1is_valid = true;
false逻辑假,等同于 0is_valid = false;
系统与信息
computer返回运行 MATLAB 的计算机类型可能会返回 'PCWIN64', 'GLNXA64', 'MACI64' 等
version返回 MATLAB 的版本信息字符串v = version;
date以字符串形式返回当前日期>> date
ans = '13-Nov-2025'
clock以六元素向量形式返回当前时间:[年, 月, 日, 时, 分, 秒]>> c = clock
  1. 保存和加载save filename [变量表] [-append] [-ascii]可以保存文件名;load filename [变量表] [-ascii]

  2. 预定义变量:好的,MATLAB 提供了极为丰富的内置数学函数,能够满足从基础计算到高级科研的各种需求。下面将这些常用函数以表格形式进行分类整理。

  3. 常用数学函数

函数描述示例
+, -, *, /, \加、减、乘、右除(a/b)、左除(a\b,相当于b/a5 + 3, a * b
^power(a, b)幂运算 (ab)2^3power(2, 3)
sqrt(x)计算 x 的平方根。sqrt(16) 结果为 4
nthroot(x, n)计算 x 的 n 次方根nthroot(8, 3) 结果为 2
abs(x)计算 x 的绝对值或复数的模。abs(-5) 结果为 5
sign(x)符号函数,x>0 返回 1,x<0 返回 -1,x=0 返回 0。sign(-8) 结果为 -1

MATLAB 的标准三角函数默认使用弧度作为单位。 如果需要使用角度,可以在函数名后加 d,例如 sind

函数 (弧度)函数 (角度)描述示例 (弧度)
sin(x)sind(x)正弦函数sin(pi/2) 结果为 1
cos(x)cosd(x)余弦函数cos(pi) 结果为 -1
tan(x)tand(x)正切函数tan(pi/4) 结果为 1
asin(x)asind(x)反正弦函数asin(1) 结果为 pi/2
acos(x)acosd(x)反余弦函数acos(-1) 结果为 pi
atan(x)atand(x)反正切函数atan(1) 结果为 pi/4
atan2(y, x)atan2d(y, x)四象限反正切atan2(-1, -1) 结果为 -2.3562
函数描述示例
exp(x)自然指数 exexp(1) 结果为 2.7183 (e 的值)
log(x)自然对数 (ln x)。log(exp(5)) 结果为 5
log10(x)常用对数 (以 10 为底,log₁₀ x)。log10(100) 结果为 2
log2(x)以 2 为底的对数 (log₂ x)。log2(8) 结果为 3
函数描述示例
complex(a, b)创建一个复数 a + biz = complex(3, 4)
real(z)返回复数 z 的实部。real(3 + 4i) 结果为 3
imag(z)返回复数 z 的虚部。imag(3 + 4i) 结果为 4
abs(z)返回复数 z 的模(幅值)。abs(3 + 4i) 结果为 5
angle(z)返回复数 z 的相角(以弧度为单位)。angle(1 + 1i) 结果为 0.7854
conj(z)返回复数 z 的共轭复数。conj(3 + 4i) 结果为 3 - 4i
函数描述示例
round(x)四舍五入到最近的整数。round(3.5) 结果为 4, round(3.4) 结果为 3
floor(x)向下取整,返回不大于 x 的最大整数。floor(3.9) 结果为 3, floor(-3.2) 结果为 -4
ceil(x)向上取整,返回不小于 x 的最小整数。ceil(3.1) 结果为 4, ceil(-3.9) 结果为 -3
fix(x)向零取整(截断小数部分)。fix(3.9) 结果为 3, fix(-3.9) 结果为 -3
mod(a, m)模运算,返回 a 除以 m 的余数mod(10, 3) 结果为 1
rem(a, m)求余运算,结果的符号与被除数 a 相同。rem(10, -3) 结果为 1, rem(-10, 3) 结果为 -1
如果要对矩阵进行函数:在其后加m即可,如sqrtm logm expm funm
  1. 矩阵除法A\B=inv(A)*B B/A=B*inv(A)
  2. 点运算:意味着对应的元素进行运算。
  3. 关系运算~=不等号==等于号
  4. 逻辑运算&与; |或;~非 ;或使用and(a,b) or(a,b) not(a,b) xor(a,b)表示与、或、非、异或
  5. 字符串相关eval(s)可以执行字符串的内容;abs/double可以把字符串转化成acsii码;char()可以把acsii码转化成字符串;strcat(s1,s2)可以连接字符串;strcmp(s1,s2)可以比较s1和s2;findstr(s1,s2)可以返回短字符串在长字符串中的开始位置(列向量)
  6. 删除结构体成员rmfield(a,'成员')
  7. 单元数据:⚠️矩阵元素要用大括号; b(1)=[]是删除元素,b{1}=0是把元素置成空矩阵

Unit3

  1. 特殊矩阵zeros()全0矩阵;ones()全1矩阵;eye产生单位矩阵;rand产生(0,1)均匀分布的随机矩阵;randn产生均值为0,方差为1的标准正态分布矩阵。
  2. 奇怪的矩阵:魔方矩阵:magic;范德蒙行列式vander;希尔伯特行列式:hilb;伴随矩阵:compan
  3. 对角阵和三角阵diag(A)提取A的主对角线元素,diag(A,k)提取第k条对角线,diag(V)以V为对角线构造一个对角阵,diag(V,k)以V为第k条对角线;triu(A)求矩阵A的上三角阵;triu(A,k)求矩阵A的第k条对角线以上的元素;tril求矩阵A的下三角矩阵,其余类似上三角矩阵。
  4. 矩阵变换.'转置,'是共轭转置,rot90(A,k)把矩阵A旋转90的k倍,filplr(A)对矩阵A实施左右翻转,filpud(A)对矩阵实施上下翻转
  5. 矩阵的求值inv(A)矩阵求逆;det(A)求A的行列式;rank(A)求秩;trace(A)求矩阵的迹;norm(V,1) norm(V)或norm(V,2) norm(V,inf)是求各范数的函数;cond(V,1) cond(V)或cond(V,2) cond(V,inf)是求各条件数的函数
  6. 矩阵特征值V=eig(A)求矩阵A的全部特征值,[V,S]=eig(A)可以求A的全部特征值,构成对角阵D,X是对应的特征向量
  7. 稀疏矩阵A=sphere(S)是把S转化成稀疏存储方式的A

Unit4

  1. 打开文件edit filename
  2. M文件:脚本文件和函数文件
  3. 输入input('提示词')
  4. 输出disp(输出项)
  5. 暂停pause(延迟秒数)
  6. if语句
if ...
else ...
end
if 
elseif 
else  
end
  1. swtich语句
switch 表达式
case 结果
case 结果
otherwise
end
  1. try语句:
try 
catch
end
  1. for语句
for 循环变量=表达式
	循环语句
end
  1. while语句
while 条件
	循环语句
end
  1. break语句和continue语句:break用于终止循环;continue用于跳过循环语句。
  2. 函数文件的基本结构:
function[]=函数名(输入形参表)
注释
语句
  1. nargin记录输入实参的个数,nargout
  2. 全局变量global 变量名
  3. 内联函数f=inline(a)
  4. 匿名函数句柄=@(输入参数) 匿名函数表达式
  5. 程序调试dbstop设置断点,dbclear清除断点,dbcont恢复程序的执行,dbstep执行一行或者多行语句,debquit推出调试模式

Unit5

  1. 二维图像plot(x,y) plot(x) plot(x1,y1,x2,y2,...其中还可以加上选项,如线型、颜色、标记符号
  2. 双纵坐标plotyy(x1,y1,x2,y2)
  3. 图像标注title图形名称标题 ;xlabelx轴说明;ylabely轴说明;text批注;legend添加图例
  4. 坐标控制axis equal坐标等长;axis square正方形坐标系;axis auto 默认设置;axis on/off显示或者取消坐标系。
  5. 网格控制grid on/off
  6. 边框控制box on/off
  7. 图形保持hold on/off保持原有图形或者刷新
  8. 图形分割subplot(m,n,p)分割成m x n的绘图区,p为当前工作区(按行优先)
  9. 自适应采样绘图函数fplot(filename,lims,选项)
  10. 其他坐标系:对数坐标图形semilogx semilogy loglog可以绘制半对数和全对数图像;polar(theta,rho,选项)极坐标
  11. 特殊二维图像bar(x,y,style)条形图,style可选grouped或者stacked;hist(y,x) rose(theta,x)直方图;pie(x,explode)扇形图
  12. 三维图形plot3(x1,y1,x2,y2)
  13. 平面平面坐标矩阵的生成meshgrid()
  14. 绘制三维曲面的函数mesh(x,y,z,c)三维网格图,c是颜色;surf(x,y,z,c)是三维曲面,c是颜色。
  15. 特殊三维曲面[x,y,z]=sphere三维球面;[x,y,z]=cylinder(R,n)三维柱面
  16. 图形处理imread读取该图形;image图像显示

Unit 6

  1. 最值max(X)求X每列的最大值,返回一个行向量。[Y,U]=max(A)返回一个行向量求X的最大值到Y,U记录每列最大值的行号;min类似
  2. 求和和求积sum(X)求向量X的和,sum(A,dim)没有dim默认是求列的和,返回一个行向量,dim是1、2,1时等同于sum(A);prod求积,用法类似
  3. 平均值和中值mean(A)用法与sum类似,求算数平均值;求中值用median,用法类似
  4. 累加和累乘cumsum cumprod
  5. 标准差和相关系数std(A,flag,dim)用法和max类似,flag是选择标准差形式;var求方差
  6. 相关系数corrcoef
  7. 排序[Y,I]=sort(A,dim,mode)dim默认取1,取1按列排,取2按行排,mode可选ascend 升序;descend降序;默认取ascend
  8. 多项式计算conv多项式乘法;deconv多项式除法;polyder(P)求导;polyval(P,x)用于求值;polyvalm矩阵求值;roots多项式求根
  9. 一维数据插值interp1(X,Y,X1,method)
  10. 二维数据插值interp2(X,Y,X1,method)
  11. 曲线拟合polyfit(X,Y,m)m是拟合多项式的次数