• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

02 - MATLAB基础

原作者: [db:作者] 来自: [db:来源] 收藏 邀请


注:2 ~ 6节为数值型数据;第7节为字符型数据。

一、matlab系统环境

1、下图是命令行窗口,很简单。
注意的是…表示续行符,以在下一行接着上一行输入命令。

2、你的操作都在当前文件夹窗口里面文件夹。当前文件夹窗口为下图圆圈所圈窗口。
注意的是cd的地址格式:cd e:\work(假设e盘下的work文件夹)

3、注意工作区窗口和命令行窗口的关系。
注意的是:在工作区窗口可以对变量进行保存、编辑、删除操作。

4、matlab的搜索路径
也就是说:
(1)如果变量sin与内部函数(如sin())同名,那么代表的是变量。尽量不要二者同名。
(2)如果你想要执行M文件,如果当前文件夹下和文件搜索路径文件夹下都有名为M的文件,则先搜索当前文件夹。

设置文件搜索路径的方法:

二、MATLAB数值数据

1、MATLAB的数值数据类型,是根据内存单元进行范围划分的,分为:
整型、浮点型、复数型
2、整型
按字节数划分

整型中的、有无符号之间的、转换:


3、浮点型
matlab默认数值数据为浮点型

class()查看数据类型
matlab默认数值数据为浮点型

4、复型


5、数值数据输出格式
注意format仅影响的是输出数据的格式
注:第二个50/3是默认格式,结果为short型,因此小数位为4位。
6、常用的数学函数

例子如下图:

接着看常用函数的应用






注:x=1:100表示1到100的数。find()把为1的k的序号保存到向量k1。p把x(k1)中序号为k1的序号给输出。

二、变量与赋值

变量名只能以字母开头。
matlab区分变量名的大小写。
标准函数名和命令名一般用小写字母。

举例:

预定义变量,我们在使用时尽量不要对预定义变量进行赋值(比如你在以前写程序时常把i作为循环变量是吧)。
注意:ans是你只输入一个表达式,那么结果就默认给了ans。
NaN非数,比如,x坐标是0-20,你只想要0-10,那么把11-20设为NaN就可以了。

内存变量文件的作用是,把如果你想让一些变量永久的保存下来方便以后使用,那你可以把变量写入.mat文件。

对下图的解释:
save mydata a x意思是把变量a和x存到mydata.mat文件。
下次打开matlab时,如果用到a和x变量,你可以执行load mydata

四、MATLAB矩阵的表示

1、矩阵建立
方法一

方法二
方法三

2、行向量建立
方法一

方法二

3、结构矩阵和单元矩阵
先看结构矩阵,结构矩阵的每个元素是同一种类型的,但是每一个元素再往下一级却是不同类型的数据。
你可以想想有三个学生构成一个矩阵,每个学生分别有自己的学号、姓名、成绩。如下图举例(注意a(1)、a(2)、a(3)为同一类型)。
我们需要为结构矩阵的每个成员赋值

再来看单元矩阵
其和结构矩阵不同之处在于,其元素直接是由不同类型的数据组成的。
对于单元矩阵并注意:把所有元素用大括号括起来。

五、矩阵元素的引用

1、通过下标引用,如下图。
值得注意的是,比如下图A(4,5)超出了A矩阵的范围,那么Matlab会自动扩展矩阵范围,如下图。

2、通过序号引用。注:这里的序号不是(行号,列号),而是:
A(1)、A(2)、A(3)、A(4)、A(5)、A(6)分别表示1、4、2、5、3、6.
也就是说从第一列从上往下排序,以此类推。

上面两用引用只是表示形式不一样。而这二者是可以转换的:
注:下图中的S可以通过size()获得

转换举例如下:
注:size(A)表示矩阵A的向量,其包含两个元素,分别是行数2和列数3。


对此举例:
下图:序号1、3、5的坐标为(1,1)、(3,1)、(2,2)
[3、3]代表3行3列的矩阵

接下来看子矩阵:

举例:


接下来矩阵的删除方法:

接下来是改变矩阵的形状(行和列数):

下图:
注意,存储顺序是和序号排序的顺序一样的,从第列竖着往下数,依此类推。

接下来看向量堆叠(可认为是向量行该改变的特殊一种):

六、MATLAB基本运算

包括算术运算、关系运算和逻辑运算
1、算术运算

加法运算
(同型指的是行和列的维数分别相同)

乘法:

除法:
注:
(1)奇异矩阵是bai线性代数的概念du,就是该矩阵的秩不是满秩。首先,看这个zhi矩阵是不是dao方阵(即行数和列数相等的矩阵。若行数和列数不相等,那就谈不上奇异矩阵和非奇异矩阵)。
然后,再看此矩阵的行列式|A|是否等于0,若等于0,称矩阵A为奇异矩阵;若不等于0,称矩阵A为非奇异矩阵。 同时,由|A|≠0可知矩阵A可逆,这样可以得出另外一个重要结论:可逆矩阵就是非奇异矩阵,非奇异矩阵也是可逆矩阵。 如果A为奇异矩阵,则AX=0有无穷解,AX=b有无穷解或者无解。如果A为非奇异矩阵,则AX=0有且只有唯一零解,AX=b有唯一解。
(2)非奇异矩阵:
若n阶方阵A的行列式不为零,即 |A|≠0,则称A为非奇异矩阵或满秩矩阵,否则称A为奇异矩阵或降秩矩阵。

对于矩阵来说左除和右除不一样,而对于标量来说左除和右除具有相同的结果值。如下所示。

关于矩阵的乘方:
你要是不懂矩阵的n次方如何运算,请看李永乐老师讲的方法:
https://zhidao.baidu.com/question/942304123602317652.html

好,接下来将MATLAB特有的点运算:

下面举例,注意点运算和算术运算的区别


2、下面讲关系运算符:


举例:
下图中P矩阵为1的位置即A矩阵为偶数的元素位置

3、逻辑运算
(注意这里与C语言的区别:
C的逻辑运算符是! && ||
Matlab的逻辑运算符是~ & |
C的~ & |分别代表按位取反、按位与、按位或)。



看个例子:

七、字符串处理

注意:咱们前几节讲的都是数值型数据,接下来讲字符型数据
字符可以用一个向量表示:



下面看一个例子:
注:ch(end????1)是冒号表达式,表示:从end最后开始取,步长为-1,取到第一个数
‘a’ - ‘A’ 为a的ASCII减去A的ASCII,即32。

接下来看字符串的操作
y = eval(m)表示把一个字符向量赋值给一个变量y



方法一:利用关系运算符:
注:字符串比较是按照ASCII码

方法二:利用字符串比较函数:

举例:

接下来看字符串的查找与替换函数:

举例:
注:3、6表示is的开始位置

本章至此完。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
MATLAB注释快捷键、绘图选项发布时间:2022-07-18
下一篇:
MATLAB中的zpk()函数、nyquist()函数用法发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap