0
点赞
收藏
分享

微信扫一扫

路人队———钟某人的matlab的学习day2——数学与编程

你带来了我的快乐 2022-01-13 阅读 52
matlab

还记得我第一章就说过的嘛,matlab是个专业的数学计算工具,这意味着你必须掌握部分数学知识,之前的只不过是开胃小菜,接下来,我们就要开始正式的大餐了

第一章,向量

向量指的是一段有向线段,也指的是一维数值数组。matlab允许你创建行向量和列向量,列向量通过在方括号内把数值用分号(;)隔开来创建,对元素的个数没有限制。例如,要创建一个含有三个元素的列向量,我们写成:

a = [2;1;4]

而对于行向量,我们依旧使用方括号进行创建,只不过这次使用空格( )或者逗号(,)来隔开,要创建一个三元行向量,我们可以写成:

a = [2 1 4] 或者 a = [2,1,4]

我们都知道,在线性代数里面,列向量和行向量是可以互换的,当然,matlab贴心的为我们准备了这种方法,而且实现起来及其简单,就是用一个单引号,就像下图这样:

 向量最基础,最核心的部分是啥,当然是向量的计算呐,向量的加减乘除,跟第一章介绍的加减乘除其实差不多下面,我会一次性全部列举出来。

细心的你,一定会发现一个问题,为什么轮到乘法和除法时没用上向量x向量或者向量÷向量呢,因为啊,向量里面的向量互乘和互除不是一般的乘除,而是对应位置互相乘除,这个以后会进行介绍的。                                                                                                                                                      matlab允许你将两个向量组合在一起,假设有u,v两个向量各自带有m,n个元素,组合以后的向量一共有m+n个向量,其中前m个向量来自于u向量,后面n个向量来自于v向量,此时应写成:w = [u;v],就像这样:

 相应地,行向量也是这样组合的,只不过分隔符要换成逗号

有的时候,我们会想要创建一个等差数列的向量我为什么会想???,差值为q,第一个元素为x1,第二个元素为x2。此时的语法为下:

x = [x1:q:x2]

借助这个方法,我们可以计算一个函数的一系列的值。假设有 y = exp(x),其中x为等差向量,那么有:

同样的,我们也可以令y = x^2

你会发现这样一个东西:

因此,我们得写成这样:y = x .^2,注意这里是有一个点的,就像是这样:

 我们也可以linspace命令创建一个等差的行向量,格式为:linspace(a,b,n),其中a为起始元素,b为末尾元素,n为a,b之间含有几个等差元素,包括a和b。如果 不填n,那么会默认n = 100,但是无论怎么样,这中间的差值是由系统判断的,例如:

由此,我们不得不联想,如果把分隔符换成分号会怎么样,现在让我们来试试:

行吧,明显不行

除此之外,我们还允许创建n个对数值相隔相同的行向量,命令及其格式为:

logspace(a,b,n)

这行指令创建了10^a到10^b之间n个对数值等差的向量,他跟linspace一样,也是由系统判断差值,不过这里的n的默认值为50。例如:

举报

相关推荐

0 条评论