基本的矩阵操作
这个例子展示了在MATLAB®语言中处理矩阵的基本技术和函数。
首先,让我们创建一个包含9个元素的简单向量,称为一个
。
A = [1 2 3 4 6 4 3 4 5]
一个=1×91 2 3 4 6 4 3 4 5
现在我们给向量的每个元素加2,一个
,并将结果存储在一个新的向量中。
注意MATLAB不需要对向量或矩阵数学进行特殊处理。
B = a + 2
b =1×93 4 5 6 8 6 5 6 7
在MATLAB中创建图形就像一个命令一样简单。让我们用网格线来绘制向量加法的结果。
情节(b)网格在
MATLAB也可以制作其他图形类型,包括轴标签。
条(b)包含(示例#的) ylabel (“英镑”)
MATLAB也可以在图中使用符号。这里有一个使用星号标记点的例子。MATLAB提供了各种其他符号和线条类型。
情节(b,‘*’)轴([0 10 0 10])
MATLAB擅长的一个领域是矩阵计算。
创建一个矩阵就像制作一个向量一样简单,用分号(;)来分隔矩阵的行。
A = [1 20 0;2 5 1;4 10 1]
一个=3×31 2 0 2 5 -1 4 10 -1
我们很容易找到矩阵的转置一个
。
B =“
B =3×31 2 4 2 5 10 0 -1 -1
现在让我们把这两个矩阵相乘。
再次注意,MATLAB并不要求你将矩阵作为数字的集合来处理。MATLAB知道你什么时候在处理矩阵,并相应地调整你的计算。
C = a * b
C =3×35 12 24 12 30 59 24 59 117
不用做矩阵乘法,我们可以用。*操作符将两个矩阵或向量的对应元素相乘。
C = a .* b .
C =3×31 4 0 4 25 -10 0 -10 1
让我们用矩阵A来解方程,A*x = b,我们通过使用\(反斜杠)操作符来做到这一点。
b = (1, 3, 5)
b =3×11 3 5
x = A \ b
x =3×11 0 1
现在我们可以证明A*x = b。
r = A*x - b
r =3×10 0 0
MATLAB有几乎每一种常用矩阵计算的函数。
有获取特征值的函数…
eig (A)
ans =3×13.7321 0.2679 1.0000
…以及奇异值。
圣言(A)
ans =3×112.3171 0.5149 0.1577
“poly”函数生成一个包含特征多项式系数的向量。
矩阵的特征多项式一个
是
p =圆(poly (A))
p =1×41 -5 5 -1
我们可以很容易地找到多项式的根根
函数。
这些实际上是原始矩阵的特征值。
根(p)
ans =3×13.7321 1.0000 0.2679
除了矩阵计算,MATLAB还有很多应用。
对两个向量进行卷积…
q = conv (p, p)
q =1×71 -10 35 -52 35 -10 1
…或者再进行卷积,并绘制出结果。
r = conv (p, q)
r =1×101 -15 90 -278 480 -480 278 -90 15 -1
情节(r);
在任何时候,我们都可以使用谁
或谁
命令。
谁
名称大小字节类属性A 3x3 72双B 3x3 72双C 3x3 72双A 1x9 72双ans 3x1 24双B 3x1 24双p 1x4 32双q 1x7 56双r 1x10 80双x 3x1 24双
你可以通过输入一个特定变量的名字来得到它的值。
一个
一个=3×31 2 0 2 5 -1 4 10 -1
你可以在一行上有多个语句,用逗号或分号分隔每个语句。
如果你不赋值一个变量来存储一个操作的结果,结果就会存储在一个叫做答
。
√6 (1)
Ans = 0.0000 + 1.0000i
如你所见,MATLAB在计算中很容易处理复数。