利用计算多体动力学对一个机械系统进行分析,其实质是建立其系统的多体动力学方程并对其进行求解。对于多刚体系统笛卡儿方法产生的形如式(1-2)所示的动力学数学模型,也就是著名的微分—代数方程组(DAEs),多体动力学数值仿真核心问题的实质是对DAE方程初值问题的处理,以及方程的求解计算方法,这也是计算多体系统动力学领域的热点问题。
对于复杂的多体动力学计算问题,现在通用的方法是借助于通用的多体动力学计算商业软件完成的。往往包括几何模型的建立,约束的添加,运动条件的控制、运算,后处理等几个过程。从初始的几何模型,到动力学模型的建立,经过对模型的数值求解,最后得到分析结果,其流程如图 1-3 所示。
图 1-3 计算多体系统动力学建模与求解一般过程
计算多体系统动力学分析的整个流程,主要包括建模和求解两个阶段。建模分为物理建模和数学建模,物理建模是指由几何模型建立物理模型,数学建模是指从物理模型生成数学模型。几何模型可以由动力学分析系统几何造型模块所建造,或者通用几何造型软件导入。对几何模型施加运动学约束、驱动约束、力元、外力或外力矩等物理模型要素,形成表达系统力学特性的物理模型。物理建模过程中,有时候需要根据运动学约束和初始位置条件对几何模型进行装配。由物理模型,采用笛卡儿坐标或拉格朗日坐标建模方法,应用自动建模技术,组装系统运动方程中的各系数矩阵,得到系统数学模型。对系统数学模型,根据情况应用求解器中的运动学、动力学、静平衡或逆向动力学分析算法,迭代求解,得到所需的分析结果。联系设计目标,对求解结果再进行分析,从而反馈到物理建模过程,或者几何模型的选择,如此反复,直到得到最优的设计结果。
在建模和求解过程中,涉及几种类型的运算和求解。首先是物理建模过程中的几何模型装配,在图 1-3 中,称为“初始条件计算”,这是根据运动学约束和初始位置条件进行的,是非线性方程的求解问题;其次就是数学建模,是系统运动方程中的各系数矩阵自动组装过程,涉及大型矩阵的填充和组装问题;最后是数值求解,包括多种类型的分析计算,如运动学分析、动力学分析、静平衡分析、逆向动力学分析等。运动学分析是非线性的位置方程和线性的速度、加速度方程的求解,动力学分析是二阶微分方程或二阶微分方程和代数方程混合问题的求解;静平衡分析从理论上讲是一个线性方程组的求解问题,但实际上往往采用能量方法,逆向动力学分析是一个线性代数方程组求解问题,这里面,最复杂的是动力学微分代数方程的求解问题,它是多体系统动力学的核心问题。
在多体系统动力学建模与求解过程中,还有一个问题——初值相容性问题是值得注意的,这是在任何正式求解之前必须解决的问题,直接影响到问题的可解性。初值相容性是要求系统中所有的位置、速度初始条件必须与系统运动学约束方程相容。对于简单问题,初值相容性是易于保证的,但对于大型复杂系统,必须有专门的初值相容性处理算法以判断系统的相容性或由一部分初值计算相容的其他初值。
在多体系统建模与求解过程中,求解器是核心,这其中涉及的所有运算和求解,如初始条件计算、方程自动组装、各种类型的数值求解等都由求解器所支持,它提供了所需的全部算法。
实际上,结果分析是需要有专门的数值后处理器来支持的,以提供曲线、动画显示,以及其他各种辅助分析手段。但相比于多体系统建模与求解,数值后处理器相对简单,不存在理论上的重要问题。
在多柔性体系统的求解过程中,由于系统的慢变大幅变量与快变微幅变量的耦合导致方程严重的病态,引起了大量学者对此的关注,并进行了深入研究。Gear方法是当前公认的求解刚性微分方程的有效方法,但是对多柔性系统动力学的求解存在着困难,这是因为Gear方法需要计算方程右侧的Jacobian矩阵,这对于柔性多体动力学方程是极其困难的。