MATLAB知识点整理(1)

MATLAB基本操作与矩阵运算

算数运算

基本算术

加法名称
+加法
sum数组元素总和
cumsum累积和
减法名称
-减法
diff差分和近似函数
乘法名称
.*乘法
*矩阵乘法
prod数组元素的乘积
除法名称
./数值右除
.\数组左除
/对线性方程组xA=B求解x
\对线性方程组Ax=B求解x
名称
.^按元素求幂
^矩阵幂
模除法和舍入名称
mod除后的余数(取模运算)
rem除后的余数
ceil朝正无穷大四舍五入
fix朝零四舍五入
floor朝负无穷大四舍五入
round四舍五入为最近的小数或整数

数组和矩阵运算

数组运算

运算符说明
+A+B 表示将 A 和 B 加在一起(+A表示返回A)
-A-B表示从A中减去B(-A表示对A的元素求反)
.*A.*B 表示 A 和 B 的逐元素乘积
.^A.^B 表示包含元素 A(i,j) 的 B(i,j) 次幂的矩阵
./A./B 表示包含元素 A(i,j)/B(i,j) 的矩阵
.\A.\B 表示包含元素 B(i,j)\A(i,j) 的矩阵
.’A.’ 表示 A 的数组转置。对于复矩阵,这不涉及共轭

矩阵运算

运算符说明
*C = A*B 表示矩阵 A 和 B 的线性代数乘积。A 的列数必须与 B 的行数相等
\x = A\B 是方程 Ax = B 的解。矩阵 A 和 B 必须拥有相同的行数
/x = B/A 是方程 xA = B 的解。矩阵 A 和 B 必须拥有相同的列数。用左除运算符表示的话,B/A = (A’\B’)’
^A^B 表示 A 的 B 次幂(如果 B 为标量)。对于 B 的其他值,计算包含特征值和特征向量
A’ 表示 A 的线性代数转置。对于复矩阵,这是复共轭转置

逻辑运算

函数功能
&计算逻辑 AND
~计算逻辑 NOT
any确定任何数组元素是否为非零
false逻辑 0(假)
find查找非零元素的索引和值
islogical确定输入是否为逻辑数组
logical将数值转换为逻辑值
true逻辑值 1(真)

输入命令

函数

函数说明
ans最近计算的答案
clc清空命令行窗口
format设置命令行窗口输出显示格式
iskeyword确定输入是否为 MATLAB 关键字
clear从工作区中删除项目、释放系统内存
disp输出命令
format设置输出格式
取消输出
q停止输出
crtl+c停止执行

矩阵和数组

创建和合并数组

函数说明
zeros创建全零数组
ones创建全部为 1 的数组
rands均匀分布的随机数
true逻辑值 1(真)
false逻辑 0(假)
eye单位矩阵
diags创建对角矩阵或获取矩阵的对角元素
blkdiag分块对角矩阵
repmat重复数组副本

创建网格

函数说明
linspace生成线性间距向量
logspace生成对数间距向量
meshgrid二维和三维网格
ndgridN 维空间中的矩形网格

确定大小、形状和排序

函数说明
length最大数组维度的长度
size数组大小
isempty确定数组是否为空

重构和重新排列

函数说明
sort对数组元素排序
sortrows对矩阵行或表行进行排序
flip翻转元素顺序
fliplr将数组从左向右翻转
flipup将数组从上向下翻转
transpose转置向量或矩阵
reshape重构数组

数据类型

创建数值变量

函数说明
single单精度数组
int88 位有符号整数数组
int1616 位有符号整数数组
int3232 位有符号整数数组
int6464 位有符号整数数组
uint88 位无符号整数数组
uint1616 位无符号整数数组
uint3232 位无符号整数数组
uint6464 位无符号整数数组

在数值类型之间转换

函数说明
cast将变量转换为不同的数据类型
typecast在不更改基础数据的情况下转换数据类型

查询类型和值

函数说明
isinteger确定输入是否为整数数组
isfloat确定输入是否为浮点数组
isnumeric确定输入是否为数值数组
isreal确定数组是否为实数数组
isfinite确定哪些数组元素为有限
isinf确定哪些数组元素为无限值
isnan确定哪些数组元素为 NaN

创建、串联和转换

函数说明
string字符串数组
strings创建不包含字符的字符串数组
join合并字符串
char字符数组
cellstr转换为字符向量元胞数组
blanks创建空白字符数组
strcat水平串联字符串
append合并字符串
convertCharsToStrings将字符数组转换为字符串数组,其他数组不变
convertStringsToChars将字符串数组转换为字符数组,其他数组不变
convertContainedStringsToChars在元胞数组或结构体的任何级别转换字符串数组
double双精度数组
string字符串数组
str2double将字符串转换为双精度值
num2str将数字转换为字符数组
strfind在其他字符串中查找字符串
sscanf从字符串读取格式化数据
replace查找并替换一个或多个子字符串
strcmp比较字符串
strcmpi比较字符串(不区分大小写)
strncmp比较字符串的前 n 个字符(区分大小写)
strncmpi比较字符串的前 n 个字符(不区分大小写)

循环及条件语句

函数说明
if, elseif, else条件为 true 时执行语句
for用来重复指定次数的 for 循环
switch, case, otherwise执行多组语句中的一组
try, catch执行语句并捕获产生的错误
while条件为 true 时重复执行的 while 循环
break终止执行 for 或 while 循环
continue将控制权传递给 for 或 while 循环的下一迭代
end终止代码块或指示最大数组索引
pause暂时停止执行 MATLAB
return将控制权交还给调用脚本或函数

关于MATLAB基本操作与矩阵运算大概这些,当然这些只是一些比较常见的,需要多加练习才可以完全掌握,具体的用法可以在命令行窗口中打下help+function 即可获取函数的具体用法,也可以在mathworks的官网中获得,系统性地学习可在B站学习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值