变分法(Calculus of Variations)可以用来求出使得某个量最小的函数。
平面上两点之间线段最短
我们用变分法来证明平面上两点之间线段最短。固定R2上的两点(0,0),(x0,y0)。不妨假设连接这两点的曲线连续可导,并且不存在斜率无穷大的情况。此时我们可以设这条曲线为y=f(x)。对于曲线上的一段微元ds,有ds=(dx)2+(dy)2。其中dy=f′(x)dx,因此ds=1+f′(x)2dx。对于任意f,由第一类曲线积分,曲线的长度为ℓ(f)=∫0x01+f′(x)2dx。我们要求出使得ℓ(f)最小的f。
变分法的核心思想是,使得ℓ(f)最小的那个f应当类似于函数的极值点:在极值点上做轻微扰动,函数值的变化量相对于自变量的变化量是高阶无穷小。现在我们就为函数定义扰动。设扰动函数为g(x),方便起见我们规定g(x)在端点处的值为0,也即g(0)=g(x0)=0。用任意一个常数ε>0作为扰动的比例系数,我们写出扰动后的曲线为y=f(x)+εg(x)。它对应的曲线长度为ℓ(f+εg)=∫0x01+[f′(x)+εg′(x)]2dx。如果f是我们要求的函数,那么函数ℓ(f+εg)关于ε的导数在ε=0处应当为0。也即
∂ε∂∫0x01+[f′(x)+εg′(x)]2dxε=0=0
我们认为求导和积分可以交换顺序,那么∂ε∂∫0x01+[f′(x)2+εg′(x)]dxε=0= ∫0x0∂ε∂1+[f′(x)2+εg′(x)]2ε=0dx= ∫0x01+[f′(x)+εg′(x)]2[f′(x)+εg′(x)]g′(x)ε=0dx= ∫0x01+f′(x)2f′(x)g′(x)dx。所以f应当满足
∀g,∫0x01+f′(x)2f′(x)g′(x)dx=0
显然∀x∈(0,x0),1+f′(x)2f′(x)=0是一个充分条件。但事实上1+f′(x)2f′(x)取任意常数C都是成立的,因为∫0x0Cg′(x)dx=C[g(x0)−g(0)]=0。所以我们需要更细致的分析。把1+f′(x)2f′(x)看作u,把g(x)看作v,由分部积分可得
∫0x01+f′(x)2f′(x)g′(x)dx=1+f′(x)2f′(x)g(x)0x0−∫0x0g(x)(1+f′(x)2f′(x))′dx
因为g(x)在0,x0处都取0,因此我们得到
∫0x0g(x)(1+f′(x)2f′(x))′dx=0
于是我们得到了一个更好的充分条件
∀x∈(0,x0),(1+f′(x)2f′(x))′=0
这意味着存在常数C0使得1+f′(x)2f′(x)≡C0,进而f′(x)2=C02[1+f′(x)2],解得f′(x)2=1−C02C02。因为我们假定了f连续可导,这意味着f′(x)是常数,也即f是直线。
最速降线
我们想知道小球沿光滑轨道从某点运动到另一点时用时最短的轨道的选择。固定R2上的两点(0,0),(x0,y0)。不妨假设轨道连续可导,并且不会在哪处是平的(斜率不能为0)。此时我们可以设这条曲线为x=f(y)。由动能定理,21mv2=−mgy,得v=−2gy。位移微元ds=1+f′(y)2dy。所以dt=vds=−2gy1+f′(y)2dy。因此总用时T(f)=2g1∫0y0−y1+f′(y)2dy。
和之前类似,设扰动后的函数写作f(y)+εg(y),则T(f+εg)=2g1∫0y0−y1+[f′(y)+εg′(y)]2dy。我们要使得∂ε∂∫0y0−y1+[f′(y)+εg′(y)]2dyε=0=0。交换积分和求导的顺序,得到∫0y0−y(1+f′(y)2)f′(y)g′(y)dy=0。使用分部积分法,得到
∀g,−y(1+f′(y)2)f′(y)g(y)0y0−∫0y0g(y)(−y(1+f′(y)2)f′(y))′dy=0
所以得到
∀y∈(y0,0),(−y(1+f′(y)2)f′(y))′=0
设−y(1+f′(y)2)f′(y)≡C0,化简得到f′(y)2=C021+y−y。让我们代入f′(y)=dydx,显然斜率总是负数,我们得到dydx=−C021+y−y。让我们来证明,当C0取合适的值时,这就是摆线的方程。令y=−2C021(1−cosθ),其中θ从0开始变化,不超过−π。此时dydx=−1+cosθ1−cosθ=−tan2θ。同时,dy=−2C02sinθdθ。于是dx=tan2θ⋅2C022sin2θcos2θdθ=C02sin22θdθ=2C021−cosθdθ,因此x=2C021(θ−sinθ)。可见,这是半径r=2C021的摆线方程:
{x=r(θ−sinθ)y=−r(1−cosθ)
欧拉-拉格朗日方程
通过以上两个例子,我们可以发现变分法的计算过程有一般规律可循。设定曲线为y=f(x),要使得J(f)=∫x1x2L(x,f(x),f′(x))dx最小,我们会引入扰动ε,g(g在端点x1,x2处取0),曲线变成y=f(x)+εg(x),对应地有J(f+εg)=∫x1x2L(x,f(x)+εg(x),f′(x)+εg′(x))dx。如果f是我们要求的函数,函数J(f+εg)关于ε的导数在ε=0处应当为0:
∂ε∂∫x1x2L(x,f(x)+εg(x),f′(x)+εg′(x))dxε=0=0
交换求导和积分的顺序,其中我们把L看作关于三个槽位x,y,y′的函数,有链式法则
∂ε∂L=∂x∂L⋅∂ε∂x+∂y∂L⋅∂ε∂y+∂y′∂L⋅∂ε∂y′
带入计算可得
∂ε∂Lε=0=g(x)∂y∂L+g′(x)∂y′∂L
所以我们得到
∀g,∫x1x2[g(x)∂y∂L+g′(x)∂y′∂L]dx=0
对∫x1x2g′(x)∂y′∂Ldx这一项使用分部积分,得到−∫x1x2g(x)(∂y′∂L)′dx。所以
∀g,∫x1x2g(x)[∂y∂L−(∂y′∂L)′]dx=0
这给出了
∂y∂L=dxd(∂y′∂L)
这称为欧拉-拉格朗日方程。其中L称为拉格朗日函数。
等周问题
下面我们用变分法来证明定长闭合曲线包围面积最大时是圆。此时我们面临了两个困难:圆不是函数;增加了曲线总长度的限制条件。对于第一个困难,我们用曲线的参数化来解决;对于第二个困难,我们把“无条件极值点⟺导数为0”的类比升级为“有条件极值点⟺拉格朗日乘数的导数为0”。
设{x=x(t)y=y(t),t∈[t0,t1]。固定常数C>0,令L(x,y)=∫t0t1x˙2+y˙2dt=C。其面积可以由格林公式写出:A(x,y)=21∫t0t1(xy˙−yx˙)dt。仿照拉格朗日乘数法,我们构造
J(x,y)=∫t0t121(xy˙−yx˙)dt+λ(∫t0t1x˙2+y˙2dt−C)
要求出极值点,只需取J的导数为0。对此,我们可以直接应用欧拉-拉格朗日方程来简化计算。其中C是常数,不影响极值点。因此我们可以去拉格朗日函数为
L(x,y,x˙,y˙)=21(xy˙−yx˙)+λx˙2+y˙2
这里有两个待求函数 x(t) 和 y(t),它们是独立的。所以我们可以列出两个欧拉-拉格朗日方程:
⎩⎨⎧∂x∂L=dtd(∂x˙∂L)∂y∂L=dtd(∂y˙∂L)
第一个方程化简为y˙=λ⋅dtd(x˙2+y˙2x˙),也即dtd(y−λ⋅x˙2+y˙2x˙)=0,所以y−λ⋅x˙2+y˙2x˙=C1。同理,第二个方程化简得到x+λx˙2+y˙2y˙=−C2。由此可见(x−C2)2+(y−C1)2=λ2。这恰好是圆方程。
最小作用量原理
牛顿定律可以不写成F=ma的形式而表述成:一物体从一点到另一点所走的路径总是使其关于时间的平均动能减去平均势能最小(不考虑非保守力,故能量只有动能和势能)。“平均动能减去平均势能”这个量被称为“作用量”,这一力学定律的等价表述形式称为“最小作用量原理”。
例如,让我们考虑物体不受力时,沿x轴从x1运动到x2,初始速度为v0。牛顿定律告诉我们,物体将保持匀速直线运动。让我们来考虑最小作用量原理如何给出物体的运动:设x(t1)=x1,x(t2)=x2,物体运动过程中,将使得∫t1t2[21mv2−0]dt尽可能小。也即我们要求使得∫t1t2(dtdx)2dt最小的函数x。设拉格朗日函数L(t,y,y′)=(y′)2,代入欧拉-拉格朗日方程∂y∂L=dtd(∂y′∂L)可得dtdv=0。可见根据最小作用量原理,物体也做匀速直线运动。
现在考虑物体受沿x轴负方向的重力。牛顿定律告诉我们,物体将获得沿x轴负方向的加速度g。让我们来考虑最小作用量原理如何给出物体的运动:设x(t1)=x1,x(t2)=x2,物体运动过程中,将使得∫t1t2[21mv2−mgx]dt尽可能小。也即我们要求使得∫t1t2[(dtdx)2−2gx]dt最小的函数x。设拉格朗日函数L(t,y,y′)=(y′)2−2gy,代入欧拉-拉格朗日方程∂y∂L=dtd(∂y′∂L)可得dtdv=−g。可见根据最小作用量原理,物体也获得沿x轴负方向的加速度g。
最小作用量原理不仅对经典力学成立,只要我们对作用量做出正确的修正,会发现最小作用量原理对于量子力学和相对论也成立。这样我们就得到了两套物理理论:一套是决定论思维的,上一时刻的粒子排布决定下一时刻的粒子排布;另一套是目的论思维的,宇宙中的一切现象都是优化某个函数的结果。