MATLAB(6)矩阵和向量运算

来源:互联网 发布:tensorflow 界面 编辑:程序博客网 时间:2024/06/06 00:36

矩阵和向量运算

向量可以看成1xn 矩阵或者nx1矩阵,因此向量的加法数乘等运算和矩阵是一样的

① 内积运算:      计算向量ab的内积, (a,b)=b^H*a

S=sum(conj(b).*a)   或者  S=a*b   或者 s=dot(b,a)

 >> A=[1 3;4 6;7 9]

=

             3

             6

             9

>> B=[9 7;6 4;3 1]

=

             7

             4

             1

>> A+B

ans =

    10    10    10

    10    10    10

    10    10    10

>> 3*A

ans =

             9

    12    15    18

    21    24    27

>> det(A)

ans =

   6.6613e-16

>> det(A)    %得到矩阵的行列式

ans =

   6.6613e-16

 

>> A

=

             3

             6

             9

>> det(A)    %得到矩阵的行列式

 

ans =

 

   36.0000

 

>> %如果矩阵的行列式不为 ,则说明 此矩阵是可逆的 ,使用 inv() 得到逆矩阵

>> inv(A)

 

ans =

 

   -0.0833   -1.3333    0.9167

    0.1667   -0.3333    0.1667

   -0.0833    1.3333   -0.7500

>> a=[1+5i,2,3+6i,7-2i]

>> b=[2-i,4+3i,3-i,6]

>> %以下方法为   计算向量ab的内积

>> s=sum(conj(b).*a)

=

  50.0000 +14.0000i

>> s=a*b'

=

  50.0000 +14.0000i

>> s=dot(b,a)

=

  50.0000 +14.0000i

线性方程组的求解

可以使用矩阵求逆的方法求解线性方程组,在一般线性代数中的解决方法类似

    例如:  

x+2y+3z=5;

x+4y+9z=-2;

x+8y+27z=6;

其系数矩阵为 A=[1 3;1 9;1 27]

其常数向量为 B=[5 -2 6]

其结果可以通过 A的逆 左乘 得到,即 s=inv(A)*b;

还可以通过A左除b来得到,即 s=A\b;

0 0
原创粉丝点击