物理学 - 经典力学
上一页 上一级 下一页
在牛顿力学中,机械系统总是由质点或刚体组成,它们受到已知力的作用。因此,必须指定系统的组成以及作用在各个物体上的力的性质。然后,为系统编写运动方程。以下是一些关于如何在牛顿力学中描述机械系统的示例(这些示例您在学校物理课上肯定都学过)。
这是所有机械系统中最简单的一个:一个不与任何其他物体相互作用且不受任何力的质点。引入坐标 x , y , z {\displaystyle x,y,z} 来描述质点的位置。由于力始终等于零,因此运动方程为 x ¨ = 0 , y ¨ = 0 , z ¨ = 0 {\displaystyle {\ddot {x}}=0,{\ddot {y}}=0,{\ddot {z}}=0} 。这些方程的通解描述了匀速直线运动: x = x 0 + v x t {\displaystyle x=x_{0}+v_{x}t} ,等等。
物理弹簧示例
两个物体可以沿一条线( x {\displaystyle x} 轴)无摩擦地移动。质量 m 1 {\displaystyle m_{1}} 通过弹簧连接到墙上,质量 m 2 {\displaystyle m_{2}} 通过弹簧连接到质量 m 1 {\displaystyle m_{1}} 。两个弹簧的弹簧常数均为 k {\displaystyle k} ,未拉伸长度为 L {\displaystyle L} 。
为了写出运动方程,我们首先引入两个坐标 x 1 , x 2 {\displaystyle x_{1},x_{2}} ,然后考虑作用在两个质量上的力。作用在质量 m 1 {\displaystyle m_{1}} 上的力是左侧弹簧向左的力 F 1 {\displaystyle F_{1}} 和右侧弹簧向右的力 F 2 {\displaystyle F_{2}} 的和。作用在 m 2 {\displaystyle m_{2}} 上的力是向左的 F 2 {\displaystyle F_{2}} 。根据“弹簧”的定义,我们有 F 1 = k ( x 1 − L ) {\displaystyle F_{1}=k(x_{1}-L)} 和 F 2 = k ( x 2 − x 1 − L ) {\displaystyle F_{2}=k(x_{2}-x_{1}-L)} 。因此,我们写出两个质量的加速度 a 1 , a 2 {\displaystyle a_{1},a_{2}} 的方程。
a 1 = x 1 ¨ = F 2 − F 1 m 1 = k m 1 ( x 2 − x 1 − L ) − k m 1 ( x 1 − L ) , {\displaystyle a_{1}={\ddot {x_{1}}}={\frac {F_{2}-F_{1}}{m_{1}}}={\frac {k}{m_{1}}}(x_{2}-x_{1}-L)-{\frac {k}{m_{1}}}(x_{1}-L),}
a 2 = x 2 ¨ = − F 2 m 2 = − k m 2 ( x 2 − x 1 − L ) . {\displaystyle a_{2}={\ddot {x_{2}}}=-{\frac {F_{2}}{m_{2}}}=-{\frac {k}{m_{2}}}(x_{2}-x_{1}-L).}
至此,我们完成了对系统的描述;现在我们需要针对特定的初始条件求解这些方程,并确定该系统的实际运动。
机械系统的拉格朗日描述 则有所不同:首先,我们不寻求给定初始条件下系统的演化,而是假设系统在两个不同时刻 t 1 {\displaystyle t_{1}} 和 t 2 {\displaystyle t_{2}} 的位置是已知且固定的。为方便起见,我们将所有坐标(例如 x , y , z {\displaystyle x,y,z} 或 x 1 , x 2 {\displaystyle x_{1},x_{2}} )收集到一个“广义坐标”数组中,并用 q i {\displaystyle q_{i}} 表示。因此,我们对系统施加的“边界条件”为 q i ( t 1 ) = A i {\displaystyle q_{i}(t_{1})=A_{i}} 和 q i ( t 2 ) = B i {\displaystyle q_{i}(t_{2})=B_{i}} ,其中 A i , B i {\displaystyle A_{i},B_{i}} 是固定的数字。我们现在要问:系统在 t 1 {\displaystyle t_{1}} 和 t 2 {\displaystyle t_{2}} 这两个时刻之间 是如何运动的?拉格朗日描述的答案是:在这段时间内,系统必须以这样一种方式运动 ,使得积分 ∫ t 1 t 2 L ( q i , q ˙ i ) d t {\displaystyle \int _{t_{1}}^{t_{2}}L(q_{i},{\dot {q}}_{i})dt} 的值最小,其中 L ( q i , q ˙ i ) {\displaystyle L(q_{i},{\dot {q}}_{i})} 是一个已知的函数,称为拉格朗日函数 或拉格朗日量 。例如,自由质点的拉格朗日量为
L ( x , y , z , x ˙ , y ˙ , z ˙ ) = m 2 [ x ˙ 2 + y ˙ 2 + z ˙ 2 ] . {\displaystyle L(x,y,z,{\dot {x}},{\dot {y}},{\dot {z}})={\frac {m}{2}}[{\dot {x}}^{2}+{\dot {y}}^{2}+{\dot {z}}^{2}].}
上面两个质量连接到墙上的例子,其拉格朗日量为
L ( x 1 , x 2 , x ˙ 1 , x ˙ 2 ) = m 2 [ x ˙ 1 2 + x ˙ 2 2 ] − k 2 ( x 1 − L ) 2 − k 2 ( x 2 − x 1 − L ) 2 . {\displaystyle L(x_{1},x_{2},{\dot {x}}_{1},{\dot {x}}_{2})={\frac {m}{2}}[{\dot {x}}_{1}^{2}+{\dot {x}}_{2}^{2}]-{\frac {k}{2}}(x_{1}-L)^{2}-{\frac {k}{2}}(x_{2}-x_{1}-L)^{2}.}
例如,根据拉格朗日描述,自由质点以这样的方式运动,使得函数 x ( t ) , y ( t ) , z ( t ) {\displaystyle x(t),y(t),z(t)} 使积分 ∫ t 1 t 2 m 2 [ x ˙ 2 + y ˙ 2 + z ˙ 2 ] d t {\displaystyle \int _{t_{1}}^{t_{2}}{\frac {m}{2}}[{\dot {x}}^{2}+{\dot {y}}^{2}+{\dot {z}}^{2}]dt} 的值最小,其中 x ( t ) , y ( t ) , z ( t ) {\displaystyle x(t),y(t),z(t)} 在时间 t 1 , 2 {\displaystyle t_{1,2}} 处的取值是固定的。
原则上,要找到积分 ∫ t 1 t 2 L ( q i , q ˙ i ) d t {\displaystyle \int _{t_{1}}^{t_{2}}L(q_{i},{\dot {q}}_{i})dt} 的最小值,需要对每条可能的轨迹 q i ( t ) {\displaystyle q_{i}(t)} 计算该积分,然后选择使该积分值最小的“最优”轨迹 q i ∗ ( t ) {\displaystyle q_{i}^{*}(t)} 。(当然,我们将学习并使用一种更有效的数学方法来确定这种“最优”轨迹,而不是尝试每组可能的函数 q i ( t ) {\displaystyle q_{i}(t)} 。)上述积分的值称为对应于特定轨迹 q i ( t ) {\displaystyle q_{i}(t)} 的作用量 。因此,要求积分应具有最小值通常被称为“最小作用量原理”或简称作用量原理 。
在这一点上,我们需要回答一个紧迫的问题
为什么正确的轨迹 q i ∗ ( t ) {\displaystyle q_{i}^{*}(t)} 不是通过考虑力来找到的,而是通过要求某个积分具有最小值来找到的?每个质点在运动时是如何“知道”它需要最小化某个积分的?
简短的答案是,如果拉格朗日量 L {\displaystyle L} 选择正确,那么最小作用量原理在数学上等价于 力的考虑。某个积分具有最小值(当积分选择正确时)的条件在数学上与牛顿的加速度方程相同。点质量可能“不知道”关于这个积分的任何信息。仅仅是在数学上方便地用一句话而不是很多句话来表述力学定律。(我们将在下面 看到另一种更直观的解释。)
假设我们理解了如何将某个积分具有最小值的条件转化为加速度的方程。显然,由于运动方程不同,每个力学系统的积分形式都需要不同。然后第二个问题出现了
我们如何找到对应于每个力学系统的拉格朗日函数 L ( q i , q ˙ i ) {\displaystyle L(q_{i},{\dot {q}}_{i})} ?
这是一个更复杂的问题,需要研究许多例子才能掌握这种方法。(简而言之:拉格朗日函数是动能减去势能。)
在考虑拉格朗日函数之前,我们将看看“最小作用量”的数学要求如何等价于上述例子中给出的运动方程。
函数是从数到数的映射;泛函 是从函数到数的映射。泛函作用于函数通常用方括号表示,例如 S [ f ( x ) ] {\displaystyle S[f(x)]} 。
泛函的随机例子,仅用于说明概念
S [ f ( x ) ] = ∫ 0 ∞ f ( 3 x ) d x {\displaystyle S[f(x)]=\int _{0}^{\infty }{\sqrt {f(3x)}}dx}
S [ f ( x ) ] = ∫ − 1 1 f ( x ) 1 − x 2 d x {\displaystyle S[f(x)]=\int _{-1}^{1}{\frac {f(x)}{1-x^{2}}}dx}
S [ f ( x ) ] = f ( 15 ) − 8 f ′ ( 3 ) − ∫ 0 1 sin [ ( f ( x − 2 ) + x e − x ) 3 ] d x {\displaystyle S[f(x)]=f(15)-8f'(3)-\int _{0}^{1}\sin \left[(f(x-2)+{\sqrt {x}}e^{-x})^{3}\right]dx}
原则上,泛函可以是任何将数字分配给任何函数的东西。在实践中,只有某些泛函是有趣的并且在物理学中得到应用。
由于作用积分将轨迹映射到数字,因此我们可以将其称为作用泛函 。作用量原理表述如下:轨迹 q i ( t ) {\displaystyle q_{i}(t)} 必须使得作用泛函作用于该轨迹的值在所有轨迹中最小。
这可能看起来类似于我们熟悉的机械平衡条件:坐标 x , y , z {\displaystyle x,y,z} 使得势能具有最小值。但是,存在一个关键的区别:当我们最小化势能时,我们改变三个数字 x , y , z {\displaystyle x,y,z} 直到找到最小值;但是当我们最小化一个泛函 时,我们必须改变整个函数 q i ( t ) {\displaystyle q_{i}(t)} 直到找到泛函的最小值。
称为变分法 的数学分支研究最小化(最大化,极值化)泛函的问题。此时需要学习一些变分学知识。让我们从解决一些涉及多个变量函数的简单最小化问题开始;这将为我们处理可以被认为是无限多个变量的函数的泛函做好准备。在查看解答之前,您应该自己尝试这些例子。
例1 :关于 x , y {\displaystyle x,y} 最小化函数 f ( x , y ) = x 2 + x y + y 2 {\displaystyle f(x,y)=x^{2}+xy+y^{2}} 。
示例 2 :针对所有 x j {\displaystyle x_{j}} ,最小化函数 f ( x 1 , . . . , x n ) = x 1 2 + x 1 x 2 + x 2 2 + x 2 x 3 + . . . + x n 2 {\displaystyle f(x_{1},...,x_{n})=x_{1}^{2}+x_{1}x_{2}+x_{2}^{2}+x_{2}x_{3}+...+x_{n}^{2}} 。
示例 3 :针对所有 x j {\displaystyle x_{j}} ,在约束条件 x 0 = 0 , x n = A {\displaystyle x_{0}=0,x_{n}=A} 下,最小化函数 f ( x 0 , . . . , x n ) = ( x 1 − x 0 ) 2 + ( x 2 − x 1 ) 2 + . . . + ( x n − x n − 1 ) 2 {\displaystyle f(x_{0},...,x_{n})=(x_{1}-x_{0})^{2}+(x_{2}-x_{1})^{2}+...+(x_{n}-x_{n-1})^{2}} 。
解法 1: 计算 f {\displaystyle f} 对 x , y {\displaystyle x,y} 的偏导数。这两个导数都必须等于零。这只有在 x = 0 , y = 0 {\displaystyle x=0,y=0} 时才能发生。
解法 2: 计算 f {\displaystyle f} 对所有 x j {\displaystyle x_{j}} 的偏导数,其中 j = 1 , . . . , n {\displaystyle j=1,...,n} 。这些导数都必须等于零。这只有在所有 x j = 0 {\displaystyle x_{j}=0} 时才能发生。
方案 3: 计算 f {\displaystyle f} 关于 x j {\displaystyle x_{j}} 的偏导数,其中 j = 2 , . . . , n − 1 {\displaystyle j=2,...,n-1} 。这些导数必须都等于零。只有当 x j − x j − 1 = x j + 1 − x j {\displaystyle x_{j}-x_{j-1}=x_{j+1}-x_{j}} 对于 j = 1 , 2 , . . . , n − 1 {\displaystyle j=1,2,...,n-1} 时才会发生。已知值 x 0 , x n {\displaystyle x_{0},x_{n}} ,因此我们发现 x j = j A / n {\displaystyle x_{j}=jA/n} 。
现在让我们考虑最小化泛函 S [ x ] = ∫ 0 1 x ˙ ( t ) 2 d t {\displaystyle S[x]=\int _{0}^{1}{{\dot {x}}(t)}^{2}dt} 关于所有函数 x ( t ) {\displaystyle x(t)} 的问题,前提是受限于 x ( 0 ) = 0 , x ( 1 ) = L {\displaystyle x(0)=0,x(1)=L} 。我们将首先以一种更直观但近似的方式进行最小化,然后我们将看到变分法如何更优雅地处理同样的任务。
Let us imagine that we are trying to minimize the integral L [ x ] {\displaystyle L[x]} with respect to all functions x ( t ) {\displaystyle x(t)} using a digital computer. The first problem is that we cannot represent "all functions" x ( t ) {\displaystyle x(t)} on a computer because we can only store finitely many values x ( t 0 ) , x ( t 1 ) , . . . , x ( t N ) {\displaystyle x(t_{0}),x(t_{1}),...,x(t_{N})} in an array within the computer memory. So we split the time interval [ 0 , 1 ] {\displaystyle [0,1]} into a large number N {\displaystyle N} of discrete steps [ 0 , t 1 ] , [ t 1 , t 2 ] , . . . , [ t N − 1 , 1 ] {\displaystyle [0,t_{1}],[t_{1},t_{2}],...,[t_{N-1},1]} , where the step size t j − t j − 1 ≡ Δ t = 1 / N {\displaystyle t_{j}-t_{j-1}\equiv \Delta t=1/N} is small; in other words, t j = j / N , j = 1 , . . . , N − 1 {\displaystyle t_{j}=j/N,j=1,...,N-1} . We can describe the function x ( t ) {\displaystyle x(t)} by its values x j {\displaystyle x_{j}} at the points t j {\displaystyle t_{j}} , assuming that the function x ( t ) {\displaystyle x(t)} is a straight line between these points. The time moments t 1 , . . . , t N − 1 {\displaystyle t_{1},...,t_{N-1}} will be kept fixed, and then the various values x j {\displaystyle x_{j}} will correspond to various possible functions x ( t ) {\displaystyle x(t)} . (In this way we definitely will not describe all possible functions x ( t ) {\displaystyle x(t)} , but the class of functions we do describe is broad enough so that we get the correct results in the limit N → ∞ {\displaystyle N\to \infty } . Basically, any function x ( t ) {\displaystyle x(t)} can be sufficiently well approximated by one of these "piecewise-linear" functions when the step size Δ t {\displaystyle \Delta t} is small enough.)
由于我们已经离散化了时间并减少了对分段线性函数的关注,所以我们有
x ˙ = x j − x j − 1 Δ t {\displaystyle {\dot {x}}={\frac {x_{j}-x_{j-1}}{\Delta t}}}
在每个区间 t ∈ [ t j − 1 , t j ] {\displaystyle t\in [t_{j-1},t_{j}]} 内。因此,我们可以将积分 S [ x ] {\displaystyle S[x]} 表示为有限和,
S [ x ] = ∫ 0 1 x ˙ ( t ) 2 d t = ∑ j = 1 N ( x j − x j − 1 ) 2 Δ t 2 Δ t , {\displaystyle S[x]=\int _{0}^{1}{{\dot {x}}(t)}^{2}dt=\sum _{j=1}^{N}{\frac {{(x_{j}-x_{j-1})}^{2}}{\Delta t^{2}}}\Delta t,}
其中,为方便起见,我们定义了 t 0 = 0 , t N = 1 {\displaystyle t_{0}=0,t_{N}=1} 。
At this point we can perform the minimization of S [ x ] {\displaystyle S[x]} quite easily. The functional S [ x ] {\displaystyle S[x]} is now a function of N − 1 {\displaystyle N-1} variables x 1 , . . . , x N − 1 {\displaystyle x_{1},...,x_{N-1}} , i.e. S [ x ] = S ( x 1 , . . . , x N − 1 ) {\displaystyle S[x]=S(x_{1},...,x_{N-1})} , so the minimum is achieved at the values x j {\displaystyle x_{j}} where the derivatives of S ( x 1 , . . . , x N − 1 ) {\displaystyle S(x_{1},...,x_{N-1})} with respect to each x j {\displaystyle x_{j}} are zero. This problem is now quite similar to the Example 3 above, so the solution is x j = j L / N , j = 0 , . . . , N {\displaystyle x_{j}=jL/N,j=0,...,N} . Now we recall that x j {\displaystyle x_{j}} is the value of the unknown function x ( t ) {\displaystyle x(t)} at the point t j = j / N {\displaystyle t_{j}=j/N} . Therefore the minimum of the functional S [ x ] {\displaystyle S[x]} is found at the values x j {\displaystyle x_{j}} such that would correspond to the function x ( t ) = L t {\displaystyle x(t)=Lt} . As we increase the number N {\displaystyle N} of intervals, we still obtain the same function x ( t ) = L t {\displaystyle x(t)=Lt} , therefore the same function is obtained in the limit N → ∞ {\displaystyle N\to \infty } . We conclude that the function x ( t ) = L t {\displaystyle x(t)=Lt} minimizes the functional L [ x ] {\displaystyle L[x]} with the restrictions x ( 0 ) = 0 , x ( 1 ) = L {\displaystyle x(0)=0,x(1)=L} .
上述计算的优点在于更直观和视觉化:它清楚地表明,泛函 S [ x ( t ) ] {\displaystyle S[x(t)]} 关于函数 x ( t ) {\displaystyle x(t)} 的最小化,与函数 S ( x 1 , . . . , x N ) {\displaystyle S(x_{1},...,x_{N})} 关于大量变量 x j {\displaystyle x_{j}} 的最小化非常相似,当变量数量无限增加时。然而,变分法的形式主义提供了一种更高效的计算程序。下面是如何计算使 S [ x ] {\displaystyle S[x]} 最小化的函数 x ( t ) {\displaystyle x(t)} 的方法。
让我们考虑函数 x ( t ) {\displaystyle x(t)} 的一个非常小的变化 ϵ ( t ) {\displaystyle \epsilon (t)} ,并观察泛函 S [ x ] {\displaystyle S[x]} 如何变化。
δ S [ x ( t ) , ϵ ( t ) ] ≡ S [ x ( t ) + ϵ ( t ) ] − S [ x ( t ) ] . {\displaystyle \delta S[x(t),\epsilon (t)]\equiv S[x(t)+\epsilon (t)]-S[x(t)].}
(在许多教科书中, x ( t ) {\displaystyle x(t)} 的变化用 δ x ( t ) {\displaystyle \delta x(t)} 表示,通常任何量 Q {\displaystyle Q} 的变化用 δ Q {\displaystyle \delta Q} 表示。为了清晰起见,我们选择用 ϵ ( t ) {\displaystyle \epsilon (t)} 而不是 δ x ( t ) {\displaystyle \delta x(t)} 来表示。)
泛函 S [ x ] {\displaystyle S[x]} 关于函数 x ( t ) {\displaystyle x(t)} 的变化 ϵ ( t ) {\displaystyle \epsilon (t)} 的**变分**称为 δ S [ x , ϵ ] {\displaystyle \delta S[x,\epsilon ]} 。变分本身是一个泛函,它依赖于两个函数: x ( t ) {\displaystyle x(t)} 和 ϵ ( t ) {\displaystyle \epsilon (t)} 。当 ϵ ( t ) {\displaystyle \epsilon (t)} 非常小时,我们期望变分在 ϵ ( t ) {\displaystyle \epsilon (t)} 中是**线性**的,就像普通函数的值的变化在其自变量的变化量中是线性的,例如,对于小的 α {\displaystyle \alpha } , f ( t + α ) − f ( t ) = f ′ ( t ) α {\displaystyle f(t+\alpha )-f(t)=f'(t)\alpha } 。因此,我们期望泛函 S [ x ] {\displaystyle S[x]} 的变分 δ S [ x , ϵ ] {\displaystyle \delta S[x,\epsilon ]} 将是 ϵ ( t ) {\displaystyle \epsilon (t)} 的**线性泛函**。为了理解线性泛函是什么样的,考虑一个依赖于几个变量 α j {\displaystyle \alpha _{j}} , j = 1 , 2 , . . . {\displaystyle j=1,2,...} 的线性函数 f ( ϵ j ) {\displaystyle f(\epsilon _{j})} 。这个函数总是可以写成
f ( ϵ j ) = ∑ j A j ϵ j {\displaystyle f(\epsilon _{j})=\sum _{j}^{}A_{j}\epsilon _{j}}
其中 A j {\displaystyle A_{j}} 是合适的常数。由于泛函类似于无限多个变量的函数,索引 j {\displaystyle j} 变成了连续变量 t {\displaystyle t} ,变量 ϵ j {\displaystyle \epsilon _{j}} 和常数 A j {\displaystyle A_{j}} 变成了函数 ϵ ( t ) , A ( t ) {\displaystyle \epsilon (t),A(t)} ,而对 j {\displaystyle j} 的求和变成了对 t {\displaystyle t} 的积分。因此, ϵ ( t ) {\displaystyle \epsilon (t)} 的线性泛函可以写成一个积分形式,
δ S [ x , ϵ ] = ∫ 0 1 A ( t ) ϵ ( t ) d t , {\displaystyle \delta S[x,\epsilon ]=\int _{0}^{1}A(t)\epsilon (t)dt,}
其中 A ( t ) {\displaystyle A(t)} 是一个合适的函数。在通常函数 f ( t ) {\displaystyle f(t)} 的情况下,“合适的常数 A {\displaystyle A} ” 是导数 A = d f ( t ) / d t {\displaystyle A=df(t)/dt} 。根据类比,我们称上面的 A ( t ) {\displaystyle A(t)} 为泛函的变分导数 ,并用 δ S [ x ] / δ x ( t ) {\displaystyle \delta S[x]/\delta x(t)} 表示。
如果一个函数在某一点的导数为零,则该点为函数的极小值(或极大值,或极值点)。因此,泛函 S [ x ( t ) ] {\displaystyle S[x(t)]} 在函数 x ( t ) {\displaystyle x(t)} 处具有极小值(或极大值,或极值点),其中泛函导数为零。我们将在下面证明这个陈述,现在让我们计算泛函 S [ x ( t ) ] = ∫ 0 1 x ˙ 2 d t {\displaystyle S[x(t)]=\int _{0}^{1}{\dot {x}}^{2}dt} 的泛函导数。
将 x ( t ) + ϵ ( t ) {\displaystyle x(t)+\epsilon (t)} 代入 x ( t ) {\displaystyle x(t)} 到泛函中,我们得到
δ S [ x , ϵ ] = ∫ 0 1 [ ( x ˙ + ϵ ˙ ) 2 − x ˙ 2 ] d t = 2 ∫ 0 1 x ˙ ϵ ˙ d t + O ( ϵ 2 ) , {\displaystyle \delta S[x,\epsilon ]=\int _{0}^{1}[({\dot {x}}+{\dot {\epsilon }})^{2}-{\dot {x}}^{2}]dt=2\int _{0}^{1}{\dot {x}}{\dot {\epsilon }}dt+O(\epsilon ^{2}),}
其中我们将忽略 ϵ ( t ) {\displaystyle \epsilon (t)} 的二次项,因此我们没有写出来。现在我们需要重写这个积分,使其不包含 ϵ ( t ) {\displaystyle \epsilon (t)} 的导数;因此,我们进行分部积分,得到
δ S [ x ( t ) , ϵ ( t ) ] = ϵ ( t ) x ˙ ( t ) | 0 1 − 2 ∫ 0 1 x ¨ ( t ) ϵ ( t ) d t . {\displaystyle \delta S[x(t),\epsilon (t)]=\left.\epsilon (t){\dot {x}}(t)\right|_{0}^{1}-2\int _{0}^{1}{\ddot {x}}(t)\epsilon (t)dt.}
由于在我们的例子中,值 x ( 0 ) , x ( 1 ) {\displaystyle x(0),x(1)} 是固定的,函数 ϵ ( t ) {\displaystyle \epsilon (t)} 必须满足 ϵ ( 0 ) = ϵ ( 1 ) = 0 {\displaystyle \epsilon (0)=\epsilon (1)=0} ,因此边界项消失。因此,变分导数为
δ S / δ x ( t ) = − 2 x ¨ ( t ) . {\displaystyle \delta S/\delta x(t)=-2{\ddot {x}}(t).}
泛函 S [ x ] {\displaystyle S[x]} 在其在任意变化 ϵ ( t ) {\displaystyle \epsilon (t)} 下的变化为 ϵ ( t ) {\displaystyle \epsilon (t)} 的二阶量时,取得极值。然而,我们在上面已经得到该变化是一个一阶量,关于 ϵ ( t ) {\displaystyle \epsilon (t)} 线性;因此,对于 x ( t ) {\displaystyle x(t)} 而言,该一阶量必须消失,其中泛函具有极值。诸如 ∫ 0 1 A ( t ) ϵ ( t ) {\displaystyle \int _{0}^{1}A(t)\epsilon (t)} 这样的积分只有当函数 A ( t ) {\displaystyle A(t)} 对所有 t {\displaystyle t} 都消失时,才能对任意的 ϵ ( t ) {\displaystyle \epsilon (t)} 为零。在我们的例子中,“函数 A ( t ) {\displaystyle A(t)} ”,即变分导数 δ S / δ x ( t ) {\displaystyle \delta S/\delta x(t)} ,等于 − 2 x ¨ ( t ) {\displaystyle -2{\ddot {x}}(t)} 。因此,泛函 S [ x ] {\displaystyle S[x]} 取得极值的函数 x ( t ) {\displaystyle x(t)} 必须满足 − 2 x ¨ ( t ) = 0 {\displaystyle -2{\ddot {x}}(t)=0} ,或者更简单地说 x ¨ = 0 {\displaystyle {\ddot {x}}=0} 。该微分方程的一般解为 x ( t ) = a + b t {\displaystyle x(t)=a+bt} ,并且在附加限制 x ( 0 ) = 0 , x ( 1 ) = L {\displaystyle x(0)=0,x(1)=L} 的情况下,我们立即得到解 x ( t ) = L t {\displaystyle x(t)=Lt} 。
概括来说:要求泛函 S [ x ( t ) ] {\displaystyle S[x(t)]} 在函数 x ( t ) {\displaystyle x(t)} 处取极值,会导致一个关于未知函数 x ( t ) {\displaystyle x(t)} 的微分方程。这个微分方程可以表示为
δ S [ x ] / δ x ( t ) = 0. {\displaystyle \delta S[x]/\delta x(t)=0.}
这个过程与寻找函数 f ( t ) {\displaystyle f(t)} 的极值非常相似,其中极值点 t {\displaystyle t} 由方程 d f ( t ) / d t = 0 {\displaystyle df(t)/dt=0} 确定。
假设现在要求我们最小化泛函 S [ x ( t ) ] = ∫ 0 1 ( x 2 + x ˙ 2 − x 4 sin t ) d t {\displaystyle S[x(t)]=\int _{0}^{1}(x^{2}+{\dot {x}}^{2}-x^{4}\sin t)dt} ,并且满足约束条件 x ( 0 ) = 0 , x ( 1 ) = 1 {\displaystyle x(0)=0,x(1)=1} ;在力学中,我们通常会处理这种类型的泛函。我们可以尝试像上面一样对函数 x ( t ) {\displaystyle x(t)} 进行离散化,但这很困难。此外,对于不同的泛函 S [ x ] {\displaystyle S[x]} ,一切都必须重新计算。与其一遍遍重复上述过程,不如现在推导出所有此类泛函的泛函导数公式,即
S [ x i ( t ) ] = ∫ a b L ( x i , x ˙ i , t ) d t , {\displaystyle S[x_{i}(t)]=\int _{a}^{b}L(x_{i},{\dot {x}}_{i},t)dt,}
其中 L ( x i , v i , t ) d t {\displaystyle L(x_{i},v_{i},t)dt} 是坐标 x i {\displaystyle x_{i}} 和速度 v i ≡ x ˙ i {\displaystyle v_{i}\equiv {\dot {x}}_{i}} (假设有 n {\displaystyle n} 个坐标,因此 i = 1 , . . . , n {\displaystyle i=1,...,n} )的给定函数。该函数 L ( x i , v i , t ) d t {\displaystyle L(x_{i},v_{i},t)dt} 称为拉格朗日函数 或简称拉格朗日量 。
我们将无穷小变化 ϵ i ( t ) {\displaystyle \epsilon _{i}(t)} 引入函数 x i ( t ) {\displaystyle x_{i}(t)} 中,并首先通过 ϵ i ( t ) {\displaystyle \epsilon _{i}(t)} 和 ϵ ˙ i ( t ) {\displaystyle {\dot {\epsilon }}_{i}(t)} 表示泛函的变化。
δ S [ x i ( t ) , ϵ i ( t ) ] = ∫ a b ∑ i = 1 n [ ∂ L ∂ x i ϵ i ( t ) + ∂ L ∂ v i ϵ ˙ i ( t ) ] d t . {\displaystyle \delta S[x_{i}(t),\epsilon _{i}(t)]=\int _{a}^{b}\sum _{i=1}^{n}\left[{\frac {\partial L}{\partial x_{i}}}\epsilon _{i}(t)+{\frac {\partial L}{\partial v_{i}}}{\dot {\epsilon }}_{i}(t)\right]dt.}
然后我们进行分部积分,舍弃边界项,得到
δ S [ x i ( t ) , ϵ i ( t ) ] = ∫ a b ∑ i = 1 n [ ∂ L ∂ x i − d d t ∂ L ∂ v i ] ϵ i ( t ) d t . {\displaystyle \delta S[x_{i}(t),\epsilon _{i}(t)]=\int _{a}^{b}\sum _{i=1}^{n}\left[{\frac {\partial L}{\partial x_{i}}}-{\frac {d}{dt}}{\frac {\partial L}{\partial v_{i}}}\right]\epsilon _{i}(t)dt.}
因此,变分导数可以写成
δ S [ x ] δ x i ( t ) = ∂ L ∂ x i − d d t ∂ L ∂ v i . {\displaystyle {\frac {\delta S[x]}{\delta x_{i}(t)}}={\frac {\partial L}{\partial x_{i}}}-{\frac {d}{dt}}{\frac {\partial L}{\partial v_{i}}}.}
再次考虑泛函在 x i ( t ) {\displaystyle x_{i}(t)} 处取得极值的条件:一阶变分必须为零。我们已经推导出了上述变分 δ S [ x i , ϵ i ] {\displaystyle \delta S[x_{i},\epsilon _{i}]} 的公式。由于所有 ϵ i ( t ) {\displaystyle \epsilon _{i}(t)} 都是完全任意的(仅受边界条件 ϵ i ( a ) = ϵ i ( b ) = 0 {\displaystyle \epsilon _{i}(a)=\epsilon _{i}(b)=0} 的限制),一阶变分仅当方括号内的函数在所有 t {\displaystyle t} 处都为零时才为零。因此,我们得到**欧拉-拉格朗日方程**
∂ L ∂ x i − d d t ∂ L ∂ v i = 0. {\displaystyle {\frac {\partial L}{\partial x_{i}}}-{\frac {d}{dt}}{\frac {\partial L}{\partial v_{i}}}=0.}
这些是表达以下数学要求的微分方程:泛函 S [ x i ( t ) , x ˙ i ( t ) , t ] {\displaystyle S[x_{i}(t),{\dot {x}}_{i}(t),t]} 在函数集 x i ( t ) {\displaystyle x_{i}(t)} 处取得极值。方程的数量与未知函数 x i ( t ) {\displaystyle x_{i}(t)} 的数量相同,每个 i = 1 , . . . , n {\displaystyle i=1,...,n} 对应一个方程。
注意,欧拉-拉格朗日方程涉及拉格朗日量关于坐标和速度的偏导数。关于速度 v = x ˙ {\displaystyle v={\dot {x}}} 的导数有时写成 ∂ L / ∂ x ˙ {\displaystyle \partial L/\partial {\dot {x}}} ,乍一看可能令人困惑。然而,这种记法的含义只是函数 L ( x , v , t ) {\displaystyle L(x,v,t)} 对其第二个参数的导数。
欧拉-拉格朗日方程还涉及关于时间的导数 d / d t {\displaystyle d/dt} 。这不是 关于 t {\displaystyle t} 的偏导数,而是全导数 。换句话说,要计算 d d t ∂ L ∂ x ˙ i {\displaystyle {\frac {d}{dt}}{\frac {\partial L}{\partial {\dot {x}}_{i}}}} ,我们需要将函数 x i ( t ) {\displaystyle x_{i}(t)} 和 x ˙ i ( t ) {\displaystyle {\dot {x}}_{i}(t)} 代入表达式 ∂ L ∂ x ˙ i {\displaystyle {\frac {\partial L}{\partial {\dot {x}}_{i}}}} ,从而得到一个仅关于时间的函数,然后取该函数关于时间的导数。
注记: 如果拉格朗日量包含高阶导数(例如二阶导数),则欧拉-拉格朗日公式会有所不同。例如,如果拉格朗日量为 L = L ( x , x ˙ , x ¨ ) {\displaystyle L=L(x,{\dot {x}},{\ddot {x}})} ,则欧拉-拉格朗日方程为
∂ L ∂ x − d d t ∂ L ∂ x ˙ + d 2 d t 2 ∂ L ∂ x ¨ = 0. {\displaystyle {\frac {\partial L}{\partial x}}-{\frac {d}{dt}}{\frac {\partial L}{\partial {\dot {x}}}}+{\frac {d^{2}}{dt^{2}}}{\frac {\partial L}{\partial {\ddot {x}}}}=0.}
请注意,该方程的时间导数最高可达四阶!通常,在经典力学的学习中不会遇到这种拉格朗日量,因为普通系统是由仅包含一阶导数的拉格朗日量来描述的。
总结: 在力学中,人们通过编写拉格朗日量并指出其中的未知函数来指定一个系统。由此,人们使用欧拉-拉格朗日公式推导出运动方程。你需要非常了解这个公式,并理解如何应用它。这只有通过实践才能掌握。
基本规则是拉格朗日量等于动能减去势能。(两者都应该在惯性参考系中测量!在非惯性系中,此规则可能会失效。)
可以证明,对于由点质量、弹簧、绳索、无摩擦导轨等组成的任意机械系统,无论如何引入广义坐标,此规则都适用。我们不会研究该陈述的证明,而是直接转向各种系统的拉格朗日量的示例。
沿直线运动的自由质点,其坐标为 x {\displaystyle x} 的拉格朗日量为
L = 1 2 m x ˙ 2 . {\displaystyle L={\frac {1}{2}}m{\dot {x}}^{2}.}
解
∂ L ∂ x − d d t ∂ L ∂ x ˙ = 0 {\displaystyle {\frac {\partial L}{\partial x}}-{\frac {d}{dt}}{\frac {\partial L}{\partial {\dot {x}}}}=0}
∂ ∂ x ( 1 2 m x ˙ 2 ) = 0 {\displaystyle {\frac {\partial }{\partial x}}\left({\frac {1}{2}}m{\dot {x}}^{2}\right)=0}
∂ ∂ x ˙ ( 1 2 m x ˙ 2 ) = m x ˙ {\displaystyle {\frac {\partial }{\partial {\dot {x}}}}\left({\frac {1}{2}}m{\dot {x}}^{2}\right)=m{\dot {x}}}
d d t ∂ ∂ x ˙ ( 1 2 m x ˙ 2 ) = m x ¨ {\displaystyle {\frac {d}{dt}}{\frac {\partial }{\partial {\dot {x}}}}\left({\frac {1}{2}}m{\dot {x}}^{2}\right)=m{\ddot {x}}}
欧拉-拉格朗日方程简化为 0 − m x ¨ = 0 {\displaystyle 0-m{\ddot {x}}=0} 或 x ¨ = 0 {\displaystyle {\ddot {x}}=0} ,这表明一个不受力的粒子将没有加速度。
一个沿直线运动的质点,其坐标为 x {\displaystyle x} ,在一个势能为 V ( x ) {\displaystyle V(x)} 的力场中。
L = 1 2 m x ˙ 2 − V ( x ) . {\displaystyle L={\frac {1}{2}}m{\dot {x}}^{2}-V(x).}
一个在三维空间中运动的质点,其坐标为 x i ≡ ( x , y , z ) {\displaystyle x_{i}\equiv (x,y,z)} ,处于势能为 V ( x , y , z ) {\displaystyle V(x,y,z)} 的力场中。
L = 1 2 ∑ i = 1 3 ( m x ˙ i 2 ) − V ( x , y , z ) = m 2 | x → ˙ | 2 − V ( x → ) . {\displaystyle L={\frac {1}{2}}\sum _{i=1}^{3}\left(m{{\dot {x}}_{i}}^{2}\right)-V(x,y,z)={\frac {m}{2}}|{\dot {\vec {x}}}|^{2}-V({\vec {x}}).}
一个点质量约束在圆上运动,该圆的方程为 x 2 + z 2 = R 2 {\displaystyle x^{2}+z^{2}=R^{2}} ,在地球附近的引力场中( z {\displaystyle z} 轴为竖直方向)。引入角度 θ {\displaystyle \theta } 作为坐标较为方便,其中 z = R cos θ , x = R sin θ {\displaystyle z=R\cos \theta ,x=R\sin \theta } 。则势能为 U = m g z = m g R cos θ {\displaystyle U=mgz=mgR\cos \theta } ,而动能为 K = m v 2 / 2 = m R 2 ω 2 / 2 = m R 2 θ ˙ 2 / 2 {\displaystyle K=mv^{2}/2=mR^{2}\omega ^{2}/2=mR^{2}{\dot {\theta }}^{2}/2} 。因此拉格朗日量为
L = K − U = m 2 R 2 θ ˙ 2 − m g R cos θ . {\displaystyle L=K-U={\frac {m}{2}}R^{2}{\dot {\theta }}^{2}-mgR\cos \theta .}
需要注意的是,我们在不知道维持质量沿圆周运动所需的力的前提下,写出了拉格朗日量(因此我们也可以推导出运动方程)。这展示了拉格朗日方法巨大的概念优势;在传统的牛顿方法中,第一步将是确定这个最初未知的力,这需要通过包含点质量未知加速度的方程组来求解。
两个(相等)的点质量通过长度为 l {\displaystyle l} 的弹簧连接。
L = m 2 ( x ˙ 1 2 + x ˙ 2 2 ) − k 2 ( x 1 − x 2 − l ) 2 . {\displaystyle L={\frac {m}{2}}({\dot {x}}_{1}^{2}+{\dot {x}}_{2}^{2})-{\frac {k}{2}}(x_{1}-x_{2}-l)^{2}.}
一个数学摆 ,即一个无质量的刚性杆,长度为 l {\displaystyle l} ,其末端连接一个点质量,该摆只能在地球附近的引力场中(竖直 z {\displaystyle z} 轴)的 x − z {\displaystyle x-z} 平面上运动。我们选择杆与 z {\displaystyle z} 轴之间的角度 θ {\displaystyle \theta } 作为坐标。拉格朗日量为
L = m 2 l 2 θ ˙ 2 + m g l cos θ . {\displaystyle L={\frac {m}{2}}l^{2}{\dot {\theta }}^{2}+mgl\cos \theta .}
一个质量为 m {\displaystyle m} 的质点,在没有摩擦力的斜面上滑动,斜面与水平面成 α {\displaystyle \alpha } 角,处于地球的引力场中。我们选择 x , y {\displaystyle x,y} 作为坐标,其中 y {\displaystyle y} 平行于斜面。那么高度 z {\displaystyle z} 为 z = x tan α {\displaystyle z=x\tan \alpha } ,因此势能为 U = m g z = m g x tan α {\displaystyle U=mgz=mgx\tan \alpha } 。动能计算如下:
K = m 2 ( x ˙ 2 + y ˙ 2 + z ˙ 2 ) = m 2 ( x ˙ 2 / cos 2 α + y ˙ 2 ) . {\displaystyle K={\frac {m}{2}}({\dot {x}}^{2}+{\dot {y}}^{2}+{\dot {z}}^{2})={\frac {m}{2}}({\dot {x}}^{2}/\cos ^{2}\alpha +{\dot {y}}^{2}).}
因此,拉格朗日量为:
L = K − U = m 2 ( x ˙ 2 / cos 2 α + y ˙ 2 ) − m g x tan α . {\displaystyle L=K-U={\frac {m}{2}}({\dot {x}}^{2}/\cos ^{2}\alpha +{\dot {y}}^{2})-mgx\tan \alpha .}
练习: 你现在应该确定从上述每个拉格朗日量推导出的欧拉-拉格朗日方程,并验证这些方程是否与从中学水平的牛顿力学考虑中获得的相应物理系统的方程相同。这最多应该占用你一两个小时的时间。只有这样,你才能开始理解拉格朗日方法的强大之处。
这里有一些关于拉格朗日的更多练习。
有关为机械系统建立拉格朗日量和推导欧拉-拉格朗日方程的更多示例,请咨询你的物理老师或查阅任何理论力学问题书籍。很多时候,某个复杂系统的欧拉-拉格朗日方程(例如,连接到另一个摆的端点上的摆)将难以求解,但关键是要获得推导它们的经验。在使用力的旧牛顿方法中,它们的推导将不那么直接。
有关微分方程的简要入门知识,请参见此处。
如果你第一次接触拉格朗日量,你可能仍然会问自己:为什么可以通过说某个积分具有最小值来描述系统的运动?这仅仅是一个纯粹的形式数学技巧吗?如果不是,如何才能获得更直观的理解?部分答案在这里 。