matlab使用方法大全(收集ing)

1、help命令,格式help+函数名。

局部上:

序号 语句 含义
(1) help plot 二维绘图的帮助
(2) help elfun 基本函数——初等函数的帮助
(3) help exp 指数函数的简单帮助
(4) doc exp 网页格式的帮助
(5) Lookfor 模糊查询
intergral 模糊查找积分的函数
(6) Lookfor four 模糊查找傅里叶级数,补全fourier
(7) doc eigs 求矩阵的特征值和特征向量,已知特征值和特征向量求一下最大模的矩阵
(8) 其他帮助 可以在matlab上去搜索相应的pdf帮助文件

整体上

序号 语句 含义
(1) help+函数名或help+函数类名 精确查询
(2) helpwin 打开帮助窗口
(3) helpwin+函数名 精确查询
(4) helpdesk 打开帮助窗口
(5) doc 打开帮助窗口
(6) doc+函数名 打开帮助窗口, 精确查询
(7) lookfor+关键字 matlab中的谷歌,模糊查询

2、基本使用规则:

序号 语句 含义
(1) eps 在MATLAB编程中,对于除法运算,为了避免分母为零的情况出现,将分母的数与eps相加
(2) 标点 输入时,标点必须是英文状态下的
(3) 空格 大多数情况下,MATLAB对空格不予处理
(4) 括号 小括号代表运算级别,中括号用于生成矩阵,大括号用于构成单元数组
(5) 分号 ; 有;不显示运算结果的字符,无;就显示运算结果,但对图形窗口不起作用。分号也用于区分行(矩阵)
(6) 逗号 , 函数参数分隔符,也用于区分行,显示运算结果,当然不加标点也显示运算结果
(7) 冒号 : 多用于数组
(8) 续行号 ... 不能放在等号后面使用,不能放在变量名中间使用,起作用时默认显蓝色
(9) 双引号 ‘’ 'string' 是字符串的标识符
(10) 感叹号 ! 用于调用操作系统运算
(11) 百分号 % 是注释符号,对于百分号后面直到行末的语句,matlab跳过执行。另外还可用于代码块注释,即对多行代码一次注释, 格式为:(注意%{ 和%}都要单独成行)

3、变量名:任意字母数字下划线组成,开头必须为字母,区分大小写,变量字符间不能留空格。

常见变量名 含义
ans 储存结果(结果缺少变量名时)
pi 圆周率 3.1416
eps 浮点相对精度
inf 无穷大 1/0
NaN 不定量 0/0
margin 检测生产的函数的输入的变量个数
nargout 所用函数输出的变量的个数
realmin(realmax) 最小(大)可用实数
check =a 检查a的值
whos 查找所有的变量以及所占的空间

4、常用的命令

语句 含义
clc 命令窗口中清除所有代码
clear command 清屏
clf 清理图形窗口 ----
clear figure 清理关闭figure窗口
close 关闭最近的figure窗口
close all 关闭所有figure窗口
clear 清理工作空间(workspace)中的所有变量
clear x; 清理一个变量x
clear+变量名 清理工作空间中的指定变量(如果是多个变量,用空格隔开) ----
edit+函数名 查看或编辑源文件
who 显示工作空间中的所有变量名(仅展示出变量的名字)
whos 显示工作空间中的所有变量名及其属性(大小、字节数、数据类型,等等) ----
which+函数名 证实该函数是否在当前路径
what 列出当前路径的所有matlab文件
load 加载外部文件 ----
save 存变量到外部文件。如果save后面没有任何东西,则默认将工作空间中的所有变量保存在文件matlab.mat中
save 文件名 指定变量列表——将指定变量保存在文件中(其中文件名不需要用单引号括起来,文件名的 .mat 后缀也可省略)
save var2 x y ; 将变量x和y保存在文件var2.mat中
save( 'var2', 'x', 'y' ); 功能与 save var2 x y ; 相同

5、矩阵的输入:

(1)输入矩阵时a=[ ]元素之间用空格或者是逗号分开 用分号换行或者是回车换行
(2)t=[1:0.1:10] 产生从1到10的步长为0,1的行矩阵
(3)t=linspace(n1,n2,n) 产生从n1到n2的n个等差数列
diff(t) ——求差分(求元素之间的间隔) fortmat short long 浮点精度
(4)t=logspace(n1,n2,n)在10n1~10n2之间生产n个数 ——等比数列
(5)t(2:end). /t(1:end-1) ——可以借此完成错位相除
(6)特殊的矩阵
1)单位阵(eye(m)、eye(m,n)——出现最大单位阵其余部分为0、eye(size(a)) )
2)所有元素都为1的矩阵:Ones(n)、ones(m, n)ones(sizes(a))
3)所有元素都为零的矩阵:Zeros(n) zeros(m,n)zeros(sizes(a))
4)空矩阵 q=[ ]不占空间 a(:,3)=[ ]表示删除第三列(a(3,:)=[ ] 删除第3行) 同时也可以用来记录数据
5)随机数矩阵——用于验证模型:
rand(m,n) 产生m×n矩阵,其中的元素是[0,1]上均匀分布的随机数。
normrnd(mu,sigma,m,n) 产生m×n矩阵,其中的元素均值为mu,标准差为sigma的正态分布的随机数。(mvnrnd——多维)
exprnd(mu,m,n) 产生m×n矩阵,其中的元素是服从均值为mu的指数分布的随机数。
poissrnd(mu,m,n) 产生m×n矩阵,其中的元素是服从均值为mu的泊松(Poisson)分布的随机数。
unifrnd(a,b,m,n) 产生m×n矩阵,其中的元素是服从区间[a,b]上均匀分布的随机数。
6)求全排列:
randperm(n)产生1到n的一个随机全排列。
perms([1:n])产生1到n的所有全排列。

6、冒号运算符构造向量:

格式:向量名:a🅱️c(初值:步长:终值),从a以b为间隔取值到c。若形式为“a:c”代表间隔为1。

7、矩阵的运算,MATLAB是基于矩阵运算的,一个数便是1×1的矩阵

例:x = [1:3]; x=[1:3]'(转置符号)

复制 repmat(a,3 ,1)将a的行复制三遍列复制一遍——写代码的时候哟多注意,避免出错

8、冒号来构造矩阵:

9、提取矩阵的元素:

A(2,3):A矩阵第二行第三列数值;
A(1,:):第一行数;
A(2:3,4:5):第二行到三行,四到五列;
A(1:2:4,:):以2为间隔,1,3行数

矩阵的替换:
B=[1 2 3 ;4 5 6; 7 8 9];
B(2,2)=1 B=[1 2 3 ; 4 1 6; 7 8 9]
B(2,:)=[ ] B=[1 2 3; 7 8 9]

10、MATLAB常用函数






flipud():实现对矩阵的上下翻转

对于一行一列矩阵,sum(A),max(A),min(A)便是求这一列的对应数值;
而对于多行多列时,sum(A),max(A),min(A)是对矩阵A列的运算;
sum(A,2)默认行求和; sum(A,1)等价sum(A);
max(A,2)矩阵和2进行比较,min(A,[ ],2)行内进行比较;
max和min用法相同;min(A,[ ],1)等价于min(A)

11、常见运算:注意乘号使用,我们一般使用的时.*。注意点乘和点除与乘和除的区别

12、关系运算符

符号 含义
== 等号
~= 不等号
<= 小于等于 ----
>= 大于等于

​​13、逻辑运算:

& 逻辑与; | 逻辑或; ~ 逻辑非; xor 异或; any 有非零元则为真; all 所有元素非零则为真。

14、常用语句

1、if语句:


注意:&和&&都表示逻辑与,两者区别:(1)&适用于矩阵间的逻辑运算,&&不适用,只适用于单个元素;(2)比如 A&B/A&&B,&需要同时验证AB,而A为真时&&不需要验证B,运算量比较大的时候,&&节省时间。

2、循环结构

(1)for 循环
%for 循环变量 = a:b:c(初值:步长:终值)
%  循环体语句
%end
%计算10以内的奇数和:
tot = 0;
for i=1:10
    if mod(i,2)%取模,求余数
        tot =tot+i;
    end
end
(2)while循环
%  while  条件
%      循环体语句
%  end
%  后数等于前两数之和
f = [1 1];i=1;
while f(i+1)<=1000,
    f(i+2)=f(i)+f(i+1);
    i=i+1;
end
f

15、时间函数:

序号 语句 含义
(1) t = datetime 返回对应于当前日期和时间的标量datetime数组
(2) t = datetime(relativeDay) 使用由relativeDay指定的日期。 相对天数输入可以是'今天','明天','昨天'或'现在'
(3) t = datetime(DateStrings) 根据代表时间点的DateStrings中的文本创建一个datetime值数组
(4) t = datetime(DateStrings,'InputFormat',infmt) 使用infmt指定的格式解释日期字符串。 DateStrings中的所有值都必须具有相同的格式
(5) t = datetime(DateVectors) 从DateVectors中的日期向量创建日期时间值的列向量
(6) t=datetime(Y,M,D) 为Y,M和D(年,月,日)数组的对应元素创建日期时间值数组,数组的大小必须相同(或任何一个都可以是标量),可以将输入参数指定为日期向量[Y,M,D]
(7) t=datetime(Y,M,D,H,MI,S) 为Y,M,D,H,MI和S(年,月,日,时,分和秒)数组的对应元素创建一个datetime值数组,数组的大小必须相同(或任何一个都可以是标量),可以将输入参数指定为日期向量[Y,M,D,H,MI,S]
(8) t=datetime(Y,M,D,H,MI,S,MS) 为Y,M,D,H,MI,S和MS(年,月,日,小时,分钟,秒和毫秒)数组的对应元素创建一个datetime值数组,数组的大小必须相同(或任何一个都可以是标量)
(9) t=datetime(X,'ConvertFrom',dateType) 将X中的数值转换为datetime数组为,dataType参数指定X中值的类型

2、字符串中的日期和时间
从两个字符串的单元格数组创建一个datetime数组。

DateStrings = {'2021-01-25';'2020-12-31'};
t = datetime(DateStrings,'InputFormat','yyyy-MM-dd')

t中的日期时间值使用默认格式显示,而不使用输入日期字符串的格式显示。

3、根据年,月和日值的各个数组创建日期时间数组。
创建包含年份值Y和日期值D的示例数字数组。在这种情况下,月份值M是标量。

% Create sample numeric arrays of year values Y and day values D. In this case, the month value M is a scalar.
Y = [2014;2013;2012];
M = 01;
D = [31;30;31];
% Create the datetime array.
t = datetime(Y,M,D)
% Specify a custom display format for the output, using the Format name-value pair argument.
t = datetime(Y,M,D,'Format','eeee, MMMM d, y

16. 其他需要注意的点

  1. 乘号 * 总是不能省略的,除了表示复数,比如2+3i时可以省略
  2. 除号有 / 或 \ ,它两个的关系是:a除以b表示为a/b,或 b\a
  3. 等号 = 用于赋值
  4. 双等号 == 表示数学意义上的等号
  5. 主窗口(命令行窗口)(Command Window)里面,输入时,换行用Shift+Enter
  6. 主窗口(Command Window)里面,运行程序,执行命令用Enter
  7. 矩阵中用圆括号表示下标,单元数组(cell)用大括号表示下标
  8. 函数式M文件的文件名,在MATLAB主窗口下不区分大小写,
    函数式M文件中,变量都是局部变量
    脚本式M文件中,变量都是全局变量
  9. MATLAB搜索路径:
    MATLAB通过搜索路径来查找M文件。因此,MATLAB的系统文件、Toolboxes工具箱函数、用户自己编写的M文件等都应该保存在搜索路径中。当用户输入一个标识符(例如Value)时,MATLAB按下列步骤处理:
    (1)检查 Value 是否为变量
    (2)检查 Value 是否为内部函数
    (3)在当前的工作目录下是否存在 Value.m 文件
    (4)在MATLAB搜索路径中是否存在 Value.m 文件
    如果在搜索路径中存在多个 Value.m 文件,则只执行第一个 Value.m 文件;如果找不到这一文件,则报错。
posted @ 2023-04-25 17:17  Ericup  阅读(3108)  评论(0)    收藏  举报