(一)【Matlab】Matlab基础知识

文章目录

  • 笔记开源:
  • A MATLAB系统环境
    • A.a MATLAB操作界面的组成
    • A.b MATLAB的搜索路径
  • B MATLAB数值数据
    • B.a 数值数据类型的分类(class)
    • B.b 数值数据的输出格式(format)
    • B.c 常用数学函数
      • B.c.a 函数的调用格式
      • B.c.b 常用函数的应用(sin,sind;abs;取整)
  • C 变量及其操作
    • C.a 变量与赋值语句
    • C.b 预定义变量
    • C.c 变量的管理
      • C.c.a 变量的删除和修改(who,whos)
      • C.c.b 内存变量文件(save,load)
  • D MATLAB矩阵表示
    • D.a 矩阵的建立
    • D.b 冒号表达式(linspace)
    • D.c结构矩阵和单元矩阵
      • D.c.a 结构矩阵:
      • D.c.b 单元矩阵
  • E 矩阵元素的引用
    • E.a 矩阵元素的引用方式(sub2ind,ind2sub)
    • E.b 利用冒号表达式获得子矩阵(end)
    • E.c利用空矩阵删除矩阵的元素
    • E.d改变矩阵的形状(reshape)
  • F MATLAB基本运算
    • F.a算术运算
    • F.b 关系运算
    • F.c 逻辑运算(&,|,~)
  • G 字符串处理
    • G.a 字符串的表示
    • G.b字符串的操作(strcmp;findstr;strrep)

【MATLAB专栏】

笔记开源:

关注微信公众号二进制人工智能并回复matlab,即可获取本文的md文件。
md文件编辑器:https://www.typora.io/ ,可对本文进行二次笔记。

(一)【Matlab】Matlab基础知识_第1张图片

A MATLAB系统环境

A.a MATLAB操作界面的组成

1 Matlab主窗口
(一)【Matlab】Matlab基础知识_第2张图片

  • 功能区:提供三个选项卡(主页,绘图,应用程序),各自有不同的工具可供使用。
  • 快速访问工具栏:包含一些常用按钮
  • 当前文件夹工具栏:用于实现当前文件夹的操作

2 命令行窗口
(一)【Matlab】Matlab基础知识_第3张图片
命令行窗口用于输入命令并显示命令的执行结果。在命令提示符 > > >> >>后输入命令并按下回车键,Matlab就会解释执行输入的命令并显示结果
(一)【Matlab】Matlab基础知识_第4张图片


3 当前文件夹窗口
(一)【Matlab】Matlab基础知识_第5张图片
(一)【Matlab】Matlab基础知识_第6张图片
注意:一定要先建立文件夹,再将文件夹设为当前文件夹。
(一)【Matlab】Matlab基础知识_第7张图片


4 工作区窗口
是Matlab用于存储各种变量和结果的空间,可用于变量的显示和操作。
(一)【Matlab】Matlab基础知识_第8张图片
在工作区以表格形式显示变量a与x的名称,取值等信息。在工作区还可以对变量进行保存、编辑、删除等操作。


A.b MATLAB的搜索路径

1 用户在命令行窗口输入一条命令后,MATLAB将按照一定顺序依次寻找命令对象。
顺序(当以下都同名时):
(一)【Matlab】Matlab基础知识_第9张图片
如(clear清楚工作区的全部变量):
(一)【Matlab】Matlab基础知识_第10张图片
所以定义变量名时要避免与文件名和函数名重复。


2 设置文件搜索路径
(一)【Matlab】Matlab基础知识_第11张图片

在命令行输入文件名后,MATLAB是在当前文件夹与搜索路径文件夹中寻找这个文件并执行文件内容的,所以要执行的文件必须放在这两类文件夹中。
如果两个文件夹种有同名的M文件,在命令行输入这个文件名执行顺序:当前文件夹>搜索路径文件夹


B MATLAB数值数据

B.a 数值数据类型的分类(class)

1 整形:
(一)【Matlab】Matlab基础知识_第12张图片
(一)【Matlab】Matlab基础知识_第13张图片


2 浮点型
(一)【Matlab】Matlab基础知识_第14张图片
class函数可以得到参数的数据类型。
(一)【Matlab】Matlab基础知识_第15张图片


3 复数型
(一)【Matlab】Matlab基础知识_第16张图片

real() %求复数的实部
imag() %求复数的虚部

B.b 数值数据的输出格式(format)

format 格式符  % 设置数据的输出格式

(一)【Matlab】Matlab基础知识_第17张图片
不同的格式符输出不同的数据格式。
注意:format命令只是影响数据输出的格式,而不影响数据的计算和存储。


B.c 常用数学函数

B.c.a 函数的调用格式

函数名(函数自变量的值)

函数的自变量规定为矩阵变量(标量本身是矩阵的一种特例)。
函数在运算时是将函数逐项作用于矩阵的每个元素上,所以最后运算的结果就是一个与自变量同型的矩阵。
(一)【Matlab】Matlab基础知识_第18张图片


B.c.b 常用函数的应用(sin,sind;abs;取整)

(一)【Matlab】Matlab基础知识_第19张图片
(一)【Matlab】Matlab基础知识_第20张图片
在这里插入图片描述

rem(m,n)   %求m/n的余数

(一)【Matlab】Matlab基础知识_第21张图片

isprime(n) # 判断n是否是素数,是返回1,否返回0.

(一)【Matlab】Matlab基础知识_第22张图片


C 变量及其操作

计算机处理的数据都是存放在内存单元中的,而每一个内存单元都有一个唯一的地址,程序就是通过这个地址来访问对应内存单元的。
在如Matlab这种高级语言中,只需要给每个内存单元取一个名字,然后通过这个名字就能访问每个内存单元了。

C.a 变量与赋值语句

  • 变量本质上讲是内存单元的一个抽象
  • 在Matlab中,变量名是以字母开头,后接字母、数字或下划线的字母序列,最多63个字符。
    (一)【Matlab】Matlab基础知识_第23张图片
  • 变量名区分大小写
  • 标准函数名以及命令名必须用小写字母

赋值语句两种格式

变量=表达式        % 变量结果会在命令行中显示出来
变量=表达式;	  % 变量结果不会在命令行中显示出来

例子:
(一)【Matlab】Matlab基础知识_第24张图片


C.b 预定义变量

(一)【Matlab】Matlab基础知识_第25张图片


C.c 变量的管理

C.c.a 变量的删除和修改(who,whos)

在工作区选择变量右击即可进行删除和修改。
(一)【Matlab】Matlab基础知识_第26张图片
who命令和whos命令:
who命令只显示已存在变量的名称。而whos显示信息更多。
(一)【Matlab】Matlab基础知识_第27张图片


C.c.b 内存变量文件(save,load)

用于保存Matlab工作区变量的文件叫做内存变量文件,其扩展名为.mat,也叫MAT文件,是一种标准的二进制格式文件。
save命令:创建内存变量文件
load命令:载入内存变量文件

save mydata a x   % 将a x保存在mydata.mat文件中
load mydata       % 载入mydata.mat中的变量

D MATLAB矩阵表示

D.a 矩阵的建立

(一)【Matlab】Matlab基础知识_第28张图片
(一)【Matlab】Matlab基础知识_第29张图片


D.b 冒号表达式(linspace)

1 用冒号产生行向量t:
(一)【Matlab】Matlab基础知识_第30张图片


2 用linspace函数产生行向量x:
(一)【Matlab】Matlab基础知识_第31张图片

D.c结构矩阵和单元矩阵

D.c.a 结构矩阵:

在实际应用中,经常会遇到不同类型的数据项组成的实体,例如一个学生的数据实体就包括了年龄,姓名,学号,这些数据是相互联系的。结构数据类型就可以把这些数据类型不同但逻辑上相关的数据组成一个有机的整体。

结构矩阵元素.成员名=表达式

例如: 学生这个结构数据包含三个成员,分别是年龄,姓名,学号,由结构数据构成的矩阵就是结构矩阵。结构矩阵里的每个元素都是结构数据类型的。即结构矩阵相当于一个班级,结构矩阵里的元素就是这个班级的学生,每个学生有年龄,姓名,学号三个信息(成员)。

(一)【Matlab】Matlab基础知识_第32张图片

D.c.b 单元矩阵

单元数据类型,也是把不同的数据放在一个变量中,但与结构矩阵所不同的是,结构矩阵的各个元素下还有成员,每个成员都有自己的名字,而单元矩阵的各个元素就是不同类型的数据,每个元素直接由不同类型的数据组成。
(一)【Matlab】Matlab基础知识_第33张图片

E 矩阵元素的引用

E.a 矩阵元素的引用方式(sub2ind,ind2sub)

在这里插入图片描述
(一)【Matlab】Matlab基础知识_第34张图片
如果给出的行下标和列下标大于矩阵的行数和列数,Matlab将自动扩展原来的矩阵,并将扩展后没有赋值的元素赋值为0。
(一)【Matlab】Matlab基础知识_第35张图片


(一)【Matlab】Matlab基础知识_第36张图片
(一)【Matlab】Matlab基础知识_第37张图片


(一)【Matlab】Matlab基础知识_第38张图片
(一)【Matlab】Matlab基础知识_第39张图片


E.b 利用冒号表达式获得子矩阵(end)

子矩阵是指由矩阵中一部分元素构成的矩阵。
(一)【Matlab】Matlab基础知识_第40张图片
例子:
(一)【Matlab】Matlab基础知识_第41张图片
(一)【Matlab】Matlab基础知识_第42张图片


E.c利用空矩阵删除矩阵的元素

(一)【Matlab】Matlab基础知识_第43张图片
(一)【Matlab】Matlab基础知识_第44张图片


E.d改变矩阵的形状(reshape)

在矩阵总元素保持不变的前提下,将矩阵A重新排成 m ∗ n m*n mn的二维矩阵。

reshape(A,m,n)

注意:reshape函数只是改变原矩阵的行数和列数,但并不改变原矩阵元素个数及其存储顺序。
(一)【Matlab】Matlab基础知识_第45张图片


(一)【Matlab】Matlab基础知识_第46张图片

A(:)等价于reshape(A,6,1)

F MATLAB基本运算

F.a算术运算

(一)【Matlab】Matlab基础知识_第47张图片

(一)【Matlab】Matlab基础知识_第48张图片

(一)【Matlab】Matlab基础知识_第49张图片

(一)【Matlab】Matlab基础知识_第50张图片
(一)【Matlab】Matlab基础知识_第51张图片

A^2=A*A(一)【Matlab】Matlab基础知识_第52张图片


(一)【Matlab】Matlab基础知识_第53张图片
例子:
(一)【Matlab】Matlab基础知识_第54张图片
例题:
(一)【Matlab】Matlab基础知识_第55张图片


F.b 关系运算

(一)【Matlab】Matlab基础知识_第56张图片
例题:
(一)【Matlab】Matlab基础知识_第57张图片


F.c 逻辑运算(&,|,~)

(一)【Matlab】Matlab基础知识_第58张图片
例子:
(一)【Matlab】Matlab基础知识_第59张图片
(一)【Matlab】Matlab基础知识_第60张图片


(一)【Matlab】Matlab基础知识_第61张图片
例题:
(一)【Matlab】Matlab基础知识_第62张图片


G 字符串处理

G.a 字符串的表示

(一)【Matlab】Matlab基础知识_第63张图片

(一)【Matlab】Matlab基础知识_第64张图片

(一)【Matlab】Matlab基础知识_第65张图片
要求各行字符数要相等(列数相同)。如果不等,就要用空格调节各行长度,使之数目相等。

例题:
(一)【Matlab】Matlab基础知识_第66张图片

G.b字符串的操作(strcmp;findstr;strrep)

将字符串内容作为MATLAB的命令执行
(一)【Matlab】Matlab基础知识_第67张图片


(一)【Matlab】Matlab基础知识_第68张图片


(一)【Matlab】Matlab基础知识_第69张图片(一)【Matlab】Matlab基础知识_第70张图片


(一)【Matlab】Matlab基础知识_第71张图片


图片来源(一个讲的不错的MATLAB课程):
https://www.icourse163.org/search.htm?search=%E4%B8%AD%E5%8D%97%E5%A4%A7%E5%AD%A6%20Matlab#/

你可能感兴趣的:(#,Matlab)