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

发布时间 2023-04-25 17:21:53作者: Ericup

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、初学者要把下面的基本使用规则,牢记于心:

eps —— 在MATLAB编程中,对于除法运算,为了避免分母为零的情况出现,将分母的数与eps相加。
输入时,标点必须是英文状态下的

大多数情况下,MATLAB对空格不予处理

小括号代表运算级别,中括号用于生成矩阵,大括号用于构成单元数组

分号 ; 的作用:有;不显示运算结果的字符,无;就显示运算结果,但对图形窗口不起作用。分号也用于区分行(矩阵)。

逗号 , 的作用:函数参数分隔符,也用于区分行,显示运算结果,当然不加标点也显示运算结果

冒号 : 多用于数组

续行号 ... 不能放在等号后面使用,不能放在变量名中间使用,起作用时默认显蓝色

双引号 'string' 是字符串的标识符

感叹号 ! 用于调用操作系统运算

百分号 % 是注释符号,对于百分号后面直到行末的语句,matlab跳过执行。另外还可用于代码块注释,即对多行代码一次注释, 格式为:(注意%{ 和%}都要单独成行)

      %{

       %}

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

特殊变量和常量:ans——储存结果(结果缺少变量名时),,pi(圆周率 3.1416),eps(浮点相对精度),inf(无穷大 1/0) NaN(不定量 0/0 ) i(j)^2=-1 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 后缀也可省略)。(具体地,可以执行doc save来查看save如何使用。)  例如:

      save var2 x y ;  —— 将变量x和y保存在文件var2.mat中。

      load var2

      在 save 和 load 命令中,文件名、变量名可以用字符串来表示,这时将 save 和 load 看作函数来调用:(推荐使用这种形式)

      save( 'var2', 'x', 'y' );  % 功能与  save var2 x y ;  相同。

      s = 'var2';

      load( s ) % 功能与  load var2  相同。

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常用函数

对于一行一列矩阵,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、if语句:

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

2、循环结构(1)for 循环

%for 循环变量 = a?️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. 乘号 * 总是不能省略的,除了表示复数,比如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 文件;如果找不到这一文件,则报错。