论文部分内容阅读
本文研究了用于求解四种多体系统动力学微分-代数方程组的状态空间法。基于LU分解构造了新型的状态空间法以对仅含完整约束的问题、仅含线性非完整约束的问题、含有完整-线性非完整混合约束的问题以及含有完整-非线性非完整混合约束的问题这四种含有不同类型约束的问题的多体系统动力学微分-代数方程组进行数值求解。对于仅含完整约束的多体系统动力学微分-代数方程组,研究了利用隐式积分方法进行积分时状态空间法中的双循环结构,提出了一种以速度及位置为基本未知量的双循环隐式状态空间法。提出了隐式龙格-库塔法的固定点迭代格式,并将隐式龙格-库塔法引入状态空间法中作为积分方法。对非线性位置约束方程的迭代求解过程及对线性速度约束方程的求解过程被嵌入至对隐式积分方法的迭代过程中,构成了双循环结构。这种双循环结构使得非独立坐标可以在隐式积分方法的迭代过程中随着独立坐标不断地更新,解决了利用隐式积分方法进行积分时对非独立变量进行赋值的问题。这种双循环隐式状态空间法提高了状态空间法的精度及稳定性,能够保证计算结果严格满足约束方程。在这种双循环结构中还可以利用向后差分法作为积分方法以构造双循环算法。经典形式的状态空间法无法用于求解含有非完整约束的多体系统动力学微分-代数方程组。针对这一问题,本文对状态空间法进行了深入的研究,提出了新的状态空间法以求解含有非完整约束的多体系统动力学微分-代数方程组。在本文提出的用于求解含非完整约束问题的状态空间法中,利用由指标-1形式的微分-代数方程组得到的常微分方程代替状态空间下基于最简坐标的常微分方程进行积分,利用LU分解对速度约束方程及位置约束方程分别进行坐标分离以识别非完整系统的独立速度与独立位置。针对仅含非完整约束、含完整-线性非完整混合约束、含完整-非线性非完整混合约束的微分-代数方程组这三种典型的含非完整约束的多体系统动力学微分-代数方程组,构造了三种状态空间法。这三种状态空间法可以在统一的框架下构造变步长算法,分别基于显式龙格-库塔法及隐式龙格-库塔法构造了变步长算法。在算法的积分模块中对所有坐标进行积分,之后求解位置约束方程以消除位置违约,求解速度约束方程以消除速度违约。源自轮式机器人及控制系统的数值算例的计算结果显示,本文提出的新型的状态空间法可以对含非完整约束的问题进行有效的求解。可以利用Taylor展开分析各层次约束方程之间的关系,从而证明多体系统动力学微分-代数方程组中的位置约束方程的违约在速度约束方程严格满足的条件下会被控制在有限的范围内的结论,因此在数值方法中可以省去用于保证位置约束得到满足的措施。在此基础上,本文提出了修正型的状态空间法以提高状态空间法的通用性。在修正型的状态空间法中,对位置约束方程的求解被积分方法替代,仅求解速度约束方程以消去速度约束方程的违约。对于线性的速度约束方程,利用求解线性代数方程的方法进行求解;对于非线性速度约束方程,利用牛顿法进行求解。同时,线性速度约束方程可以使用牛顿法进行求解,利用牛顿法求解速度约束方程的修正型的状态空间法可以对本文所要求解的仅含完整约束的指标-3形式的多体系统动力学微分-代数方程组、仅含线性非完整约束的指标-2形式的多体系统动力学微分-代数方程组、含完整-线性非完整混合约束的指标-3形式的多体系统动力学微分-代数方程组以及含完整-非线性非完整混合约束的指标-3形式的多体系统动力学微分-代数方程组统一地进行求解。本文的研究结果表明,状态空间法可以对各类多体系统动力学微分-代数方程组进行有效的求解。利用隐式积分方法进行积分的状态空间法具有精度高、通用性好、稳定性好、效率高的特点。