达朗贝尔原理

本条目中，向量与标量分别用粗体与斜体显示。例如，位置向量通常用 $\mathbf{r}\,\!$ 表示；而其大小则用 $r\,\!$ 来表示。

<image>

达朗贝尔原理（d'Alembert principle）是因其发现者法国物理学家与数学家让·达朗贝尔而命名。达朗贝尔原理阐明，对于任意物理系统，所有惯性力或施加的外力，经过符合约束条件的虚位移，所作的虚功的总和等于零：

$\sum_{i}\ (\mathbf{F}_{i}+\mathbf{I}_i)\cdot \delta \mathbf{r}_i = 0\,\!$。

其中，$\mathbf{I}_i= - m_i\mathbf{a}_i\,\!$是粒子$P_i\,\!$感受到的惯性力，$m_i\,\!$和$\mathbf{a}_i\,\!$分别是粒子$P_i\,\!$的质量和加速度，$\mathbf{F}_i\,\!$是施加于粒子$P_i\,\!$的外力（不包括约束力）、$\delta \mathbf{r}_i\,\!$是符合系统约束的虚位移。

静力学的虚功原理在动力学的版本是达朗贝尔原理。假若一个物理系统的每一个约束条件都只约束位置或时间，而不约束速度，则称此物理系统为完整系统。达朗贝尔原理比哈密顿原理的适用范围更广阔，可以用于不仅是完整系统。

因为达朗贝尔原理，在一个动力系统里，约束力所作的虚功自动抵消，也就是说，不需要顾虑约束力所作的虚功。

## 导论

思考由一群粒子构成的一个物理系统。按照牛顿运动定律。

$\mathbf{F}_{i}^{(T)} = m_i \mathbf{a}_i\,\!$。

其中，$\mathbf{F}_{i}^{(T)}\,\!$是所有施加于粒子$P_i\,\!$的作用力的合力（包括约束力）。

将方程式右边的加速度项目移至左边。

$\mathbf{F}_{i}^{(T)} - m_i \mathbf{a}_i = \mathbf 0\,\!$。

达朗贝尔建议将这加速度项目视为一种因为粒子的运动而产生的作用力，称为惯性力：

$\mathbf{I}_i= - m_i \mathbf{a}_i\,\!$。

这样，施加于每一个粒子的作用力（包括惯性力）的向量和皆等于零：

$\mathbf{F}_{i}^{(T)}+\mathbf{I}_i= \mathbf 0\,\!$。

采用达朗贝尔这绝顶聪明的建议，这系统内所有的作用力的向量和变为零，也就是说，这系统达到平衡状态。假若动力系统的动态平衡可以视为静力系统的静态平衡，则所有静力系统内有关于平衡状态的理论都可以适用于动力系统，而这动力系统的运动问题的一大部分也可以当作静力系统的平衡问题来解析。因此，当然也可以将静力学的虚功原理搬迁至动力学里。

对于每一个粒子，经过虚位移$\delta \mathbf{r}_i\,\!$，其向量和所作的虚功等于零：

$\delta W_i =(\mathbf{F}_{i}^{(T)}+\mathbf{I}_i)\cdot \delta \mathbf{r}_i= 0\,\!$。

作用于每一个粒子的虚功的总和$\delta W\,\!$等于零：

$\delta W= \sum_{i} \delta W_i= \sum_{i}(\mathbf {F}_{i}^{(T)}+\mathbf{I}_i )\cdot \delta \mathbf r_i=0\,\!$。

将作用于每一个粒子上的合力$\mathbf{F}_{i}^{(T)}\,\!$，细分为外力$\mathbf{F}_i\,\!$与约束力$\mathbf{C}_i$：

$\delta W = \sum_{i}\ \mathbf{F}_{i} \cdot \delta \mathbf{r}_i + \sum_{i}\ \mathbf{C}_{i} \cdot \delta \mathbf{r}_i +\sum_{i}\mathbf{I}_i\cdot \delta \mathbf{r}_i = 0\,\!$。

假设，每一个约束力，因为虚位移，所做的虚功的总和是零。则约束力的项目可以从方程式内移去，达朗贝尔原理成立：

$\delta W = \sum_{i}( \mathbf {F}_{i}+\mathbf{I}_i )\cdot \delta \mathbf r_i = 0\,\!$。（1）

现在，总和内的每一个单独$\mathbf {F}_{i} - m_i \mathbf{a}_i\,\!$很可能不等于零。

定义有效力$\mathbf{F}_i^{eff}\,\!$为外力加惯性力：

$\mathbf{F}_i^{eff}=\mathbf {F}_{i}+\mathbf{I}_i\,\!$。

达朗贝尔原理又可表达为：对于任意物理系统，所有有效力，经过符合约束条件的虚位移，所作的虚功的总合等于零。

$\delta W = \sum_{i}\mathbf{F}_i^{eff}\cdot \delta \mathbf r_i = 0\,\!$。

注意到这推论里的约束力假设。在这里，约束力就是牛顿第三定律的反作用力。因此，可以称此假设为反作用力的虚功假设：所有反作用力所做的符合约束条件的虚功，其总合是零。这是分析力学额外设立的假设，无法从牛顿运动定律推导出来。

### 适用案例

在此特别列出几个案例，展示出约束力所做的符合约束条件的虚功的总合是零：

- 刚体的约束条件是一种完整约束，以方程式表达，$(\mathbf{r}_i-\mathbf{r}_j)^2=L_{ij}^2$；其中，刚体内部的粒子$P_i$、$P_j$的位置分别为$\mathbf{r}_i$、$\mathbf{r}_j$，它们之间的距离$L_{ij}$是个常数。所以，两个粒子的虚位移$\delta\mathbf{r}_i$、$\delta\mathbf{r}_j$之间的关系为

$\delta(\mathbf{r}_i-\mathbf{r}_j)^2=2(\mathbf{r}_i - \mathbf{r}_j)(\delta\mathbf{r}_i - \delta\mathbf{r}_j)=0$。

在这里，有两种可能的状况：

1、$\delta\mathbf{r}_i=\delta\mathbf{r}_j$：

对于这状况，由于$\mathbf{C}_{ji}= - \mathbf{C}_{ij}$，两个作用力所做的虚功相互抵消，也就是说。

$\mathbf{C}_{ij}\cdot\delta\mathbf{r}_i+\mathbf{C}_{ji}\cdot\delta\mathbf{r}_j=0$。

所以，约束力所做的虚功的总合是零。

2、$(\mathbf{r}_i - \mathbf{r}_j)\perp(\delta\mathbf{r}_i - \delta\mathbf{r}_j)$：

由于$\mathbf{C}_{ij}\ \|\ \mathbf{C}_{ji}\ \|\ (\mathbf{r}_i-\mathbf{r}_j)$。

$\mathbf{C}_{ij}\cdot\delta\mathbf{r}_i+\mathbf{C}_{ji}\cdot\delta\mathbf{r}_j=\mathbf{C}_{ij}\cdot\delta\mathbf{r}_i - \mathbf{C}_{ij}\cdot\delta\mathbf{r}_j=\mathbf{C}_{ij}\cdot(\delta\mathbf{r}_i - \delta\mathbf{r}_j)=0$。

所以，约束力所做的虚功的总合是零。

所以，在刚体内，粒子与粒子之间的约束力所作的虚功的总合是零。

- 思考木块移动于平滑地面上。因为木块的重量，而产生的反作用力，是地面施加于木块的一种约束力。注意到对于这案例，符合约束条件的虚位移必须与地面平行，所以，地面施加的约束力垂直于虚位移，它所作的虚功等于零。可是，假若木块移动的地面是粗糙的，则会有摩擦力产生。由于虚位移平行于摩擦力，虚功不等于零。所以，达朗贝尔原理不适用于这状况。但是，假设是一只轮子纯滚动于地面上，因为轮子与地面的瞬时接触点是不动的，符合约束条件的虚位移等于零，所以虚功等于零，达朗贝尔原理又适用了。

## 拉格朗日方程式的导引

主项目：拉格朗日方程式

拉格朗日力学是对经典力学的一种不同的表述。拉格朗日方程式是拉格朗日力学的基要方程式，可以用来描述物体的运动，特别适用于理论物理的研究。拉格朗日方程式的功能等价于牛顿力学中的牛顿第二定律。

从达朗贝尔原理，可以推导出拉格朗日方程式。设定粒子$P_i\,\!$的位置$\mathbf{r}_i\,\!$为广义坐标$q_1,q_2,\cdots ,q_n\,\!$与时间$t\,\!$的函数：

$\mathbf{r}_i=\mathbf{r}_i(q_1,q_2,\cdots ,q_n,\ t)\,\!$。

转换为广义坐标的主要的目的，是要除去物体内粒子位置与粒子位置之间的相依性。这问题在后面会有更详细的说明。

虚位移可以表示为

$\delta\mathbf{r}_i=\sum_j\ \frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j\,\!$。（2）

粒子的速度$\mathbf{v}_i=\mathbf{v}_i(q_1,q_2,\cdots ,q_n,\dot{q}_1,\dot{q}_2,\cdots ,\dot{q}_n,\ t)\,\!$是

$\mathbf{v}_i=\frac{d\mathbf{r}_i}{dt}=\frac{\partial\mathbf{r}_i}{\partial t}+ \sum_j \frac{\partial\mathbf{r}_i}{\partial q_j}\dot{q}_j \,\!$。

取速度对于广义速度的偏微分：

$\frac{\partial\mathbf{v}_i}{\partial \dot{q}_j}= \frac{\partial\mathbf{r}_i}{\partial q_j}\,\!$。（3）

思考方程式（1）的加速度项目，将方程式（2）代入。

$\sum_i\ m_i \mathbf{a}_i \cdot \delta \mathbf{r}_i=\sum_{i,j}\ m_i\mathbf{a}_i\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j\,\!$。

应用乘积法则。

$\sum_{i,j}\ m_i\mathbf{a}_i\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j = \sum_{i,j}\left( \frac{d}{dt}\left( m_i\mathbf{v}_i\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\right) - m_i\mathbf{v}_i \cdot \frac{d}{dt}\left(\frac{\partial\mathbf{r}_i}{\partial q_j}\right)\right) \delta q_j\,\!$。

注意到$\frac{\partial\mathbf{r}_i}{\partial q_j}\,\!$的参数为$q_1,q_2,\cdots ,q_n,\ t\,\!$，而速度$\mathbf{v}_i\,\!$的参数为$q_1,q_2,\cdots ,q_n,\dot{q}_1,\dot{q}_2,\cdots ,\dot{q}_n,\ t\,\!$，所以。

$\frac{d}{dt}\left(\frac{\partial\mathbf{r}_i}{\partial q_j}\right) =\left(\frac{\partial}{\partial t}+\sum_k \dot{q}_k\frac{\partial}{\partial q_k}\right)\left(\frac{\partial\mathbf{r}_i}{\partial q_j}\right) =\frac{\partial^2\mathbf{r}_i}{\partial q_j\partial t}+\sum_k \frac{\partial^2\mathbf{r}_i}{\partial q_j\partial q_k}\dot{q}_k\,\!$。

$\frac{\partial\mathbf{v}_i}{\partial q_j}=\frac{\partial}{\partial q_j}\left(\frac{\partial\mathbf{r}_i}{\partial t}+ \sum_k \frac{\partial\mathbf{r}_i}{\partial q_k}\dot{q}_k\right) =\frac{\partial^2\mathbf{r}_i}{\partial q_j\partial t}+\sum_k \frac{\partial^2\mathbf{r}_i}{\partial q_j\partial q_k}\dot{q}_k\,\!$。

因此，以下关系式成立：

$\frac{d}{dt}\left( \frac{\partial\mathbf{r}_i}{\partial q_j}\right)=\frac{\partial\mathbf{v}_i}{\partial q_j}\,\!$。（4）

将方程式（3）与（4）代入，加速度项目成为

$\sum_{i,j}\ m_i \mathbf{a}_i\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j=\sum_{i,j}\left(\frac{d}{dt}\left( m_i\mathbf{v}_i\cdot \frac{\partial\mathbf{v}_i}{\partial \dot{q}_j}\right) - m_i \mathbf{v}_i\cdot\frac{\partial\mathbf{v}_i}{\partial q_j}\right)\delta q_j \,\!$。

思考这个系统的动能$T\,\!$。

$T=\sum_i\ \frac{1}{2}m_i\mathbf{v}_i\cdot\mathbf{v}_i\,\!$。

加速度项目与动能的关系为

$\sum_{i,j}\ m_i\mathbf{a}_i\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j=\sum_{j}\ \left(\frac{d}{dt}\left( \frac{\partial T}{\partial \dot{q}_j}\right) - \frac{\partial T}{\partial q_j}\right)\delta q_j \,\!$。（5）

思考方程式（1）的外力项目，将方程式（2）代入。

$\sum_{i}\ \mathbf{F}_{i}\cdot\delta\mathbf{r}_i=\sum_{i,j}\ \mathbf{F}_{i}\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\delta q_j=\sum_{j}\ \mathcal{F}_{j}\delta q_j\,\!$；（6）

这里，$\boldsymbol{\mathcal{F}}\,\!$是广义力：

$\mathcal{F}_{j}=\sum_i\ \mathbf{F}_{i}\cdot\frac{\partial\mathbf{r}_i}{\partial q_j}\,\!$。

将方程式（5）与（6）代入方程式（1），会得到

$\sum_{j}\ \left(\frac{d}{dt}\left( \frac{\partial T}{\partial \dot{q}_j}\right) - \frac{\partial T}{\partial q_j} - \mathcal{F}_{j}\right)\delta q_j=0\,\!$。（7）

假设所有的广义坐标都相互独立，则所有的广义坐标的虚位移也都相互独立。由于这些虚位移都是任意设定的，只有满足下述方程式，才能使方程式方程式（7）成立：

$\frac{d}{dt}\left( \frac{\partial T}{\partial \dot{q}_j}\right) - \frac{\partial T}{\partial q_j} - \mathcal{F}_{j}=0\,\!$。（8）

假设这系统是单演系统，也就是说，这系统的广义力与广义位势$V\,\!$之间的关系式为

$\mathcal{F}_j=\frac{d}{dt}\left( \frac{\partial V}{\partial \dot{q}_j}\right) - \frac{\partial V}{\partial q_j}\,\!$。

那么。

$\frac{d}{dt}\left( \frac{\partial (T - V)}{\partial \dot{q}_j}\right) - \frac{\partial (T - V)}{\partial q_j}=0\,\!$。

广义位势也是系统的势能。注意到拉格朗日量$L\,\!$定义为系统的动能减去势能：

$L\ \stackrel{def}{=}\ T - V\,\!$。

则可得到拉格朗日方程式：

$\frac{d}{dt}\left( \frac{\partial L}{\partial \dot{q}_j}\right) - \frac{\partial L}{\partial q_j}=0\,\!$。

假设这系统是保守系统，也就是说，这系统的广义力与位势$V\,\!$之间的关系式为

$\mathcal{F}_j= - \frac{\partial V}{\partial q_j}\,\!$。

则拉格朗日方程式也成立。

## 达朗贝尔惯性力原理

根据对于刚体的牛顿第二定律，一个运动中的刚体，其运动方程式为

$\sum_i \ \mathbf{F}_i=m \mathbf{a}\,\!$。

$\sum_i\ \mathbf{M}_i= \boldsymbol{\mathcal{I}}\boldsymbol{\alpha}\,\!$。

其中，$\mathbf{F}_i\,\!$是施加于刚体的外力，$m\,\!$是刚体的质量，$\mathbf{a}\,\!$是刚体质心的加速度，$\mathbf{M}_i\,\!$是每一个外力$\mathbf{F}_i\,\!$对于刚体质心的力矩、$\boldsymbol{\mathcal{I}}\,\!$是对于刚体质心的惯性张量，$\boldsymbol{\alpha}\,\!$是刚体的角加速度。

达朗贝尔建议将加速度项目$- m \mathbf{a}\,\!$视为一种因为刚体的运动而产生的作用力，称为惯性力$\mathbf{I}\,\!$，又将角加速度项目$- \mathcal{I}\boldsymbol{\alpha}\,\!$视为一种因为刚体的运动而产生的力矩，称为惯性力矩$\mathbf{M}\,\!$：

$\mathbf{I}= - m \mathbf{a}\,\!$。

$\mathbf{M}= - \boldsymbol{\mathcal{I}}\boldsymbol{\alpha}\,\!$。

那么，运动方程式变为

$\mathbf{I}+\sum_i \ \mathbf {F}_i = \mathbf{0}\,\!$。

$\mathbf{M}+\sum_i\ \mathbf{M}_i= \mathbf{0}\,\!$。

在工程力学里，达朗贝尔惯性力原理阐明：刚体的惯性力与所有作用于刚体的外力的合力等于零，刚体的惯性力矩与所有作用于刚体的力矩的合力矩等于零。这原理可以帮助分析正在运动中的某连杆所感受到的作用力。

请注意，惯性力必须作用于质心；而惯性力矩是力偶矩，可以作用于物体的任何一位置。靠着达朗贝尔惯性力原理，动力系统可以变为像静力系统一样的解析。这方法的优点是，在等价的静力系统里，可以选择任何一点（不只是质心）来计算力矩。这时常会导至较简易的运算。因为，如果选择出正确的力矩作用点，在计算力矩时，可以忽略许多作用力（这些作用力与选择点同直线）。

### 刚体二维平面运动实例

假设施加作用力或力矩于一个平面刚体，则此刚体会在xy-平面上呈平移运动或旋转运动，其惯性力$\mathbf{I}\,\!$与惯性力矩$\mathbf{M}\,\!$的方程式分别为

$\mathbf{I}= - m \mathbf{a}\,\!$。

$\mathbf{M}= - \boldsymbol{\mathcal{I}}\alpha\,\!$。

假设，除了作用于刚体的外力以外，将惯性力视为作用力，将惯性力矩视为力矩，这系统就等价于静力系统。因此，静力平衡方程式成立：

$\sum_i F_{xi} = 0\,\!$。

$\sum_i F_{yi} = 0\,\!$。

$\sum_i M_i = 0\,\!$。

这方法的优点是，$\sum_i M_i\,\!$乃是对于任意点的力矩的总合；而直接应用牛顿运动定律的方法有一个额外的要求：旋转运动方程式只能选择在质心计算。