贡献者: addis
本文使用牛顿第二定律证明拉格朗日方程,其中会使用到一个关于约束的定理叫做达朗贝尔原理(D'Alembert's principle)。另一种推导方法见 “最小作用量、哈密顿原理”。
1. 由牛顿第二定律证明拉格朗日方程
下面来证明包含额外广义力的拉格朗日方程(式 3 )
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial L}{\partial \dot q_i} = \frac{\partial L}{\partial q_i} + Q_i^{(e)}~.
\end{equation}
注意以下所有对 $q_i, \dot q_i$ 或 $t$ 的
偏导都是把 $q, \dot q, t$ 作为变量($q, \dot q$ 分别是 $q_1, q_2\dots q_N$ 和 $\dot q_1, \dot q_2\dots \dot q_N$ 的简写),即对其中一个变量求导数而把其他变量看做常数。另外我们假设势能 $V$ 和位矢 $ \boldsymbol{\mathbf{r}} _j$ 都不显含 $\dot q$,即对任何 $\dot q_i$ 的偏导为零。所以该证明不适用于 $V$ 为广义势能(例如 “
拉格朗日电磁势”)的情况。
把系统看成质点组,每个质点质量为 $m_j$,位置矢量是广义坐标的函数 $ \boldsymbol{\mathbf{r}} _j(q_1,\dots,q_N,t)$,那么系统动能为
\begin{equation}
T = \frac12 \sum_j m_j \boldsymbol{\mathbf{v}} _j^2 = \frac12 \sum_j m_j \dot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \dot{ \boldsymbol{\mathbf{r}} }_j~.
\end{equation}
由
矢量内积的求导法则得($i=1,\dots,N$,下同)
\begin{equation}
\frac{\partial T}{\partial \dot q_i} = \sum_j m_j \dot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \frac{\partial \dot{ \boldsymbol{\mathbf{r}} }_j}{\partial \dot q_i} ~,
\end{equation}
其中质点 $j$ 的速度可以用
全导数 公式
\begin{equation}
\dot{ \boldsymbol{\mathbf{r}} }_j = \sum_k \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_k} \dot q_k + \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial t} ~.
\end{equation}
对 $\dot q_i$ 求偏导,注意位矢与 $\dot q_i$ 无关,所以求偏导时 $ \partial r_j/\partial q_k $ 与 $ \partial r_j/\partial t $ 可看做常数。
\begin{equation}
\frac{\partial \dot{ \boldsymbol{\mathbf{r}} }_j}{\partial \dot q_i} = \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} ~.
\end{equation}
代入
式 3 并对时间求导得到拉格朗日方程的左边(注意我们假设 $ \partial V/\partial \dot q_i = 0$)
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial L}{\partial \dot q_i} = \frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial T}{\partial \dot q_i} = \sum_j m_j \ddot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} + \sum_j m_j \dot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} ~.
\end{equation}
拉格朗日方程(
式 3 )的右边为
\begin{equation}
\frac{\partial L}{\partial q_i} = \frac{\partial T}{\partial q_i} - \frac{\partial V}{\partial q_i} + Q_i^{(e)}~.
\end{equation}
其中右边第一项为
\begin{equation}
\frac{\partial T}{\partial q_i} = \sum_j m_j \dot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \frac{\partial \dot{ \boldsymbol{\mathbf{r}} }_j}{\partial q_i} = \sum_j m_j \dot{ \boldsymbol{\mathbf{r}} }_j \boldsymbol\cdot \frac{\partial}{\partial{q_i}} \frac{\mathrm{d}{ \boldsymbol{\mathbf{r}} _j}}{\mathrm{d}{t}} ~,
\end{equation}
第二项是包含在势能中的广义力(
式 2 )
\begin{equation}
Q_i^{(V)} = - \frac{\partial V}{\partial q_i} = \sum_j \left(- \frac{\partial V}{\partial x_j} \frac{\partial x_j}{\partial q_i} - \frac{\partial V}{\partial y_j} \frac{\partial y_j}{\partial q_i} - \frac{\partial V}{\partial z_j} \frac{\partial z_j}{\partial q_i} \right) = \sum_j \boldsymbol{\mathbf{F}} _j^{(V)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} ~.
\end{equation}
其中
\begin{equation}
\boldsymbol{\mathbf{F}} _j^{(V)} = - \boldsymbol\nabla _j V = - \frac{\partial V}{\partial x_j} \hat{\boldsymbol{\mathbf{x}}} - \frac{\partial V}{\partial y_j} \hat{\boldsymbol{\mathbf{y}}} - \frac{\partial V}{\partial z_j} \hat{\boldsymbol{\mathbf{z}}} ~,
\end{equation}
注意这属于非约束力。不包含于势能中的额外广义力的定义为(上标 $e$ 表示 extra)
\begin{equation}
Q_i^{(e)}(q, \dot q, t) = \sum_j \boldsymbol{\mathbf{F}} _j^{(e)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} ~,
\end{equation}
也是非约束力。我们把非约束力称为
主动力。每个质点的总主动力可以分为由势能产生的部分和其他
\begin{equation}
\boldsymbol{\mathbf{F}} _j^{(a)} = \boldsymbol{\mathbf{F}} _j^{(V)} + \boldsymbol{\mathbf{F}} _j^{(e)}~,
\end{equation}
那么总广义力为
\begin{equation}
Q_i = Q_i^{(V)} + Q_i^{(e)} = \sum_j \boldsymbol{\mathbf{F}} _j^{(a)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} ~.
\end{equation}
所以要证明拉格朗日方程,即证明
式 6 等于
式 8 加
式 13 ,首先需要证明
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = \frac{\partial}{\partial{q_i}} \frac{\mathrm{d}{ \boldsymbol{\mathbf{r}} _j}}{\mathrm{d}{t}} ~,
\end{equation}
也就是证明全导数和偏导数运算可对易。使用
全导数 的定义,以及
混合偏导 的性质,有
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = \sum_k \frac{\partial}{\partial{q_k}} \frac{\partial \boldsymbol{\mathbf{r}} _i}{\partial q_i} \dot q_k + \frac{\partial}{\partial{t}} \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = \sum_k \frac{\partial}{\partial{q_i}} \frac{\partial \boldsymbol{\mathbf{r}} _i}{\partial q_k} \dot q_k + \frac{\partial}{\partial{q_i}} \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial t} = \frac{\partial}{\partial{q_i}} \frac{\mathrm{d}{ \boldsymbol{\mathbf{r}} _j}}{\mathrm{d}{t}} ~,
\end{equation}
然后我们需要证明
\begin{equation}
\sum_j \left( \boldsymbol{\mathbf{F}} _j^{(a)} - m\ddot{ \boldsymbol{\mathbf{r}} }_j \right) \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = 0~.
\end{equation}
即可证明拉格朗日方程。该式被称为
达朗贝尔原理。注意由于这里的 $ \boldsymbol{\mathbf{F}} _j^{(a)}$ 为质点 $j$ 所受的非约束力而不是合力,所以求和项的小括号一般不为 0。
2. 达朗贝尔原理
令第 $j$ 个质点所受合力等于主动力(非约束力)加约束力 $ \boldsymbol{\mathbf{F}} _j = \boldsymbol{\mathbf{F}} _j^{(a)} + \boldsymbol{\mathbf{F}} _j^{(c)}$。由牛顿第二定律 $ \boldsymbol{\mathbf{F}} _j - m\ddot{ \boldsymbol{\mathbf{r}} }_j = 0$,所以
\begin{equation}
\sum_j \left( \boldsymbol{\mathbf{F}} _j^{(a)}+ \boldsymbol{\mathbf{F}} _j^{(c)} - m\ddot{ \boldsymbol{\mathbf{r}} }_j \right) \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = 0~.
\end{equation}
现在我们只需要求
\begin{equation}
Q_i^{(c)} = \sum_j \boldsymbol{\mathbf{F}} _j^{(c)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial q_i} = 0~,
\end{equation}
即可得到
式 16 。也就是
所有约束力产生的广义力都为零。由
式 10 ,达朗贝尔原理也可以表述为:
在约束允许的范围内进行任意虚位移,所有约束力的虚功之和为零。
事实上达朗贝尔原理并不对所有约束都适用,甚至不对所有稳定约束适用。所以当列出拉格朗日方程时,我们就必须要保证系统中所有的约束都符合达朗贝尔原理,否则就需要用额外的广义力去修正(例 2 )才能使拉格朗日方程仍然成立。常见的约束都满足达朗贝尔原理,这可以结合 “欧拉—拉格朗日方程” 中的例题思考,找出例题中的约束力,并验证他们的确不做虚功。这里再给出一个双摆的例子:
例 1 双摆的约束力
在双摆模型中,若连接两质点的是轻杆,那么第一个质点 $m_1$ 受到延两条杆方向的力,分别记为 $ \boldsymbol{\mathbf{F}} _1, \boldsymbol{\mathbf{F}} _2$。第二个质点 $m_2$ 受到延第二条杆的力 $ \boldsymbol{\mathbf{F}} _3$。首先由于 $m_1$ 的摆动方向始终垂直于 $ \boldsymbol{\mathbf{F}} _1$,$ \boldsymbol{\mathbf{F}} _1$ 从不做功。其次由于杆都是轻杆,有 $ \boldsymbol{\mathbf{F}} _2 = - \boldsymbol{\mathbf{F}} _3$,且无论双摆怎么运动,$ \boldsymbol{\mathbf{F}} _2, \boldsymbol{\mathbf{F}} _3$ 做功之和都为零(否则第二条杆就会具有大于零的动能,以无穷大的速度运动)。可见单个约束力的虚功未必为零,而是求和后为零。
在符合达朗贝尔原理的稳定约束中,约束力无论是虚功还是实功都为零。但在符合达朗贝尔原理的不稳定约束中,约束力的实功可能不为零(思考例 5 )。证明:所有约束力的真实功率为(式 10 )
\begin{equation}
P^{(c)} = \sum_i Q_i^{(c)} \dot q_i + \sum_j \boldsymbol{\mathbf{F}} _j^{(c)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial t} = \sum_j \boldsymbol{\mathbf{F}} _j^{(c)} \boldsymbol\cdot \frac{\partial \boldsymbol{\mathbf{r}} _j}{\partial t} ~.
\end{equation}
稳定约束中,即约束方程中不出现时间,即 $ \boldsymbol{\mathbf{r}} _j$ 不显含时间,即 $ \partial \boldsymbol{\mathbf{r}} _j/\partial t = \boldsymbol{\mathbf{0}} $,所以约束力实功功率为零。
对于非达朗贝尔约束,式 18 不为零,这时只需要把它加到拉格朗日右边进行修正即可:
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial L}{\partial \dot q_i} - \frac{\partial L}{\partial q_i} = Q_i^{(e)} + Q_i^{(c)}~,
\end{equation}
$Q_i^{(e)}$ 是不包含于势能中的非束缚广义力。证明留作习题。
例 2 非达朗贝尔约束
令水平轨道有两个滑块质量为 $m_1,m_2$,坐标为 $x_1< x_2$。第二个滑块与第一个滑块间有一个智能电动伸缩杆。伸缩杆会进行测量并主动伸缩使两个滑块的坐标始终满足
\begin{equation}
x_2 = 2x_1~,
\end{equation}
且伸缩杆的质量可以忽略不计,所以杆对两滑块的作用力始终等大反向。这是一个稳定约束,但做功却不为零。设两滑块受非约束力分别为 $F_1,F_2$,那么杆的力为
\begin{equation}
F_c = \frac{2m_2F_1 - m_1F_2}{m_1+2m_2}~.
\end{equation}
该系统只有一个自由度,姑且用 $x_1$ 作为广义坐标,那么 $F_1,F_2$ 产生的广义力为
\begin{equation}
Q^{(e)} = F_1 + 2F_2~,
\end{equation}
而约束力产生的广义力为
\begin{equation}
Q^{(c)} = -F_c + 2F_c = F_c~,
\end{equation}
所以广义力可能对系统做功。拉格朗日方程为
\begin{equation}
\frac{\mathrm{d}}{\mathrm{d}{t}} \frac{\partial T}{\partial \dot x_1} - \frac{\partial T}{\partial x_1} = Q^{(e)} + Q^{(c)}~,
\end{equation}
其中动能为
\begin{equation}
T = \frac{1}{2}m_1\dot x_1^2 + \frac{1}{2}m_2 \dot x_2^2 = \frac{1}{2}(m_1 + 4m_2)\dot x_1^2~.
\end{equation}
另一个反例是,若把摩擦力看作约束力,则达朗贝尔原理同样不适用,因为摩擦力总是做负功。