目录
初等启发
最近和中学生多了一些接触,遇到了一个有趣的问题。
在坐标系$xOy$中,在$x$轴正半轴上有一动点$A$,$y$轴正半轴上有一动点$B$,二者的依赖关系是$ riangle AOB$面积是定值,求线段$AB$围出的区域。更一般的依赖关系呢?例如$AB$长度是定值?
问题的答案是,当依赖关系是$ riangle AOB$面积是定值时,围出的区域是第一象限的双曲线$xy=lambda$的下方;当依赖关系是$AB$长度是定值时,围出的区域是第一象限的星形线$x^{2/3}+y^{2/3}=lambda^{2/3}$的下方,其中$lambda$是一个常数。如图
这个问题当然是初等的,以长度为定值为例,遵循如下思路便可在高中知识内解决
- 方便起见,假设长度是定值$1$.
- 这族曲线可以统一写作$frac{x}{cos heta}+frac{y}{sin heta}=1$.
- 固定$x=x_0$,计算此时这族直线交${x=x_0}$的最高点,即$y=sin heta+x_0 an heta$的取值范围。
- 具体来说,对$ heta$求导求出最值点$ heta$满足$cos heta=sqrt[3]{x_0}$得到最值$y=sqrt{1-sqrt[3]{x_0^2}}(1-sqrt[3]{x_0^2})$。
- 故区域的边界满足$x^{2/3}+y^{2/3}=1$.
以上过程后文会有引用,故全盘托出。纵观以上问题,关键在于求出区域的边界,对于每个$x=x_0$,关键的点是那些最值点。假如依赖关系得到的这族直线方程可用参数$t$标作$f(x,y,t)=0$,那么我们要求的『边界』应该满足如下方程$$egin{cases}f(x,y,t)=0\ frac{partial f}{partial t}(x,y,t)=0end{cases}$$其中$frac{partial f}{partial t}$表示$f$对$t$求导。这正是所谓的『包络线』方程。
包络曲线
一个经典的想法是用微分方程考虑这个问题
要找一条曲线处处切线都是满足条件——截第一象限为一定长度。
假设曲线方程是$y=f(x)$,那么$(x_0,f(x_0))$处切线方程是$y-f(x_0)=f'(x_0)(x-x_0)$,所谓的截距分别是$-frac{f(x_0)}{f'(x_0)}+x_0$和$-x_0f'(x_0)+f(x_0)$,那么长度是定值$1$表明
$$left(-frac{f(x_0)}{f'(x_0)}+x_0 ight)^2+left(-x_0f'(x_0)+f(x_0) ight)^2=1$$
这个方程这可由参数代换法解出,假设$egin{cases} -frac{f(x)}{f'(x)}+x=cos heta\ -xf'(x)+f(x)=sin heta end{cases}$得到
$$egin{cases}y'=- an heta\ y=sin heta-x an hetaend{cases}$$
带入$mathrm{d}y=y'mathrm{d}x$得到
$$cos hetamathrm{d} heta -xfrac{1}{cos^2 heta}mathrm{d} heta- an hetamathrm{d}x=- an hetamathrm{d}x$$
所以$left(cos heta-xfrac{1}{cos^2 heta} ight)frac{mathrm{d} heta}{mathrm{d}x}=0$, 在每点有两种可能性,其一是$cos heta-xfrac{1}{cos^2 heta}=0$,另一是$frac{mathrm{d} heta}{mathrm{d}x}$. 前者经过直接地代数变形就变成星形线,后者正对应着那些与之相切的直线(这样的曲线当然满足条件)。
正是所谓微分方程的奇解,这通常出现在隐式方程之中,定义为那些『任意一点附近都有与之相切的解』的解。当然,如标题所言,这还牵涉到包络线,经典的包络线是下面的星形线
微分方程和奇解和几何上的包络概念互相对应。
另一个惊为天人的奇思妙想是,这个曲线上每一点都是『靠近的两条直线的交点』的极限。具体来说,$y=f(x)$在$x_0$的切线和$x_0+Delta x$处的切线的交点应该不会距离$(x_0,f(x_0))$太远,所以想要还原$y=f(x)$,需要遵循如下步骤
- 将这族曲线可以统一写作$frac{x}{cos heta}+frac{y}{sin heta}=1$.
- 求$egin{cases}frac{x}{cos heta}+frac{y}{sin heta}=1 \ frac{x}{cos ( heta+delta heta)}+frac{y}{sin ( heta+delta heta)}=1 end{cases}$的交点。
- 令$Delta heta o 0$得到交点,这样就得到了$y=f(x)$的表达式。
但是这样操作极为繁琐,映为直线方程难解。好在可微性允许我们只计算大致的结果,方程本质是$egin{cases}f(x,y,t)=0\ f(x,y,t+Delta t)=0end{cases}$,我们知道$f(x,y,t+Delta t)=f(x,y,t)+Delta t f_t(x,y,t)$,所以方程变成$$egin{cases}f(x,y,t)=0\ frac{partial f}{partial t}(x,y,t)=0end{cases}$$其中$frac{partial f}{partial t}$表示$f$对$t$求导。我们又一次得到了包络曲线的方程。
对偶曲线
在射影平面$mathbb{P}^2$中,每一条直线$Ax+By+Cz=0$和点$[A,B,C]$一一对应,在此对应下可以对一条曲线$C$定义对偶曲线为
$$C^vee={[a,b,c]: extrm{直线$ax+by+cz=0$与$C$相切}}$$
例如,曲线$C: xy=z^2$的所有切线形如$y_0x+x_0y-2z_0z=0$,其中$[x_0,y_0,z_0]$在$C$上,故对偶曲线是$C^vee: xy=z^2/4$。而$(C^vee)$的切线又形如$y_0^* x+x_0^*y-frac{z_0^*}{2}z=0$,其中$[x_0^*,y_0^*,z_0^*]$在$C^vee$上,故$C^vee$的对偶曲线是$(C^vee)^vee: xy=z^2$又回到了自己。有了上文最末『惊为天人』的想法,这个结果并不令我们惊奇,因为在$mathbb{P}^2$中直线和点的对应下,过两点的直线对应到对应直线的交点,两直线的交点对应到过对应点的连线,所以切线的交点$leftrightarrow$对应点的连线,让切线接近得到的点就对应到切线,所以『惊为天人』又『不出意料』地回到自己。
这一点可以严格证明,假设曲线被局部参数化作$[x_1(t),x_2(t),x_3(t)]$,要求切线,实际上是求$mathbb{R}^3$中$(x_1(t)s,x_2(t)s,x_3(t)s)$的切空间,不难计算出切线方程是$ax+by+cz=0$,其中$(a,b,c)=(x_1,x_2,x_3)wedge (x_1',x_2',x_3')$,其中$wedge$是向量积。我们记$mathbf{x}=(x_1(t),x_2(t),x_3(t))$,于是对偶曲线应该是$[x^*(t),y^*(t),z^*(t)]$, 其中$(x^*,y^*,z^*)=mathbf{x}wedge mathbf{x'}$. 要证明对偶,下面的计算就变得关键
$$egin{array}{rl} (mathbf{x}wedge mathbf{x}')wedge (mathbf{x}wedge mathbf{x}')' & = (mathbf{x}wedge mathbf{x}')wedge underbrace{(mathbf{x}'wedge mathbf{x}')}_{=0} +(mathbf{x}wedge mathbf{x}')wedge (mathbf{x}wedge mathbf{x}'') \& = left<mathbf{x}wedge mathbf{x}',mathbf{x}'' ight>mathbf{x}- underbrace{left<mathbf{x}wedge mathbf{x}',mathbf{x} ight>}_{=0}mathbf{x}'' \& = [mathbf{x},mathbf{x}',mathbf{x}''] mathbf{x} end{array}$$
和$mathbf{x}$是共线的,所以说明二次对偶和原本的曲线相同。
感谢刘奔和我交流讨论。