matlab基础训练—表达式
⽬录
变量
现在市⾯上存在着许许多多的编程语⾔,这些编程语⾔会提供数学表达式,matlab这门语⾔也提供了数学表达式,但与其它编程语⾔不⼀样的是:matlab的表达式涉及整个矩阵。
变量名称
matlab不需要任何类型声明或维度说明。当matlab遇到新的变量名称时,它会⾃动创建变量,并分配适当⼤⼩的存储。如果此变量已存在,matlab会更改其内容,并根据需要分配新存储。
a = 3
当我们输⼊上式并且执⾏后时,我们可以发现⼯作区⾥⾯出现了⼀⾏图标:
这就表明我们创建了⼀个名为a的1×1矩阵,并将值3存储在该矩阵的单⼀元素中。
当我们要查看分配给任何变量的矩阵,只需输⼊变量名称即可。
whos a
执⾏结果
变量名称命名规则
变量名称包括⼀个字母,后⾯可以跟随任意数⽬的字母、数字或下划线。并且matlab区分⼤⼩写:它可以区分⼤写和⼩写字母,就⽐如说A 和a不是相同变量。
尽管matlab中变量名称可以为任意长度,但是我还是不建议将变量名称命名成下图这样⼦
sdfadsdfasdfsd = 2
此时,我们来看看⼯作区中的显⽰,将变量名称命名命的这么长,不仅不利于之后的操作,⾃⼰看着也碍眼,所以要是实在是⾃⼰⼿头的变量太多了,不妨按下图这样来:
a_1 = 1
此时我们再来看⼀看⼯作区,这样看起来是不是就舒服了⼀点呢?所以我们在matlab的学习中要学会去使⽤下划线,这样对我们⽇后的学习作⽤也⽐较⼤。
数字
matlab使⽤传统的⼗进制记数法以及可选的⼩数点和前加号或减号来表⽰数字。科学记数法则使⽤字母e来指定10次⽅的缩放因⼦。虚数使⽤ i 或 j 作为后缀。
a = 3 ,
b = -3 ,
c = +4
d = 0.002 ,
e = 6.2332e4
f = 0,
g = 879879e-4
h = 3i, k = 2e5i, l = -2j
上⾯所⽰的代码都是matlab中合法的数字表⽰。
matlab使⽤ IEEE(电⽓电⼦⼯程师学会) 浮点标准规定的long格式在内部存储所有数字。浮点数的有限精度约为16位有效⼩数位数,有限范围约为10-308 ⾄10+308。
以双精度格式表⽰的数字的最⼤精度为 52 位。任何需要 52 位以上的双精度数字都会损失⼀定精度。例如,下图所⽰
a = 12321342143242342314326
b = 12321342143242342314325
a == b
执⾏结果
这⾥输出的1就表⽰相等,代码因截断⽽将两个不相等的值显⽰为相等。
整数的可⽤精度为8 位、16 位、32 位和 64 位。uint64是64位⽆符号整形数据,每个整数⽤64位2进制数去编码,表⽰的数据范围是0~2^64-1。
matlab软件存储复数的实部和虚部。其根据上下⽂采⽤不同⽅法来处理各个部分的量值。例如,sort函数根据量值进⾏排序,如果量值相等,则根据相位⾓度排序。
a = 1+3i
b = 3+1j
sort([a,b])
执⾏结果
我们可以来计算⼀下这两个变量的相位⾓,我们可以使⽤angle函数
a = 1+3i
b = 3+1j
sort([a,b])
angle(a)
angle(b)
执⾏结果
我们不难发现排序的顺序是从⼩到⼤,这⾥顺带提⼀句“等于”关系运算符==要求实部和虚部相等。
矩阵运算符
matlab中的表达式使⽤⼤家熟悉的算术运算符和优先法则。
+加法
-减法
*乘法
/除法
\左除
^幂运算
'复共轭转置
( )指定计算顺序
数组
数组运算符
如果矩阵不⽤于线性代数运算,则成为⼆维数值数组。数组的算术运算按元素执⾏。这意味着,加法和减法运算对数组和矩阵都是相同的,但乘法运算不相同。MATLAB 的乘法数组运算表⽰法中包含点,也就是⼩数点。
+加法
-减法
.*逐元素乘法
./逐元素除法
.\逐元素左除
.^逐元素幂
.'⾮共轭数组转置
构建表
数组运算对构建表⾮常有⽤。假定n为列向量。
n = (0:9)'
a = [n n.*2 n.^3]
执⾏结果
这样我们就可以很直观的看出表所作的运算。
初等数学函数逐元素处理数组元素。因此我们可以如下图所⽰,创建⼀个表
format long g
a = (0:0.1:1)'
b = [a 2.*a.^3]
执⾏结果
这⾥的format long g 是对双精度,显⽰15位定点或浮点格式,对单精度,显⽰7位定点或浮点格式。
函数
函数的知识
matlab提供了⼤量标准初等数学函数,包括abs(求绝对值或复数的模)、sqrt(求平⽅根)、exp(指数)和sin(正弦函数),⽣成负数的平⽅根或对数不会导致错误,系统会⾃动⽣成相应的复数结果。matlab还提供了许多其他⾼等数学函数,包括贝塞尔函数和 gamma 函数。其中的⼤多数函数都接受复数参数。
如果想要获得有关初等数学函数的列表,请在matlab中输⼊
help elfun
如果想要获得有关更多⾼等数学函数和矩阵函数的列表,请在matlab输⼊
help specfun
help elmat
某些函数(例如,sqrt和abs)是matlab内置的函数。内置函数是matlab核⼼的⼀部分,因此这些函数⾮常⾼效,但计算详细信息是不可访问的。其他函数则是使⽤matlab编程语⾔实现,因此可以访问其计算详细信息。
内置函数与其他函数之间存在⼀些差异。例如,对于内置函数,我们是看不到代码,⽽对于其他函数,我们是可以看到代码,甚⾄可以根据需要修改代码。
⼀些特殊函数提供了有⽤的常量值。
inf⽆穷
NaN⾮数字
例⼦
a = 1+sqrt(4)
b = abs(-3)
c = exp(pi/2)
执⾏结果
这些都是⼀些基本的运算,当我们遇到复杂的运算的时候,运算中可能涉及了初等函数还有⾼等函数,我们都可以利⽤help。
matlab定义函数表达式综上:我介绍了表达式的相关知识和操作,本篇⽂章的知识点较多,⼤家都好好理解⼀下,毕竟这些对于未来我们真正上⼿matlab这款软件帮助还是⽐较⼤的,特别是函数那⼀块,真⼼希望⼤家遇到不会的函数时,可以使⽤help,⾃⼰尝试⼀下去解决问题。
以上就是matlab基础训练—表达式的全部内容
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论