摘要

本文将以单步法中的广义α族积分器和多步法中的BDF族积分器为主要讨论对象,详细介绍大型多体系统动力学软件中常见类型的积分器的算法细节.每族积分器都给出了不止一套计算公式,而且其对应求解微分代数方程组(DAE)的index可以为1、2或者3.除此以外,本文还着重介绍了微分代数方程组的误差估计、变阶变步长策略等关键技术;并讨论了大型DAE问题求解过程中的初始条件分析、Jacobian矩阵复用等重要环节的算法实现;对于BDF积分器族,文中还详细描述了高阶格式的非绝对稳定性、速度变量的误差估计等瓶颈问题的解决方案.全文以多体系统动力学软件的积分器程序实现为目标,强调在满足给定精度的条件下,如何提高计算效率和保证仿真运行的鲁棒性.另外,本文也简要介绍了在某些应用场合中有很大潜力的显式积分器族.通过分析和比较,文中还将指出各种算法的优缺点以及可能的改进方向,希望能够为研究人员和程序开发者提供一定的参考.由于篇幅限制,本文只列出了几个标准的算例比较,作为文中内容的补充;并给出了几种积分器性能比较的一般性结论 .文中几乎所有方法都经由作者程序实现、测试和比较,并且相关算法的实现细节也都已尽量列出,可以很容易地编程实现并应用到实际问题的求解中去.