本博客对应我博客中的多变量微积分目录下的第一章,向量和矩阵。
1.向量和矩阵(Vectors and Matrices)——开启多变量函数和多变量微积分大门的钥匙
在单变量微积分中用得最多的应该只是坐标,如果想要进入三维的世界,就需要引入向量,甚至是矩阵来简化我们的运算过程,例如,一个函数在坐标轴的三个基底向量上都是随自变量变化的函数,那么每一次运算都把他们单独写出来是肯定很麻烦的,这时候不妨试试用一个位置向量(接下来会写到)来整合所有信息。
1.1 向量的定义
在进行基本向量运算之前,一定要明确向量的定义。向量是有大小和有方向的量。 常用箭头来表示向量,箭头的大小表示该向量的大小,箭头的方向代表向量的方向。向量一般被表示成 A 或 A。这一系列的我还是选择用加粗格式来表示。其中 ∣A∣ 表示向量的模长(即大小),用单位向量∣A∣A来表示其方向。向量的坐标表示这一系列博客会遵循上课用的记法,<a1,a2>;(a1,a2) 代表坐标点。
下图表示向量 u=<−1.76,−0.94>

1.2 向量的基本运算
缩放,加减法
向量的缩放(Scaling):cA
向量的加减法:
遵循平行四边形法则,这个就不再赘述了。注意向量的减法得到的向量是指向被减向量的(也就是第一个向量),加法就是首尾相连。
向量“乘法”——点乘和叉乘
向量运算中最重要的就是点乘和叉乘了,这两位也会贯穿整个课程。向量的点乘运算几何上等同于数乘一个向量的映射,而从代数式子的角度来看等同于矩阵乘法(矩阵的相关知识会在后面写到),结果是一个数;而叉乘得到了一个垂直于初始两向量的向量。
向量点乘:
如果 A=<a1,a2>, B=<b1,b2>,则A⋅B=a1a2+b1b2
另外一种写法是A⋅B=a1a2+b1b2=∣A∣⋅∣B∣cosθ

如果 0≤θ<π/2,即夹角为锐角,则 A⋅B>0
如果 π/2≤θ<π,即夹角为钝角,则 A⋅B<0
如果 θ=π/2,即夹角为直角,则 A⋅B=0
反之也成立。
**特殊情况:**假设u^是平面内任意一个单位向量,那么平面内任意一个向量与它的点乘就是向量A在单位向量上的投影。如下图

向量叉乘
如果 A=<a1,a2>, B=<b1,b2>,则
∣A×B∣=det(A, B)=∣∣∣∣a1b1a2b2∣∣∣∣=∣∣∣∣a1a2b1b2∣∣∣∣
新向量的方向 dir(A×B)垂直于A和B构成的平面,并遵循右手定则。(四指指向第一个向量,并向第二个向量弯曲,大拇指的方向就是叉乘结果的方向)
两个二维向量的叉乘本质上是求两向量构成的矩阵的行列式,也就是构成的平行四边形的面积。
三维的两个向量的叉乘也是根据矩阵的行列式而来:
det(A,B,C)=∣∣∣∣∣∣a1b1c1a2b2c2a3b3c3∣∣∣∣∣∣=Volume by A,B,CA×B=det(b,A,B)=∣∣∣∣∣∣ia1b1ja2b2ka3b3∣∣∣∣∣∣where b=i+j+k(A×B)⋅C=det(A,B,C)=Volume
三维向量的叉乘本质上也是求两向量构成的矩阵的行列式,即所构成的平行四边形的面积。
(需要注意的一点是矩阵的转置不改变行列式的值)
点乘和叉乘的求导
点乘和叉乘的求导是针对向量函数的,向量函数简单来说就是
r(t)=<x(t),y(t),z(t)>向量函数点乘和叉乘的求导与函数的乘法法则类似:
dtd(r⋅s)=r⋅dtds+s⋅dtdrdtd(r×s)=r×dtds+s×dtdr
向量的这些基本运算其实是代数乘法与加减法的结合,这完全符合矩阵的定义(本质上还是属于线性系统),学习矩阵也是必须的,当然这一系列只涉及非常基本的内容,详细的有关内容请参考线性代数笔记,我会在多变量微积分之后慢慢补上。
1.3 矩阵的一些基本知识
为什么会有矩阵
矩阵的出现源于求解线性方程组:
⎩⎪⎨⎪⎧a11x+a12y+a13z=b1a21x+a22y+a23z=b2a31x+a32y+a33z=b3
将x,y,z前面的系数全部提取出来就得到了系数矩阵也可以看成由三个列向量组成 A,方程组就变成了Ax=b(加粗的代表向量)
矩阵的定义
m×n 矩阵的明确定义是具有m行n列的矩形数组。其中每一个元素的记法为:aij, (1≤i≤m, 1≤j≤m)
矩阵的常见运算
- 数乘:cA=c(aij)
- 加法:A+B=(aij+bij)
- 转置:AT=(aji)
- 矩阵乘法:
m×nA⋅n×pB=m×pC
Element-wise:
cij=i=1∑naik⋅bkj
如何理解Ax=b
从线性代数角度来讲,Ax=b中矩阵A相当于一个函数,一种映射,或是一种线性变换,在输入向量x之后,得到了输出向量b。还有一种解释是:向量b是矩阵A中的列向量所张成(span)的列空间里的一个线性组合(linear combination)。方程组的解有多种可能性:只有一个,无数个(当一些列向量是其他某些列向量的线性组合),也有可能没有解(1=2这类形式)。之后会写到3×3情况下方程组解的讨论和几何意义。
逆矩阵求解Ax=b
从上面的内容我们已经知道了线性方程组的矩阵形式,因为18.02这门课毕竟不是线性代数课程,所以这里给出一个直接的求法,即求解逆矩阵从而得到方程组的解。(线性代数课程不会一上来就讲矩阵的逆,而是从最基本的运算法则来求解该方程)
已知 Ax=b,求解x。先定义一个矩阵使得A−1A=I,可以得到A−1Ax=x=A−1b,只有当矩阵A存在逆矩阵的时候,即A是可逆的,该式子才是方程的解。
矩阵A是可逆的条件是detA ̸=0,反之,如果detA=0,那么矩阵A不可逆。
计算 3×3 逆矩阵:
A−1=∣A∣1adj A=∣A∣1⎣⎡A11A12A13A21A22A23A31A32A33⎦⎤
其中adj A是矩阵A的伴随矩阵,可以通过以下几个步骤得到:
- 计算Aij,即去掉i,j所在行列之后的行列式。
- 添加正负号,模式如下
⎣⎡+−+−+−+−+⎦⎤
- 将所的矩阵转置得到伴随矩阵。
1.4 矩阵与向量运算之间的关系
平面方程
本质上可以说向量就是矩阵,只不过行向量的维度是1×n,而列向量的维度是n×1。如果单独看线性方程组的一个方程,可以发现该方程可以通过向量的点乘得到。
a11x+a12y+a13z=b1→⎣⎡a11a12a13⎦⎤⋅⎣⎡xyz⎦⎤=b1
上面的式子也可以整理为:
⎣⎡a11a12a13⎦⎤⋅⎣⎡x−x0y−y0z−z0⎦⎤=0
从中可以看出向量[a11,a12,a13]与向量[x−x0,y−y0,z−z0]垂直。
⎣⎡a11a12a13⎦⎤⋅⎣⎡x−x0y−y0z−z0⎦⎤=a11(x−x0)+a12(y−y0)+a13(z−z0)=0
这也就是平面的一般方程,其中平面的法向量为<a11,a12,a13>,平面上任意一个向量为 PP0=<x−x0,y−y0,z−z0>,其中某一点 P0 为(x0,y0,z0),平面上任意一点 P 的坐标就是(x,y,z)。
当P0 为原点(0,0,0)时,方程就会化简为a11x+a12y+a13z=0,即过原点的一个平面,其他方程也同理,这样就可以得到方程Ax=0,这个方程也被称为齐次系统(Homogeneous System),其余情况为非齐次系统(Inhomogeneous System)。
定理
令 A 为 n×n 的矩阵,
- 如果detA ̸=0,Ax=b 有唯一解,即x=A−1b
- 如果detA ̸=0,Ax=0 只有平凡解(trivial solutions),即x=0
- 如果detA=0,Ax=0 有非平凡解(解不为0)
- 如果detA=0,Ax=b 无解(向量b不在矩阵A张成的低维列空间里);也有可能有唯一解(向量b恰好在矩阵A的张成的低维列空间里,这时候就有无数解了,无穷多中线性组合)
从几何角度理解线性方程组Ax=b的解
这一部分的讨论只关注3×3矩阵,即三元一次方程组解的几何意义。
对于二元一次方程组来说,求解的几何意义就是找两条直线是否有交点(平行的时候方程组无解),同理,对于一个三元一次方程组来说,几何意义是求三个给定平面的交集,可能会出现以下几种情况:
- 三个平面相交于一点(唯一解)
- 三个平面相交于一条直线(无穷多个解)
2.a 两个平面相交,另外一个平面包含它的交线。
2.b 两个平面重合,并与另外一个平面相交。
- 三个平面相交于平面(无穷多个解)——也就是三个平面完全相同
- 三个平面没有任何交点或交线(无解)
4.a 三个平面互相平行
4.b 三个平面中有两个是平行的,且与另外一个平面相交
4.c 三个平面互相相交,但是每两个平面的交线都与另外的一条交线平行
4.d 三个平面有两个平面是相同的,与另外一个平面平行
下图展示了平面相交的二维示意图。

1.5 补充内容:直线和一般曲线的参数方程
一般曲线的参数方程(Parametric Equations)
给定某一点的位置(x,y,z)和一个独立的变量t(物理中通常是指时间),因为某一点的位置与参数t有关,所以每一个坐标分量都可以写成如下形式:
⎩⎪⎨⎪⎧x=x(t)y=y(t)z=z(t)
直线的参数方程
设直线上的某一点为P0=(x0,y0,z0),任意一点为P=(x,y,z),方向向量为v=<v1,v2,v3>
那么,
P0P=<x−x0,y−y0,z−z0>=tv=<tv1,tv2,tv3>直线的参数方程为:⎩⎪⎨⎪⎧x=x0+tv1y=y0+tv2z=z0+tv3

位置向量(Position Vector)
定义
在参数方程的基础上引入向量就可以得到位置向量了。
位置向量的定义:r(t)=x(t)i+y(t)j+z(t)k=<x(t),y(t),z(t)>
位置向量就是从原点出发到某一移动点位置的向量。

速度、加速度、速率和弧长
在给定位置矢量之后,我们可以对它求一阶导数,甚至是二阶导数。本节以二维平面下的位置矢量为例。
i. 速度和速率
已知位置矢量为 r(t)=x(t)i+y(t)j,且速度为位置矢量的导数,那么速度的表达式就是
velocity=v(t)=dtdr=dtdxi+dtdyj=<x′,y′>
速率为速度的大小
speed=∣∣dtdr∣∣
速度的单位向量(切向向量) T 也就可以表达为:
T=∣v∣v
ii. 弧长
弧长也就是曲线在某一定义域内曲线的长度(单变量微积分有涉及如何计算弧长),通常用s表示。
speed=dtds=∣v∣dtdsT=∣v∣T→dtdr=vdr=Tds
iii. 加速度
加速度为速度的一阶导数,位置矢量的二阶导数
a(t)=dtd2r=dtdv=dtd2xi+dtd2yj=<x′′,y′′>
位置矢量的微元 dr
摆线(Cycloid)
摆线就是圆上的某一点随着圆(在无滑动的条件下)滚动所产生的轨迹,如图所示:

摆线参数方程推导方法:

从图中可以看出,要求的位置矢量是OP,用走过的角度 θ 作为参数OP又可以表示成:
OP=<x(θ),y(θ)>=<aθ,0>+<0,a>+CPCP=<−asinθ,−acosθ>
联立两个式子可以得到:
OP=<x(θ),y(θ)>=<aθ−asinθ,a−acosθ>x(θ)=a(θ−sinθ),y(θ)=a(1−cosθ)
还要分析以下摆线在0处的极限值,否则不能保证每一个周期都没有重叠部分。分析如下:
dθdx(θ)=a(1−cosθ),dθdy(θ)=asinθdxdy=dθdy/dθdx=1−cosθsinθθ→0lim1−cosθsinθ=θ→0limsinθcosθ=01=∞
可以得出结论,每一个周期后曲线在起始处都是相切的。

参考
MIT 18.02多变量微积分及其讲义:
https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/