【数理知识】向量与基的内积,Matlab 代码验证

序号 内容
1 【数理知识】向量的坐标基表示法,Matlab 代码验证
2 【数理知识】向量与基的内积,Matlab 代码验证

文章目录

  • 1. 向量与基的内积
  • 2. 二维平面向量举例
  • 3. 代码验证
  • Ref

1. 向量与基的内积

假设存在一个二维平面内的向量 a ⃗ \vec{a} a ,其在坐标基 e ⃗ 1 , e ⃗ 2 \vec{e}_1, \vec{e}_2 e 1,e 2 下的坐标值为 [ x y ] \left[\begin{matrix}x \\ y \end{matrix}\right] [xy]

我们这里先看一下向量 a ⃗ \vec{a} a 自身与坐标基 e ⃗ 1 \vec{e}_1 e 1 的内积。关于内积的原理请参考文章【数理知识】向量数乘,内积,外积,matlab代码实现。这里我们直接使用其结论,即向量的内积为,一个向量在另一个向量方向上的投影长度,乘以被投影向量的长度,如下图所示

【数理知识】向量与基的内积,Matlab 代码验证_第1张图片

用公式描述为

a ⃗ ⋅ e ⃗ 1 = ∥ a ⃗ ∥ ∥ e ⃗ 1 ∥ cos ⁡ ( θ ) \vec{a} \cdot \vec{e}_1 = \|\vec{a}\| \|\vec{e}_1\| \cos(\theta) a e 1=a ∥∥e 1cos(θ)

而在我们这里被投影向量为基向量 e ⃗ 1 \vec{e}_1 e 1,而基向量 e ⃗ 1 \vec{e}_1 e 1 其模长 ∥ e ⃗ 1 ∥ \|\vec{e}_1\| e 1 又为 1 1 1,因此

a ⃗ ⋅ e ⃗ 1 = ∥ a ⃗ ∥ ∥ e ⃗ 1 ∥ cos ⁡ ( θ ) = ∥ a ⃗ ∥ cos ⁡ ( θ ) \begin{aligned} \vec{a} \cdot \vec{e}_1 &= \|\vec{a}\| \|\vec{e}_1\| \cos(\theta) \\ &= \|\vec{a}\| \cos(\theta) \end{aligned} a e 1=a ∥∥e 1cos(θ)=a cos(θ)

数值上 ∥ a ⃗ ∥ cos ⁡ ( θ ) \|\vec{a}\| \cos(\theta) a cos(θ) 等于向量 a ⃗ \vec{a} a 在坐标基 e ⃗ 1 \vec{e}_1 e 1 上的坐标值。如果坐标基 e ⃗ 1 \vec{e}_1 e 1 我们认为其为横坐标,那么 a ⃗ ⋅ e ⃗ 1 \vec{a} \cdot \vec{e}_1 a e 1 数值上就等于横坐标的值,即

a x = a ⃗ ⋅ e ⃗ 1 \begin{aligned} a_x &= \vec{a} \cdot \vec{e}_1 \end{aligned} ax=a e 1

同理,我们也可以得到 a ⃗ ⋅ e ⃗ 2 \vec{a} \cdot \vec{e}_2 a e 2 数值上等于纵坐标的值。

a y = a ⃗ ⋅ e ⃗ 2 \begin{aligned} a_y &= \vec{a} \cdot \vec{e}_2 \end{aligned} ay=a e 2

最后,公式化描述结论为

a x = a ⃗ ⋅ e ⃗ 1 = [ a x a y ] ⋅ [ e 11 e 12 ] = a x e 11 + a y e 12 a y = a ⃗ ⋅ e ⃗ 2 = [ a x a y ] ⋅ [ e 21 e 22 ] = a x e 21 + a y e 22 , ∥ e ⃗ 1 ∥ = ∥ e ⃗ 2 ∥ = 1 \begin{aligned} a_x &= \vec{a} \cdot \vec{e}_1 =\left[\begin{matrix} a_x \\ a_y \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{11} \\ e_{12} \\ \end{matrix}\right] =a_x e_{11} + a_y e_{12} \\ a_y &= \vec{a} \cdot \vec{e}_2 =\left[\begin{matrix} a_x \\ a_y \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{21} \\ e_{22} \\ \end{matrix}\right] =a_x e_{21} + a_y e_{22} \end{aligned},\quad \|\vec{e}_1\| = \|\vec{e}_2\| = 1 axay=a e 1=[axay][e11e12]=axe11+aye12=a e 2=[axay][e21e22]=axe21+aye22,e 1=e 2=1


2. 二维平面向量举例

接下来基于二维平面上的一个向量来举例。

假设存在一个上述的二维平面向量 a ⃗ \vec{a} a ,在标准坐标基 e ⃗ 1 = [ 1 0 ] , e ⃗ 2 = [ 0 1 ] \vec{e}_1=\left[\begin{matrix} 1 \\ 0 \\ \end{matrix}\right], \vec{e}_2=\left[\begin{matrix} 0 \\ 1 \\ \end{matrix}\right] e 1=[10],e 2=[01] 下的坐标值为 [ a x a y ] = [ 3 4 ] \left[\begin{matrix}a_x \\ a_y \end{matrix}\right] = \left[\begin{matrix}3 \\ 4 \end{matrix}\right] [axay]=[34]

现在,我们更改坐标基为 e ⃗ 1 ′ = [ 1 2 1 2 ] , e ⃗ 2 ′ = [ − 1 2 1 2 ] \vec{e}_{1^\prime}=\left[\begin{matrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \\ \end{matrix}\right], \vec{e}_{2^\prime}=\left[\begin{matrix} -\frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \\ \end{matrix}\right] e 1=[2 12 1],e 2=[2 12 1],此新基下的坐标值为 [ a x ′ a y ′ ] = [ 7 2 1 2 ] \left[\begin{matrix}a_{x^\prime} \\ a_{y^\prime} \end{matrix}\right] = \left[\begin{matrix} \frac{7}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{matrix}\right] [axay]=[2 72 1]

首先验证结论

a x = a ⃗ ⋅ e ⃗ 1 = [ a x a y ] ⋅ [ e 11 e 12 ] = a x e 11 + a y e 12 = [ 3 4 ] ⋅ [ 1 0 ] = 3 × 1 + 4 × 0 = 3 \begin{aligned} a_x &= \vec{a} \cdot \vec{e}_1 =\left[\begin{matrix} a_x \\ a_y \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{11} \\ e_{12} \\ \end{matrix}\right] =a_x e_{11} + a_y e_{12} \\ &= \left[\begin{matrix} 3 \\ 4 \\ \end{matrix}\right] \cdot \left[\begin{matrix} 1 \\ 0 \\ \end{matrix}\right] = 3 \times 1 + 4 \times 0 = 3 \end{aligned} ax=a e 1=[axay][e11e12]=axe11+aye12=[34][10]=3×1+4×0=3

a x ′ = a ⃗ ⋅ e ⃗ 1 ′ = [ a x a y ] ⋅ [ e 1 1 ′ e 1 2 ′ ] = a x e 1 1 ′ + a y e 1 2 ′ = [ 3 4 ] ⋅ [ 1 2 1 2 ] = 3 × 1 2 + 4 × 1 2 = 7 2 \begin{aligned} a_{x^\prime} &= \vec{a} \cdot \vec{e}_{1^\prime} =\left[\begin{matrix} a_{x} \\ a_{y} \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{11^\prime} \\ e_{12^\prime} \\ \end{matrix}\right] =a_{x} e_{11^\prime} + a_{y} e_{12^\prime} \\ &= \left[\begin{matrix} 3 \\ 4 \\ \end{matrix}\right] \cdot \left[\begin{matrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \\ \end{matrix}\right] = 3 \times \frac{1}{\sqrt{2}} + 4 \times \frac{1}{\sqrt{2}} = \frac{7}{\sqrt{2}} \end{aligned} ax=a e 1=[axay][e11e12]=axe11+aye12=[34][2 12 1]=3×2 1+4×2 1=2 7

通过观察下图,也能大约看出向量 a ⃗ \vec{a} a 在新基 e ⃗ 1 ′ \vec{e}_{1^\prime} e 1 上的投影长度为 7 / 2 7/\sqrt{2} 7/2

【数理知识】向量与基的内积,Matlab 代码验证_第2张图片

这与坐标图中的效果也是一致的。

往下继续验证结论

a y = a ⃗ ⋅ e ⃗ 2 = [ a x a y ] ⋅ [ e 21 e 22 ] = a x e 21 + a y e 22 = [ 3 4 ] ⋅ [ 0 1 ] = 3 × 0 + 4 × 1 = 4 \begin{aligned} a_y &= \vec{a} \cdot \vec{e}_2 =\left[\begin{matrix} a_x \\ a_y \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{21} \\ e_{22} \\ \end{matrix}\right] =a_x e_{21} + a_y e_{22} \\ &= \left[\begin{matrix} 3 \\ 4 \\ \end{matrix}\right] \cdot \left[\begin{matrix} 0 \\ 1 \\ \end{matrix}\right] = 3 \times 0 + 4 \times 1 = 4 \end{aligned} ay=a e 2=[axay][e21e22]=axe21+aye22=[34][01]=3×0+4×1=4

a y ′ = a ⃗ ⋅ e ⃗ 2 ′ = [ a x a y ] ⋅ [ e 1 1 ′ e 1 2 ′ ] = a x e 1 1 ′ + a y e 1 2 ′ = [ 3 4 ] ⋅ [ − 1 2 1 2 ] = 3 × ( − 1 2 ) + 4 × 1 2 = 1 2 \begin{aligned} a_{y^\prime} &= \vec{a} \cdot \vec{e}_{2^\prime} =\left[\begin{matrix} a_{x} \\ a_{y} \\ \end{matrix}\right] \cdot \left[\begin{matrix} e_{11^\prime} \\ e_{12^\prime} \\ \end{matrix}\right] =a_{x} e_{11^\prime} + a_{y} e_{12^\prime} \\ &= \left[\begin{matrix} 3 \\ 4 \\ \end{matrix}\right] \cdot \left[\begin{matrix} -\frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \\ \end{matrix}\right] = 3 \times (-\frac{1}{\sqrt{2}}) + 4 \times \frac{1}{\sqrt{2}} = \frac{1}{\sqrt{2}} \end{aligned} ay=a e 2=[axay][e11e12]=axe11+aye12=[34][2 12 1]=3×(2 1)+4×2 1=2 1

第二个结论同样意味着向量 a ⃗ \vec{a} a 在新基 e ⃗ 2 ′ \vec{e}_{2^\prime} e 2 上的投影长度为 1 / 2 1/\sqrt{2} 1/2


3. 代码验证

a_x = 3;
a_y = 4;
a = [a_x
     a_y];

e_1 = [ 1
        0];
e_2 = [ 0
        1];

e_1_prime = [ sqrt(2)/2
              sqrt(2)/2];
e_2_prime = [-sqrt(2)/2
              sqrt(2)/2];
>> dot(a, e_1)
ans =
     3

>> dot(a, e_2)
ans =
     4

>> dot(a, e_1_prime)
ans =
    4.9497

>> dot(a, e_2_prime)
ans =
    0.7071

Ref


你可能感兴趣的:(数理知识,matlab,开发语言)