[初学笔记]建立向量和矩阵,向量 的知识

来源:互联网 发布:java 如何encode 编辑:程序博客网 时间:2024/06/15 03:59

(1)行向量

创建行向量括在方括号中的元素的集合,用空格或逗号分隔的元素。

>> r =[7891011]

>>= [7,8, 9, 10, 11]

r =

     7     8     9    10    11


>> r = [7 8 9 10 11];
t = [2, 3, 4, 5, 6];
res = r + t
res =
     9    11    13    15    17


(2)列向量

创建列向量通过内附组方括号中的元素,使用分号(;)分隔的元素。

>> r =[7 ;8;9;10;11]


r =
     7
     8
     9
    10
    11


(3)建立矩阵

矩阵是一个二维数字阵列。

在MATLAB中,创建一个矩阵每行输入空格或逗号分隔的元素序列,最后一排被划定一个分号。例如,创建一个3×3的矩阵:

>> [1 2 3; 4 5 6; 7 8 9]

ans =
     1     2     3
     4     5     6
     7     8     9

(4)向量的引用

>> v=[5 6 7 8 ]
v =
     5     6     7     8

以参照的向量元素的几种方式中的一种或多种。ith 一个矢量v的分量被称为v(i)。例如:

>> v(2)
ans =
     6

当引用一个冒号,一个向量,其例如为v(:),该载体上的所有组件的被列出。

>> v(:)
ans =
     5
     6
     7
     8

MATLAB允许你选择一个范围从向量的元素。

例如,让我们创建一个行向量rv 9个元素,那么我们将引用元素3至7写rv(3:7),并创建一个新的向量名为sub_rv。


>> a = [4 5 6 7 8]; sub_ra=a (2:4)
sub_ra =
     5     6     7
>> a = [4 5 6 7 8];b=a (2:4)
b =
     5     6     7



(5)向量的加减法
您可以相加或相减两个向量。这两个操作数的向量必须是相同的类型和相同数量的元素。

>> a = [1 2 3 4 5];
b = [6 7 8 9 10] ;
c = a + b
d = a - b
c =
     7     9    11    13    15

d =
    -5    -5    -5    -5    -5


(6)标量 向量的乘法 (数字和向量的相乘)
当一个数字乘以一个向量,这就是所谓的标量乘法。标量乘法产生相同类型的一个新的向量,原来的向量的每个元素乘以数量

>> b = [6 7 8 9 10] ;
d = 4 * b
d =
    24    28    32    36    40


(7)向量的转置
移调操作改变成一个行向量,反之亦然一个列向量。移调操作表示一个单引号(')。

>> a = [1 2 3 4 5];
b = [6; 7; 8; 9; 10] ;
ta = a';
tb = b';
disp(ta);disp(tb);
     1
     2
     3
     4
     5
     6     7     8     9    10

(8) 向量的追加
MATLAB 允许附加向量,共同创造新的向量。
其实就是行向量和列向量的符号需要颠倒使用

>> a = [1 2 3 4 5];
A = [1 2 3 4 5];
aa = [a A]
aamat = [a;A]
aa =
  Columns 1 through 7
     1     2     3     4     5     1     2
  Columns 8 through 10
     3     4     5

aamat =
     1     2     3     4     5
     1     2     3     4     5


>>
>> b = [1;2 ;3; 4; 5];
B = [1 ;2 ;3 ;4 ;5];
bb = [b ;B]
bbmat = [b,B]
bb =
     1
     2
     3
     4
     5
     1
     2
     3
     4
     5

bbmat =
     1     1
     2     2
     3     3
     4     4
     5     5



(9)向量的模

向量 AB(AB上面有→)的长度叫做向量的模,记作|AB|(AB上有→)或|a|(a上有→)。
向量AB的大小,也就是向量AB的长度(或称模),记作|AB|,(AB上面有→)

模是绝对值在二维和三维空间的推广,可以认为就是向量的长度。推广到高维空间中称为范数。

计算公式
       空间向量(x,y,z),其中x,y,z分别是三轴上的坐标,模长是:
      平面向量(x,y),模长是:
对于向量x属于n维复向量空间
x=(x1,x2…,xn)
x的模为‖x‖=sqrt((x,x*))(x与x共轭的内积再开方)


向量模的运算法则
       1、模只有大小,是个实数,|a|≥0;
  2、|a|^2=a*a=a^2;
  3、|a+b|^2=|a|^2+2a*b+|b|^2=a^2+2a*b+b^2;
  4、||a|-|b||≤|a±b|≤|a|+|b|;
  5、若a=(x,y),则|a|=√(x^2+y^2)

例子
向量v元素 v1, v2, v3, …, vn, 幅度由下式给出:

|v| =

(v12 + v22 + v32 + … + vn2)---开根号


需要采取以下步骤来计算向量的模:

      按照公式计算:

  1. 采取的矢量及自身的积,使用数组相乘(*)。这将产生一个向量SV,其元素是向量的元素的平方和V.

    sv = v.*v;

  2. 使用求和函数得到v。这也被称为矢量的点积向量的元素的平方的总和V. 数量积 dot product

  3. dp= sum(sv);

  4. 使用sqrt函数得到的总和的平方根,这也是该矢量的大小V.

    mag = sqrt(s);


>> a = [1:2:20];
sa = a.* a ;
dp = sum(sa);
mag = sqrt(dp)
mag =
   36.4692


(10)向量的点积 (相当于两个向量相乘)
两个向量a = [a1, a2,…, an]和b = [b1, b2,…, bn]的点积定义为:
a·b=a1b1+a2b2+……+anbn。
使用矩阵乘法并把(纵列)向量当作n×1矩阵,点积还可以写为:
a·b=a^T*b,这里的a^T指示矩阵a的转置

两个向量的点积 a = (a1, a2, …, an) and b = (b1, b2, …, bn) 由以下给定:

a.b = ∑(ai.bi)

计算两个向量a和b的点积点函数。


运算公式为

dp = dot(a, b);


>> a = [1 2 3 4 5];
A = [1 2 3 4 5];
dp = dot (a,A)
b = [5;4 ;3; 2; 1];
B = [1 ;2 ;3 ;4 ;5];
dp = dot (b,B)

dp =
    55

dp =
    35


原创粉丝点击