拉格朗日方程的证明、达朗贝尔原理

                     

贡献者: addis

预备知识 1 广义力

   本文使用牛顿第二定律证明拉格朗日方程,其中会使用到一个关于约束的定理叫做达朗贝尔原理(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. 达朗贝尔原理

预备知识 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}

   另一个反例是,若把摩擦力看作约束力,则达朗贝尔原理同样不适用,因为摩擦力总是做负功。

                     

© 小时科技 保留一切权利