给初中生的向量入门(下)

Info

这是上下两篇文章中的下篇。上篇为:给初中生的向量入门(上)

向量点乘

引入向量点乘

现在我们知道了有向量,还有向量相关的运算——向量加减与向量数乘。可是大家可能会这个向量数乘感到不自在——这始终是一个向量与一个实数两种不同对象之间的乘法,交换律无从谈起。那像实数可以跟实数自己相乘一样,向量能不能也跟向量相乘呢?

答案是——可以有。我们来引入一种名为点乘的向量“乘法”。

在物理中,我们学到过合外力做功的计算——力与在力的方向上的移动的距离的乘积:

W=FsW = Fs

这个公式是两个数量之间的乘积。但是我们知道,这个物理量是有方向的,是个向量。同时,我们引入另一个向量——位移,实际上,功这个物理量,就是力与位移这两个向量的“乘积”。

位移

实际上,移动是有方向的。我们用位移这个物理量代表了这种有方向的移动过程。

位移的方向为从移动的起点指向终点,位移的大小为从起点到终点的直线距离,用 s\vec{s} 表示。

我们一开始引入向量时所提到的“代表一个平移运动的向量”,实际上就是位移。

我们称,功就是力与位移这两个向量的点乘。符号表示为:

W=FsW = \vec{F}\cdot \vec{s}

那么问题就来了:我们现在只会计算力和位移方向相同的情况。

如果力和位移的方向不同,功应该怎么计算呢?

“发明”向量点乘

我们现在完全不懂这个点乘运算应该怎么算。但通过研究他的数学性质,其实不难推理出来。

首先,对力与位移的向量同时旋转一个角度,点乘的结果不变。这个很好理解:空间上换个角度做完全相同的物理实验,结果不可能发生改变。这是因为空间上各个方向的物理定律都是一样的。

同样地,如果交换两个向量的方向,点乘的结果也不变。这也是由于空间性质导致的,我们空间镜像对称地做同样的物理实验,结果也不应该改变。

然后我们假设物体所受合外力不变,先移动一段距离然后再移动一段距离,所做的功加起来应当等于力在总的位移上做的功。若位移距离变为原来的 kk 倍,最后所做的功也应该变为 kk 倍。若位移方向相反(原路返回),所做的功也会变为负功。

F(s1+s2)=Fs1+Fs2F(ks)=k(Fs)F(s)=Fs\begin{align} \vec{F}\cdot(\vec{s_{1}}+\vec{s_{2}}) & =\vec{F}\cdot \vec{s_{1}}+\vec{F}\cdot \vec{s_{2}} \\ \vec{F}\cdot(k\vec{s}) & =k(\vec{F}\cdot \vec{s}) \\ \vec{F}\cdot(-\vec{s}) & =-\vec{F}\cdot \vec{s} \end{align}

这对力也是一样的。运动位移不变时,各个分力分别做功,功的总和应当等于他们的合力所做的功。力的大小变为 kk 倍,所做的功也变为 kk 倍。 k=1k=-1 ,即力的方向相反,做功也应该相反。

F(s1+s2)=Fs1+Fs2F(ks)=k(Fs)\begin{align} \vec{F}\cdot(\vec{s_{1}}+\vec{s_{2}}) & =\vec{F}\cdot \vec{s_{1}}+\vec{F}\cdot \vec{s_{2}} \\ \vec{F}\cdot(k\vec{s}) & =k(\vec{F}\cdot \vec{s}) \end{align}

这就像是,点乘这个运算对两边的向量加法有分配律,并且与向量数乘“优先级相同”。这也是我们感觉点乘运算是一个“乘法”的原因。

性质总结

我们即将发明一种叫点积的运算 ab\vec{a}\cdot \vec{b} ,这个运算输入两个向量,输出一个数,我们要求这种运算拥有以下两条性质:

  • 体现空间各向同性:运算结果只与两个向量的大小、夹角有关,而与向量具体方向无关
  • 是个“乘法”:对两边的输入向量的加法都有分配律,这种性质叫双线性性

我们可以首先推理出,对于两个垂直的向量 a\vec{a}b\vec{b} ,他们的点乘 ab\vec{a}\cdot \vec{b} 性质。

由于双线性,我们将其中一个向量取反,结果应该相反:

(a)b=(ab)(-\vec{a})\cdot \vec{b}=-(\vec{a}\cdot \vec{b})

而同时,即使将其中一个向量取反,他们依然是大小不变、夹角依然成 90°90\degree 的两个向量。即:

(a)b=ab(-\vec{a})\cdot \vec{b}=\vec{a}\cdot \vec{b}

如此我们可以得出唯一可行的结论:互相垂直的两个向量,他们的点乘结果必定为零

而对于方向相同的两个向量,功的物理公式已经剧透了——点乘结果就是两个向量大小的乘积

ab=ab\vec{a}\cdot \vec{b}=|\vec{a}||\vec{b}|

接下来就很简单了。对于任意向量 a\vec{a}b\vec{b} ,我们都可以将其中一个向量 a\vec{a} 沿平行于 b\vec{b} 方向与垂直于 b\vec{b} 方向,分解为 a\vec{a_{\perp}}a\vec{a_{\parallel}} 。从而得到:

ab=(a+a)b=ab+ab=0+ab\begin{align} \vec{a}\cdot \vec{b} & =(\vec{a_{\perp}}+\vec{a_{\parallel}})\cdot \vec{b} \\ & =\vec{a_{\perp}}\cdot \vec{b}+\vec{a_{\parallel}}\cdot \vec{b} \\ & =0+|\vec{a_{\parallel}}||\vec{b}| \end{align}

而实际上,平行向量 a\vec{a_{\parallel}} 的长度,就是 acosθ|\vec{a}|\cos \theta

由此可得,对于任意向量 a\vec{a}b\vec{b} ,都有:

ab=abcosθ\boxed{\vec{a}\cdot \vec{b}=|\vec{a}||\vec{b}|\cos \theta}

很明显,如果我们将 b\vec{b} 沿平行 a\vec{a} 与垂直 a\vec{a} 方向分解,也能得到同样的结果。

Info

我们到这里就能解答章节开头的疑问。对于物理上不同方向的力与位移所做功,计算方式为:

W=FscosθW = |\vec{F}||\vec{s}|\cos \theta

然而,点乘这个运算不仅在物理上有用,在数学几何上更有大用处。我们接下来抛开物理,继续讨论点乘这个运算在数学上的作用。

点乘的坐标表示

之前我们一直在说,一个向量可以与点的坐标一一对应。实际上,如果知道两个向量的坐标表示,他们之间的点乘结果可以更快速地计算出来。

我们先来引入两个好用的向量: x 轴正方向上长度为1的向量 ex=(1,0)\vec{e_{x}}=(1,0) 与 y 轴正方向上长度为1的向量 ey=(0,1)\vec{e_{y}}=(0,1) 。我们称他们为 x 方向的单位向量与 y 方向的单位向量。

对于任意向量 a=(ax,ay)\vec{a}=(a_{x},a_{y}) ,我们必然能用 ex\vec{e_{x}}ey\vec{e_{y}} 来表示他:

a=axex+ayey\vec{a}=a_{x}\vec{e_{x}}+a_{y}\vec{e_{y}}

由于我们要的点乘运算有分配律,所以对于任意向量 a\vec{a}b\vec{b} ,都有:

ab=(axex+ayey)(bxex+byey)=axbxexex+axbyexey+aybxeyex+aybyeyey\begin{align} \vec{a}\cdot \vec{b} & = (a_{x}\vec{e_{x}}+a_{y}\vec{e_{y}})\cdot(b_{x}\vec{e_{x}}+b_{y}\vec{e_{y}}) \\ & =a_{x}b_{x}\vec{e_{x}}\cdot \vec{e_{x}}+a_{x}b_{y}\vec{e_{x}}\cdot \vec{e_{y}}+a_{y}b_{x}\vec{e_{y}}\cdot \vec{e_{x}}+a_{y}b_{y}\vec{e_{y}}\cdot \vec{e_{y}} \end{align}

其中, exex\vec{e_{x}}\cdot \vec{e_{x}}eyey\vec{e_{y}}\cdot \vec{e_{y}} 为两个同向向量相点乘,结果为其长度相乘,即为 1 。 exey\vec{e_{x}}\cdot \vec{e_{y}}eyex\vec{e_{y}}\cdot \vec{e_{x}} 为两个垂直向量相点乘,结果为 0 。

如此可立刻得出:

ab=axbx+ayby\boxed{\vec{a}\cdot \vec{b}=a_{x}b_{x}+a_{y}b_{y}}
Info

我们回顾整个过程可以发现,我们推理的过程并不受限于二维空间。我们可以通过同样的方式,推理得到三维、四维甚至更高维度的向量点乘运算也是类似的计算方式。

向量长度

我们考虑一种特别的情况:两个相同的向量进行点积。由于空间上的对称性,我们不妨将这个向量旋转到 x 轴正方向上,点积的结果不变。

假设向量 a\vec{a} 旋转到 x 轴正方向上时,向量为 (a,0)(a,0) ,其长度为 a=a|\vec{a}|=a 。则应有:

aa=(aex)(aex)=a2(exex)=a2\begin{align} \vec{a}\cdot \vec{a} & = (a\vec{e_{x}})\cdot(a \vec{e_{x}}) \\ & = a^2(\vec{e_{x}}\cdot \vec{e_{x}}) \\ & = a^2 \end{align}

即,向量长度的平方等于它与自己的点积。

其实,用上一节得到的两个公式,也能推出相同的结果:

aa=ax2+ay2=a2cos0°=a2\begin{align} \vec{a}\cdot \vec{a} & = a_{x}^2+a_{y}^2 \\ & = |a|^2\cos 0 \degree \\ & = |a|^2 \end{align}

我们由此得到求向量 a\vec{a} 的长度 a|\vec{a}| 的方式:

a2=aa=ax2+ay2|\vec{a}|^2=\vec{a}\cdot \vec{a}=a_{x}^2+a_{y}^2
Tip

在二维空间中,这实际上就是勾股定理。直角边的长度分别为向量的横坐标与纵坐标(的绝对值),斜边为向量的长度。

但正如前面所提示的,这完全可以扩展到三维甚至更高维空间。比如在三维空间中,就有:

a2=ax2+ay2+az2|\vec{a}|^2=a_{x}^2+a_{y}^2+a_{z}^2

计算两个向量的夹角

通过点积的两个公式,我们可以得到一个等式:

axbx+ayby=abcosθa_{x}b_{x}+a_{y}b_{y}=|\vec{a}||\vec{b}|\cos \theta

左边只与两个向量的坐标分量有关,是点积的代数表示。右边只与两个向量的大小与夹角有关,与坐标系的选取方向无关,是点积的几何表示。

如果我们已知两个向量的坐标表示 a=(ax,ay)\vec{a}=(a_{x},a_{y})b=(bx,by)\vec{b}=(b_{x},b_{y}) ,可知两个向量的长度分别为 a=ax2+ay2|\vec{a}|=\sqrt{ a_{x}^2+a_{y}^2 }b=bx2+by2|\vec{b}|=\sqrt{ b_{x}^2+b_{y}^2 }

从而我们可以通过点积求得两个向量的夹角 θ\theta

cosθ=abab=axbx+aybyax2+ay2bx2+by2\begin{align} \cos \theta & = \frac{\vec{a}\cdot \vec{b}}{|\vec{a}||\vec{b}|} \\ & = \frac{a_{x}b_{x}+a_{y}b_{y}}{\sqrt{ a_{x}^2+a_{y}^2 }\sqrt{ b_{x}^2+b_{y}^2 }} \end{align}

向量点乘的应用

余弦定理

通过点积,我们可以快速地建立起任意三角形边和角的关系。

假设有任意三角形 ABC 。则有:

AB=CBCA\vec{AB} = \vec{CB}-\vec{CA}

将向量 AB\vec{AB} 与自己点积,有:

ABAB=(CBCA)(CBCA)=CBCB+CACA2CACB\begin{align} \vec{AB}\cdot \vec{AB} & = (\vec{CB}-\vec{CA})\cdot(\vec{CB}-\vec{CA}) \\ & =\vec{CB}\cdot \vec{CB} + \vec{CA}\cdot \vec{CA} - 2\vec{CA}\cdot \vec{CB} \end{align}

代入点积的几何表示,则有:

AB2=CA2+CB22CACBcosC|AB|^2=|CA|^2+|CB|^2-2|CA||CB|\cos C

令三角形三边为 a 、 b 、 c ,则可简写为:

c2=a2+b22abcosCc^2 = a^2+b^2-2ab\cos C

这个等式表明:

  • 如果能确定 a 、 b 、 c 三条边,角 C 的大小就可以确定(SSS)
  • 如果能确定 a 、 b 两条边与角 C 的大小,第三条边 c 就能确定 (SAS)
  • 如果确定 c 的大小与角 C 的大小,以及 a 、 b 其中之一的大小,剩余的第三条边构成一元二次方程,可能有两个解(即 SSA 不能唯一确定一个三角形)

明显对于角 A 、 角 B 也能有对应的等式成立。这个定理被称为余弦定理。

正弦定理

除了余弦定理外,三角形中还有正弦定理。正弦定理为:

sinAa=sinBb=sinCc\frac{\sin A}{a}=\frac{\sin B}{b}=\frac{\sin C}{c}

这个定理通过初中知识也能轻易地证明,过程留给各位自己证明。(提示,可以通过两边与夹角的正弦值得到三角形的面积。)

本节练习
  1. 已知向量 a=(3,4)\vec{a}=(3, 4)b=(1,2)\vec{b}=(1, -2),求 ab\vec{a}\cdot\vec{b}
  2. 求向量 a=(3,4)\vec{a}=(3, 4) 的长度 a|\vec{a}|
  3. 思考:如果在直角三角形里应用余弦定理,会得出什么结论?应用正弦定理呢?

圆幂定理

设平面有一个半径为 RR 、圆心为 OO 的圆。对于过平面上任一点 PP 的任意一条直线,设它与圆交于两点 AABB (切点视为重合的二点),恒有 PAPB=OP2R2\vec{PA} \cdot \vec{PB} = \vec{OP}^2 - R^2 。这就是圆幂定理。

在初中阶段,圆幂定理被拆分为相交弦定理、切线定理、切割线定理,三个定理分别需要通过不同的步骤证明。实际上,我们可以使用向量,用统一的步骤证明三个定理。

设直线的方向向量(与直线同一方向的长度为1的向量)为 v\vec{v} 。从点 PP 到直线上任意一点的向量可表示为 tvt\vec{v} ,其中 tt 为任意实数,其绝对值即为由 PP 点到该点的长度。

PA\vec{PA}PB\vec{PB} 分别可以表示为 t1vt_1 \vec{v}t2vt_2 \vec{v} 。其中 t1t_{1}t2t_{2} 即为有向线段 PA\vec{PA}PB\vec{PB} 的长度。(如果 t1t_{1} 为负,代表 PA\vec{PA}v\vec{v} 方向相反, t2t_{2} 同理。)

由于 vv=1\vec{v}\cdot \vec{v}=1 ,因此有 PAPB=t1t2\vec{PA} \cdot \vec{PB} = t_1 t_2

另一方面,由圆的定义,在圆上任取一点 XX ,满足圆的向量方程 OX2=R2|\vec{OX}|^2 = R^2 。对于点 AABB ,它们满足:

OA2=R2,OB2=R2|\vec{OA}|^2 = R^2,\quad |\vec{OB}|^2 = R^2

对于 AA 点,由于 OA=OP+PA\vec{OA}=\vec{OP}+\vec{PA} ,代入得:

OP+t1v2=R2|\vec{OP} + t_1 \vec{v}|^2 = R^2

展开得:

OP2+2t1(OPv)+t12=R2\vec{OP}^2 + 2t_1 (\vec{OP} \cdot \vec{v}) + t_1^2 = R^2

整理为:

t12+2(OPv)t1+(OP2R2)=0t_1^2 + 2 (\vec{OP} \cdot \vec{v}) t_1 + (\vec{OP}^2 - R^2) = 0

对于给定的点 OO 、点 PP 与半径 RROPv\vec{OP}\cdot \vec{v}OP2R2\vec{OP}^2-R^2 都是常数。因此这是一个关于 t1t_{1} 的一元二次方程。

同理,将点 BB 代入也会得到完全相同的二次方程,因此 t1t_1t2t_2 正是这个二次方程的两个根。

根据韦达定理,两根之积为:

t1t2=OP2R2t_1 t_2 = \vec{OP}^2 - R^2

由于 PAPB=t1t2\vec{PA} \cdot \vec{PB} = t_1 t_2 ,我们便得到了圆幂定理的表达式:

PAPB=OP2R2\boxed{\vec{PA} \cdot \vec{PB} = \vec{OP}^2 - R^2}

这个推导对 PP 的位置没有任何限制:

  • PP 在圆内: t1t_1t2t_2 符号相反,乘积为负,对应相交弦定理。
  • PP 在圆外: t1t_1t2t_2 符号相同,乘积为正,对应割线定理。
  • PP 在圆上: t1t_{1}t2t_{2} 中必有一个为零,乘积为零,点 PP 必定与点 AA 或点 BB 重合。
  • 直线与圆相切 : t1=t2t_{1}=t_{2} ,二次方程有重根,切线长 t=OP2R2t = \sqrt{\vec{OP}^2 - R^2} ,对应切割线定理。

反向引用

Loading comments...