Featured image of post 拉格朗日运动方程简述

拉格朗日运动方程简述

动力学建模的重要方法

文章封面引用自这篇论文

本文的参考教材:系统分析与建模[西安交通大学出版社 连峰、兰剑等编著]


前言

  在学习系统建模与动力学分析这门课程的机械系统部分时,涉及到大量的运动学知识,奈何笔者的物理水平称不上优秀,在学习大学物理刚体与运动学部分时又划了很多水,在这一部分学起来有些吃力。于是笔者痛定思痛,决定从头好好梳理一遍机械系统的内容。本文将跳过一些运动学基础知识,依次梳理动力学建模的三种方法:达朗贝尔原理、虚位移原理、拉格朗日原理,最终推导出拉格朗日运动方程。


达朗贝尔原理

  我们在学习过高中物理和大学物理之后,对于动力学问题,常使用动力学方法来解决,比如牛顿三定律、动量矩定理等等,而对于一些复杂系统,用动力学方法来建模太过繁琐,且需要大量的分析过程,因此我们需要更方便直观的方法。达朗贝尔原理用静力学方法来求解动力学问题,给出了物体系统惯性力与作用于物体系统的作用力系之间的平衡关系。

  首先,让我们从最基础的牛顿第二定律出发:

$$ \mathbf{F} = m\mathbf{a} \tag 1 $$

牛顿第二定律描述了合外力与加速度的关系,更进一步说,力是引起物体运动的原因。我们想要使用静力学方法,必须在物体处于平衡状态时,因此我们必须将运动中的物体转换为平衡状态,也即合外力为$0$ 的状态。那么,我们可以假想出一惯性力,将某个质点上的所有外力之和抵消,即:

$$ \mathbf{F} - m\mathbf{a} = \mathbf{0} \tag 2 $$

显然,这一假想力为$-m\mathbf{a}$ ,此时可以将这一质点看做是平衡状态,使用静力学方法求解。以上便称为达朗贝尔原理。应用达朗贝尔原理而导出的方程是一个包括假想的惯性力在内的所有力总和的方程,结果等于零。可以看到达朗贝尔原理从数学形式上看只是牛顿第二定律的移项,但本质上是通过加惯性力的办法将动力学问题转化为静力学问题,其实与我们在物理中使用的坐标系变换有相似之处。

  下面给出达朗贝尔原理的标准定义:

设非自由质点$M$ 的质量为$m$,其在主动力$\mathbf{F}$和约束力$\mathbf{F} _ N$ 的作用下做曲线运动,某瞬时其加速度为$a$ ,该质点的动力学基本方程为

$\mathbf{F} + \mathbf{F}_N = m\mathbf{a}\quad或\quad \mathbf{F} + \mathbf{F}_N + -(m\mathbf{a}) = \mathbf{0}$

引入质点的惯性力$\mathbf{F}^*=-m\mathbf{a}$ 这一概念,方程可以改写为

$\mathbf{F} + \mathbf{F}_N + \mathbf{F} ^ * = \mathbf{0}$

该式描述了质点的达朗贝尔原理,表示作用于质点上的主动力、约束力和惯性力构成一假想的平衡力系。

上述质点的达朗贝尔原理可以直接推广到质点系,将达朗贝尔原理应用于每个质点,得到$n$个矢量平衡方程:

$$ \mathbf{F}_i + \mathbf{F}_{Ni} + \mathbf{F}_ i ^ * = \mathbf{0}, \quad i = 1,2,\dots, n \tag 3 $$

该式表明在质点系运动的任一瞬间,作用于每一质点上的主动力、约束力和该质点的惯性力在形式上构成一平衡力系。

  对于所讨论的质点系,有$n$个形式如上式的平衡方程,即有$n$个形式上的平衡力系,这些平衡力系合在一起仍为平衡力系,那么根据空间中任意力系的平衡条件1 ,有

$$ \begin{cases} \sum \mathbf{F}_i + \sum \mathbf{F}_{Ni} + \sum \mathbf{F}_i^* = \mathbf{0}\\\\ \sum \mathbf{M}_O(\mathbf{F}_i) + \mathbf{M}_O(\mathbf{F}_{Ni}) + \mathbf{M}_O(\mathbf{F}_i^*) = \mathbf{0} \end{cases} \tag 4 $$

式(4)表明:在任意瞬间,作用于质点系的主动力、约束力和该点的惯性力所构成力系的主矢量等于零,该力系对任一点$Q$的主矩也等于零。

总结:达朗贝尔原理提供了按静力学平衡方程的形式给出质点系动力学方程的方法,这种方法称为动静法,这些方程也称为动态平衡方程。


虚位移原理

背景

  虚位移原理以分析力学为基础建立系统平衡的充要条件,所谓分析力学,是一种与牛顿力学思维方式不同的研究力学问题的方法论,更加侧重系统的整体性质,它的基本思想是:系统的演化路径是使作用量最小的路径。
  设想一下,你正在开车从A地出发,前往B地,那么有两种方式来描述旅程:对于牛顿力学,需要一路记录油门和刹车,关注每一秒的速度变化,也就是说,你在关心每个瞬间的动力情况,比较“颗粒化”;而对于分析力学,它在意的是整体路线是不是最省油,是否有一条路径,从起点到终点刚好让“能量的利用最合适”,它的思维方式是:“从所有可能的路线中,系统自己会选择一个最‘省事’的路线。”
  虚位移原理则是理解分析力学的一个关键概念,尤其对于拉格朗日方程的导出有重要意义,它能帮助我们理解受约束系统的运动规律。下面先来介绍一下约束的概念。

约束和约束方程

  通俗地来讲,约束就是限制系统中物体可以怎么动的"规则"或“条件”。“怎么动”既包括物体位置的变化,又包括物体速度的变化,将这些约束用数学方程来表示,就称为约束方程

由$n$个质点组成的质点系,可能有$s(s \leq 3n)$个约束条件。每个约束对质点系的限制都可能是位置、速度和时间的显函数,因此,约束方程以直角坐标表示的一般形式为

$f_r(x_1,y_1,z_1,\dots,x_n,y_n,z_n,\dot{x}_1,\dot{y}_1,\dot{z}_1,\dots,\dot{x}_n,\dot{y}_n,\dot{z}_n,t) \leq 0, \quad r = 1,\dots,s$

当方程中不显含速度,即约束只对质点系几何位置起限制作用时,称为几何约束,当约束对质点系几何位置与速度都起限制作用时,称为运动约束。
在某些情况下,可以通过积分或微分将运动约束方程与几何约束方程互相变换,这种约束称为完整约束。在约束方程中,若不显含时间$t$,称为定常约束,若显含时间$t$,则称为非定常约束。

广义坐标和自由度

  自由度就是一个系统在不违反约束的情况下,可以 “独立运动的方向数”,它告诉你需要几个参数描述整个系统,而广义坐标就是所选择的这几个参数本身。
  具体来说,广义坐标是专门用来 描述系统当前状态的最小变量组,不限于传统的$x,y,z$,可以是:

  • 角度
  • 弧长
  • 电压
  • 任意自定义变量

一般地,由$n$个质点组成的质点系,受到$s$个定常约束,具有$k=3n-s$个自由度2。若选$k$个广义坐标$q_1,q_2,\dots,q_k$,那么,各质点的坐标可以写成广义坐标的函数形式,即

$\left\{ \begin{array}{l} x_i = x_i(q_1,q_2,\dots,q_k)\\ y_i = y_i(q_1,q_2,\dots,q_k)\\ z_i = z_i(q_1,q_2,\dots,q_k) \end{array} \right.\quad i = 1,2,\dots,n$

各质点的位置矢径可表示为:

$ \mathbf{r}_i = \mathbf{r}_i (q_1,q_2,\dots,q_k),\quad i = 1,2,\dots,n $

约束的分类

常见的约束可以分为以下几类:

  • 几何约束:只限制质点的几何位置的约束;
  • 运动约束:约束方程包含质点坐标(对时间)的导数;
  • 定常约束:约束条件与时间无关,即约束方程中不显含时间$t$;
  • 非定常约束:约束条件与时间有关,即约束方程中显含时间$t$;
  • 完整约束:包括几何约束和可化成几何约束的运动约束;
  • 非完整约束:不可化成几何约束的运动约束;
  • 理想约束:约束力做功恒等于零的约束。

虚位移

什么是虚位移

  上面提到,虚位移原理能帮助我们理解受约束系统的运动规律,让我们假设一个小球,被一根细杆固定住,只能在杆上滑动,已达到平衡状态。

  • 它不能乱动,因为有杆的约束,只能沿着杆动
  • 所以,我们不能随便说它向上、向下、向右动一小点,因为它已在约束条件下达到平衡状态
现在,我们做一个“思想实验”:

如果这个小球能在不违反约束的前提下,动一点点,这“一点点”的位置变化我们就叫虚位移(virtual displacement)

因此,虚位移不是实际发生的运动,只是你想象它如果可以动,会怎么动。

  质点(或质点系)在给定瞬时,产生约束所容许的任何微小的位移,称为质点(或质点系)的虚位移或可能位移。虚位移通常记作$\delta \mathbf{r}$,$\delta$为变分符号,它表示变量与时间历程无关的微小变更,以区别实际位移${\rm d}\mathbf{r}$。

  虚位移实际上是在实位移概念的基础上,不考虑主动力的作用(产生位移的动力)和初始条件,仅仅满足约束条件的位移。

  虚位移与时间无关,对应$k$个自由度的质点系统,质点位置矢径为

$\mathbf{r}_i = \mathbf{r}_i(q_1,q_2,\dots,q_k),\quad i=1,2,\dots,n$

则它的虚位移表示如下:

$ \delta\mathbf{r}_i = \sum_{j=1}^k \frac{\partial \mathbf{r}_i}{\partial q_j} \delta q_j, \quad i = 1,2,\dots,n $

  如前所述,具有$k$个自由度的,由$n$个质点组成的质点系统,质点间的位置关系不是完全独立的,因此,每一个质点的虚位移并不完全独立。在分析过程中,一般要建立非独立的质点虚位移之间的关系,方法如下:

  • 虚速度法:等同于建立“平面运动刚体上两点间的速度关系”。把点的虚位移视为点的速度,运用运动学和几何学的方法,确定两点间的虚位移关系。
  • 解析法:在固定参考系中,将确定点的位置的直角坐标表示为选定的独立广义坐标的函数,对其求变分。

理想约束

  理想约束是从实际约束中抽象出来的理想模型,代表了相当多的实际约束的力学性质,虚位移原理本质上是由理想约束条件推导得到的。

  如果约束力在质点系的任何虚位移中所做的元功之和为零,则这种约束成为理想约束。以$\mathbf{F}_{Ni}$表示第$i$个质点受到的约束力合力,$\delta \mathbf{r}_i$表示该质点的虚位移,则质点系的理想约束条件为

$ \sum_{i=1}^{n} \mathbf{F}_{Ni} \bullet \delta\mathbf{r}_i = 0 $

能满足式

$$ \sum_{i=1}^{n} \mathbf{F}_{Ni} \bullet \delta\mathbf{r}_i = 0 \tag 5 $$

的理想约束有下列$4$种类型:

  • $\delta \mathbf{r}_i = 0$ ,即约束处无虚位移,如固定端约束,铰支座等;
  • $\mathbf{F}_{Ni} \perp \delta r$,即约束力与虚位移相垂直,如光滑接触面约束等;
  • $\mathbf{F}_{Ni} = 0$,即约束点上约束力的合力为零,如铰链连接的销钉上受到的是一对大小相等、方向相反的约束力,故其所受约束力的合力为零。
  • $\sum_{i = 1}^{n} \mathbf{F}_{Ni} \bullet \delta \mathbf{r}_i = 0$,即一个约束在一处约束力的虚功不为零,但若干处的虚功之和为零。

虚位移原理(虚功原理)

直角坐标表示的虚位移原理

  作用于质点或质点系上的力在给定虚位移上所做的功称为虚功,记为$\delta W = F \cdot \delta r$
  我们假想一个处于平衡状态的质点系,则其中各质点均应平衡,则作用于第$i$个质点的主动力合力 $\mathbf{F}_i$ 和约束力合力 $\mathbf{F}_{Ni}$

$$ \mathbf{F}_i + \mathbf{F}_{Ni} = \mathbf{0}, \quad i = 1,2,\dots,n $$

设此质点具有任意虚位移$\delta \mathbf{r}_i$ ,则$\mathbf{F}_i$ 与 $\mathbf{F}_{Ni}$ 在虚位移上元功之和必等于$0$,即

$$ (\mathbf{F}_i + \mathbf{F}_{Ni}) \bullet \delta \mathbf{r}_i = 0 \quad i = 1,2,\dots,n $$

将$n$个等式相加,得

$$ \sum_{i=1}^{n} (\mathbf{F}_i + \mathbf{F}_{Ni})\bullet \delta \mathbf{r}_i = \sum_{i=1}^{n}\mathbf{F}_{i} \bullet \delta\mathbf{r}_i + \sum_{i=1}^{n}\mathbf{F}_{Ni} \bullet \delta\mathbf{r}_i = \mathbf{0} $$

根据$(5)$式可得

$$ \sum_{i=1}^{n} \mathbf{F}_{i} \bullet \delta\mathbf{r}_i = 0 \quad 即 \quad \delta W = 0 \tag 6 $$

  这样,我们得到了质点系保持平衡状态时的一个性质,那么反过来,由该性质能否得到质点系处于平衡状态呢?
  我们不妨假设$(6)$式成立,而质点系不平衡,则质点系中至少有一个质点离开平衡位置而从静止开始加速运动。这时该质点必有实位移${\rm d}\mathbf{r}_i$ ,所以合外力$\mathbf{F}_{Ri} = \mathbf{F}_i + \mathbf{F}_{Ni}$ 将做正功,而在定常约束的情况下,实位移必为虚位移之一。于是,有 $\mathbf{F}_{Ri}\delta \mathbf{r} = (\mathbf{F}_i + \mathbf{F}_{Ni})\bullet \delta\mathbf{r}_i > 0$
  将所有质点的表达式相加,有

$$ \sum_{i=1}^{n} (\mathbf{F}_i + \mathbf{F}_{Ni})\bullet \delta \mathbf{r}_i = \sum_{i=1}^{n}\mathbf{F}_{i} \bullet \delta\mathbf{r}_i + \sum_{i=1}^{n}\mathbf{F}_{Ni} \bullet \delta\mathbf{r}_i > \mathbf{0} $$

根据$(5)$式,有

$$ \sum_{i=1}^{n}\mathbf{F}_{i} \bullet \delta\mathbf{r}_i > 0 $$

与我们假设的条件矛盾,因此质点系必定处于平衡状态。

   根据上述探讨,我们得到了质点系处于平衡状态的充要条件,至此,可以给出虚位移原理的相关表述:

  虚位移原理又称为静力学普遍方程,其内容为:

​ 对于具有理想约束的质点系,在给定位置上保持平衡的充要条件是:所有主动力在质点系的任何虚位移中的元功之和等于零。其矢量表达式和解析表达式分别为

$$ \delta W = \sum_{i=1}^{n}\mathbf{F}_{i}\bullet \delta\mathbf{r}_i = 0, \\ \delta W = \sum_{i=1}^{n} (\mathbf{F}_{xi}\cdot \delta\mathbf{x}_i + \mathbf{F}_{yi}\cdot \delta\mathbf{y}_i + \mathbf{F}_{zi}\cdot \delta\mathbf{z}_i) = 0 $$

广义力表示的虚位移原理

  设由 $n$ 个质点组成的质点系,其受到 $s$ 个理想约束,并具有 $k$ 个自由度。以 $k$ 个广义坐标 $q_1, q_2, \cdots, q_k$ 来确定质点系的位置。当质点系发生虚位移时,各广义坐标分别有微小的变更 $\delta q_1, \delta q_2, \cdots, \delta q_k$(称为广义虚位移)。任一质点的虚位移 $\delta \mathbf{r}_i$ 可表示为 $k$ 个独立变量 $\delta q_1, \delta q_2, \cdots, \delta q_k$ 的函数。即对式$\mathbf{r}_i = \mathbf{r}_i(q_1,q_2,\dots,q_k)$ 用类似求微分的方法得到其变分(虚位移)为:

$$ \delta\mathbf{r}_i = \sum_{j=1}^k \frac{\partial \mathbf{r}_i}{\partial q_j} \delta q_j, \quad i = 1,2,\dots,n \tag 7 $$

  以$\mathbf{F}_1,\mathbf{F}_2,\dots,\mathbf{F}_n$ 分别表示作用于质点系内各质点的主动力,则质点系主动力的虚功可表示为

$$ \delta W=\sum_{i=1}^{n}\mathbf{F}_{i} \bullet \delta\mathbf{r}_i = \sum_{j=1}^k \left(\sum_{i=1}^{n} \mathbf{F}_{i} \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}\right)\delta q_j \tag 8 $$

$$ Q_j =\sum_{i=1}^{n} \mathbf{F}_{i} \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}, \quad i = 1,2,\dots, n \tag 9 $$

则可得

$$ \delta W = \sum_{j=1}^k \left(\sum_{i=1}^{n} \mathbf{F}_{i} \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}\right)\delta q_j = \sum_{j=1}^k Q_j \delta q_j \tag {10} $$

  这就是广义坐标系下表示的虚位移原理,其中$Q_j$ 为对应广义虚位移$\delta q_j$ 的力,称为广义力。可以看到从直角坐标系中的主动力到广义力,实际上我们是通过一系列线性变换完成的,从直角坐标系到广义坐标系,其实质是一种基变换
  由于$Q_j \delta q_j$ 具有功的量纲,因此广义力$Q_j$ 的量纲取决于广义坐标$q_j$ 的量纲。
  广义力的解析表达式为

$$ Q_j = \sum_{i=1}^n (F_{ix} \cdot \frac{\partial x_i}{\partial q_j} + F_{iy} \cdot \frac{\partial y_i}{\partial q_j} + F_{iz} \cdot \frac{\partial z_i}{\partial q_j}), \quad j = 1,2,\dots,n \tag {11} $$

  而对于保守系统3 ,作用于质点系的主动力都是有势力,质点系在任意位置的势能$V$用广义坐标可表示为$V(q_1,q_2,\dots,q_n)$。质点$i$的主动力在直角坐标的分量$F_{ix}, F_{iy}, F_{iz}$ 可用势能$V$表示为

$$ F_{ix} = - \frac{\partial V}{\partial x_i}, \quad F_{iy} = - \frac{\partial V}{\partial y_i}, \quad F_{iz} = - \frac{\partial V}{\partial z_i}, \quad i = 1,2,\dots,n $$

代入前述广义力的解析表达式,有

$$ Q_j = - \sum_{i=1}^n \left(\frac{\partial V}{\partial x_i} \cdot \frac{\partial x_i}{\partial q_j} + \frac{\partial V}{\partial y_i} \cdot \frac{\partial y_i}{\partial q_j} + \frac{\partial V}{\partial z_i} \cdot \frac{\partial z_i}{\partial q_j} \right) $$

最终可得

$$ Q_j = -\frac{\partial V}{\partial q_j} \tag {12} $$

上式表明:在保守系统中,广义力等于质点系的势能函数对相应广义坐标的偏导数再加上负号,该式对拉格朗日方程的导出也有重要作用。可以看到,广义力与直角坐标下的主动力的表示格式是相似的,区别在于广义力不用考虑不同质点的情况,把整个质点系纳入到了框架中,这也是基变换的结果。

  将直角坐标系下的结论引申过来,可以得到广义力表示的虚位移原理:

  当质点系处于平衡时,有

$$ \delta W = \sum_{j=1}^k Q_j \delta q_j = 0 $$

由于各广义虚位移是彼此独立的,所以上式要成立,必有

$ Q_j = 0, \quad j = 1,2,\dots,n$

这就是以广义力表示的质点系平衡条件,也即广义力表示的虚位移原理。


拉格朗日运动方程

背景

  在上文中,我们推导出了虚位移原理,得到了静力学普遍方程:

$$ \sum_{i=1}^{n}\mathbf{F}_{i}\bullet \delta\mathbf{r}_i = 0 $$

显然,这只适用于静止或平衡状态下的系统,对于运动中的或非平衡状态下的系统,我们可以结合之前所述的达朗贝尔原理,引入惯性力,得到动力学普遍方程:

$$ \sum_{i=1}^{n} (\mathbf{F}_{i} + \mathbf{F}_i^*)\bullet \delta\mathbf{r}_i = 0 \tag {13} $$

应用动力学普遍方程求解较复杂的非自由质点系的动力学问题不是很方便,因为各质点间的虚位移可能不全是独立的,解题时需要寻找虚位移之间的关系。
  但是,我们可以发现最终导出的广义力下的虚位移原理不需要寻找虚位移之间的关系,所以我们改用广义坐标来描述系统的运动,将动力学普遍方程改写为广义坐标的形式,就可以更方便地解决问题,这就是拉格朗日运动方程。

推导过程

  首先,我们定义一个由$n$个质点组成的质点系,受到$s$个理想的、完整的约束,则该系统具有$k = 3n-s$个自由度,可用$k$个广义坐标$q_1,q_2,\dots,n$来确定该系统的位形。在非定常约束下,系统中任意质点的矢径可表示成广义坐标和时间的函数,即

$$ \mathbf{r}_i = \mathbf{r}_i(q_1,q_2,\dots,q_k,t) \quad i = 1,2,\dots,n \tag {14} $$

根据虚位移的定义,我们有

$$ \delta \mathbf{r}_i = \sum_{j=1}^k \frac{\partial \mathbf{r}_i}{\partial q_j} \delta q_j \tag {15} $$

将$(14$)式代入动力学普遍方程$(13)$,得到

$$ \begin{aligned} &\sum_{i=1}^{n} [(\mathbf{F}_{i} + \mathbf{F}_i^*)\bullet \sum_{j=1}^k \frac{\partial \mathbf{r}_i}{\partial q_j} \delta q_j] \\ = &\sum_{j=1}^k [\sum_{i=1}^n (\mathbf{F}_i \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}) + \sum_{i=1}^n (\mathbf{F}_i^* \bullet \frac{\partial \mathbf{r}_i}{\partial q_j})] \delta q_j = 0 \end{aligned}\tag {16} $$

式中,记

$$ Q_j = \sum_{i=1}^n (\mathbf{F}_i \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}), \quad Q_j^* = \sum_{i=1}^n (\mathbf{F}_i^* \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}) $$

分别表示广义力和广义惯性力。

  这样,动力学普遍方程可写为

$$ \sum_{j=1}^k[Q_j + Q_j^*] \delta q_j = 0 \tag {17} $$

当然,仅仅是这样并不能减少求解问题的难度,我们依然要想办法表示广义力和广义惯性力,下面,先给出两个拉格朗日变换式。

拉格朗日第一变换式

  对于$(14)$式,对时间$t$求导,可以得到质点的速度为

$$ \mathbf{v}_i = \frac{{\rm d}\mathbf{r}_i}{{\rm d}t} = \sum_{j=1}^k \frac{\partial \mathbf{r}_i}{\partial q_j} \dot{q_j} + \frac{\partial \mathbf{r}_i}{\partial t} \tag{18} $$

式中,$\dot{q_j}$称为广义速度,注意$\frac{\partial \mathbf{r}_i}{\partial q_j}$ 和$\frac{\partial \mathbf{r}_i}{\partial t}$仍然是广义坐标和时间的函数,与$\dot{q_j}$无关。
对$(18)$式两端对广义速度$\dot{q_j}$求偏导,可以得到拉格朗日第一变换式:

$$ \frac{\partial \mathbf{v}_i}{\partial \dot{q_j}} = \frac{\partial \mathbf{r}_i}{\partial q_j} \tag {18} $$

拉格朗日第二变换式

  对于(18)式,对任一广义坐标$q_h$求偏导,有

$$ \frac{\partial \mathbf{v}_i}{\partial q_h} = \sum_{j=1}^k \frac{{\partial}^2 \mathbf{r}_i}{\partial q_h \partial q_j}\dot{q_j} + \frac{{\partial}^2 \mathbf{r}_i}{\partial q_h \partial t} \tag {19} $$

  将矢径$(14)$对任一$q_h$求偏导,得到$\frac{\partial \mathbf{r}_i}{\partial q_h}$,再对时间$t$求导,得

$$ \begin{aligned} \frac{{\rm d}}{{\rm d}t}(\frac{\partial \mathbf{r}_i}{\partial q_h}) &= \sum_{j=1}^k \frac{\partial}{\partial q_j} (\frac{\partial \mathbf{r}_i}{\partial q_h})\dot{q_j} + \frac{{\partial}^2 \mathbf{r}_i}{\partial q_h \partial t} \\ &= \sum_{j=1}^k \frac{{\partial}^2 \mathbf{r}_i}{\partial q_j \partial q_h} + \frac{{\partial}^2 \mathbf{r}_i}{\partial q_h \partial t} \end{aligned} \tag {20} $$

  对比$(19)$和$(20)$右边两项,可以得到拉格朗日第二变换式:

$$ \frac{\partial \mathbf{v}_i}{\partial q_j} = \frac{{\rm d}}{{\rm d}t}(\frac{\partial \mathbf{r}_i}{\partial q_j}) \tag{21} $$

一般完整系统的拉格朗日方程

  $(17)$式中,广义惯性力 $Q_i^*$ 又可写为:

$$ \begin{aligned} Q_i^* &= \sum_{i=1}^n \left( \mathbf{F}_i^* \bullet \frac{\partial \mathbf{r}_i}{\partial q_j} \right) = \sum_{i=1}^n \left[ (-m_i \mathbf{a}_i) \bullet \frac{\partial \mathbf{r}_i}{\partial q_j} \right] \\ &= -\sum_{i=1}^n \left[ \left( m_i \frac{{\rm d}\mathbf{v}_i}{{\rm d}t} \right) \bullet \frac{\partial \mathbf{r}_i}{\partial q_j} \right] \end{aligned}\tag{22} $$

因为

$$ \frac{{\rm d}}{{\rm d}t}(m_i \mathbf{v}_i) \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}= (m_i \frac{{\rm d}\mathbf{v}_i}{{\rm d}t}) \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}+ m_i \mathbf{v}_i \bullet \frac{{\rm d}}{{\rm d}t} \left( \frac{\partial \mathbf{r}_i}{\partial q_j} \right) \tag {23} $$

所以

$$ (m_i \frac{{\rm d}\mathbf{v}_i}{{\rm d}t}) \bullet \frac{\partial \mathbf{r}_i}{\partial q_j}= \frac{{\rm d}}{{\rm d}t} \left( m_i \mathbf{v}_i \bullet \frac{\partial \mathbf{r}_i}{\partial q_j} \right)- m_i \mathbf{v}_i \bullet \frac{{\rm d}}{{\rm d}t} \left(\frac{\partial \mathbf{r}_i}{\partial q_j} \right) \tag{24} $$

  将式$(24)$代入式$(22)$中,得到

$$ Q_i^* = -\sum_{i=1}^n \left[\frac{{\rm d}}{{\rm d}t} \left( m_i \mathbf{v}_i \bullet \frac{\partial \mathbf{r}_i}{\partial q_j} \right)- m_i \mathbf{v}_i \\bullet \frac{{\rm d}}{{\rm d}t} \left( \frac{\partial \mathbf{r}_i}{\partial q_j} \right)\right] \tag {25} $$

拉格朗日第一变换式拉格朗日第二变换式代入可得

$$ \begin{aligned} Q_i^* &= -\sum_{i=1}^n \left[\frac{{\rm d}}{{\rm d}t} \left( m_i \mathbf{v}_i \bullet \frac{\partial \mathbf{v}_i}{\partial \dot{q}_j} \right)- m_i \mathbf{v}_i \bullet \left( \frac{\partial \mathbf{v}_i}{\partial q_j} \right)\right] \\ &= -\frac{{\rm d}}{{\rm d}t} \left[\sum_{i=1}^n \left( m_i \mathbf{v}_i \bullet \frac{\partial \mathbf{v}_i}{\partial \dot{q}_j} \right)\right]+ \sum_{i=1}^n \left[ m_i \mathbf{v}_i \bullet \frac{\partial \mathbf{v}_i}{\partial q_j} \right] \\&= -\frac{{\rm d}}{{\rm d}t} \left[\frac{\partial}{\partial \dot{q}_j}\sum_{i=1}^n \left( \frac{1}{2} m_i \mathbf{v}_i \bullet \mathbf{v}_i \right)\right]+ \frac{\partial}{\partial q_j} \left[\sum_{i=1}^n \left( \frac{1}{2} m_i \mathbf{v}_i \bullet \mathbf{v}_i \right)\right] \end{aligned} \tag{26} $$

其中$\sum_{i=1}^n ( \frac{1}{2} m_i \mathbf{v}_i \bullet \mathbf{v}_i )$ 表示系统的动能$T$,故广义惯性力的最后变形形式为

$$ Q_i^* = -\frac{{\rm d}}{{\rm d}t} \left( \frac{\partial T}{\partial \dot{q}_j} \right)+ \frac{\partial T}{\partial q_j} \quad (j = 1, 2, \cdots, k) \tag {27} $$

将上式代入$(17)$式,有

$$ \sum_{j=1}^k \left[ Q_i + Q_i^* \right] \delta q_j= \sum_{j=1}^k \left[Q_i - \frac{{\rm d}}{{\rm d}t} \left( \frac{\partial T}{\partial \dot{q}_j} \right)+ \frac{\partial T}{\partial q_j}\right] \delta q_j = 0 \tag{28} $$

由虚位移的独立性和任意性可知,上式要成立,必有

$$ \frac{{\rm d}}{{\rm d}t} \left( \frac{\partial T}{\partial \dot{q}_j} \right) - \frac{\partial T}{\partial q_j} = Q_j, \quad j = 1,2,\dots,k \tag{29} $$

该式即为一般完整系统的拉格朗日方程。

保守系统的拉格朗日方程

  若系统为保守系统,则系统上的主动力均为有势力,由式$(12)$得,此时广义力可写为

$$ Q_j = -\frac{\partial U}{\partial q_j}, \quad j=1,2,\dots,k $$

将其代入一般完整系统的拉格朗日方程$(29)$,又注意到势能函数$U$与广义速度$\dot{q}_j$无关,即$\frac{\partial U}{\partial \dot{q_j}} = 0$,则有

$$ \frac{{\rm d}}{{\rm d}t} [\frac{\partial (T - U)}{\partial \dot{q_j}}] - \frac{\partial (T-U)}{\partial q_j} = 0 \tag {30} $$

取$L = T-U$称为拉格朗日函数,$T$为系统的动能,故保守系统的拉格朗日方程(又称欧拉-拉格朗日方程)为

$$ \frac{{\rm d}}{{\rm d}t} (\frac{\partial L}{\partial \dot{q_j}}) - \frac{\partial L}{\partial q_j} = 0, \quad j=1,2,\dots,k \tag{31} $$

结语

  到此为止,本文依次梳理和推导了达朗贝尔原理、虚位移原理以及拉格朗日运动方程,对于求解机械系统的动力学建模问题,这些方法在理想情况下已足够完善。通过引入广义坐标、虚位移与广义力的概念,我们将动力学问题从繁杂的直角坐标空间转换到更加灵活的广义空间中,从而构建出统一且具有高度抽象性的运动描述框架。

  在拉格朗日方法中,系统的动态行为被自然地包含在拉格朗日函数 $L = T - U$ 中,能量视角的引入让我们可以摆脱对力的显式表达依赖,这对于复杂系统的建模具有重要意义。当然,文中所有推导都是建立在理想、完整约束系统的前提下,若考虑非完整约束、非保守力系统或非线性复杂耦合问题,还需要进一步拓展分析力学的理论体系。

  希望本文能为和我一样在学习过程中心存疑问的同学提供一个清晰的脉络,也为深入分析复杂系统奠定一些初步的理解基础。


  1. 任意力系平衡的充要条件为:力系的主矢$F$和对于任意点简化的主矩$M$均等于$0$矢量 ↩︎

  2. 定常约束不随时间变化,是固定不变的结构性限制,只需要考虑各质点所有可能得运动方向,即:一个质点可以在$x,y,z$三个方向自由移动$\rightarrow$ $3$个自由度;$n$个质点$\rightarrow$共$3n$个自由度。而每一条约束都会排除一个方向的自由运动,所以真正能自由运动的方向数,就是$k=3n-s$ ↩︎

  3. 保守系统就是能量守恒、力源于势能、路径无关的理想系统。 ↩︎

Powered by Hugo with Stack
使用 Hugo 构建
主题 StackJimmy 设计, 由 秦时月 修改