基于Bathe积分策略获取闭环多体系统运动状态的方法技术方案

技术编号:17779667 阅读:50 留言:0更新日期:2018-04-22 08:09
本发明专利技术公开了一种基于Bathe积分策略获取闭环多体系统运动状态的方法,包括在动力学多体系统中建立相应的坐标系,并采用相对坐标法,利用拉格朗日乘子法,根据虚功率原理,得到动力学方程;将约束方程对时间求二阶导数,得到指标‑1的微分‑代数方程组,添加约束稳定项,形成含完整约束的动力学方程的一般形式;对含完整约束的动力学方程一般形式在时间步[t,t+h/2]上进行积分迭代求解,得到t+h/2时刻的运动参数;在时间步[t+h/2,t+h]上进行积分迭代求解,得到t+h时刻的运动参数;重复迭代计算,当计算时间达到设置好的仿真总时间,输出系统运动参数随时间变化的值,即可分析过程闭环多体动力学系统在一定时间内的运动状态;本方法在较大积分步长的情况下也可以得到较好的精度。

【技术实现步骤摘要】
基于Bathe积分策略的多体动力学方程求解方法
本专利技术属于机械动力学领域,特别涉及到了一种基于Bathe积分策略的多体动力学方程求解方法。
技术介绍
多体系统是以一定方式相连接的多个物体组成的系统,通常根据拓扑结构的特点,将没有回路的多体系统称为开环系统,带回路的系统称为闭环系统,而系统往往是存在大量闭环结构的复杂多体系统。对于存在闭环结构的多体系统,由于此时系统广义坐标不再是独立的,建模和求解的复杂性大幅度增加。由于机械机构的复杂性和系统运行环境的多变性,含闭环的多体系统动力学方程一般具有强耦合性和非线性特征,难以获得解析解,因此需要具有良好数值性态的求解算法,从而获得精确、稳定和高效的数值解,实现机械系统的运动学和动力学仿真分析。对于闭环多体系统动力学方程的求解,常用算法有中心差分法,向后差分法,龙格-库塔(Runge-Kutta)方法,亚当斯(Adams,J.C.)方法,Newmark法,HHT法,广义-α法等,目前这几类方法已经被应用于闭环多体系统动力学分析,然而当求解长时间历程的非线性动力学问题时,传统方法可能会变得不稳定,产生数值耗散。
技术实现思路
本专利技术所解决的技术问题在于提供一种基于Bathe积分策略的多体动力学方程求解方法,以解决含闭环的多体系统动力学方程求解算法不稳定且效率不高的问题。实现本专利技术目的的技术解决方案为:一种基于Bathe积分策略的多体动力学方程求解方法,包括以下步骤:步骤1、构建含完整约束的动力学方程:在动力学多体系统中建立相应的坐标系,并采用相对坐标法,利用拉格朗日乘子法,根据虚功率原理,得到动力学方程;步骤2、将动力学方程整理为含完整约束的动力学方程的一般形式:将约束方程对时间t求二阶导数,从而得到指标-1的微分-代数方程组,在动力学方程中添加Baumgarte约束稳定项,整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式;步骤3、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t,t+h2]上进行积分迭代求解,得到t+h/2时刻的运动参数;其中h为积分步长;步骤4、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t+h2,t+h]上进行积分迭代求解,得到t+h时刻的运动参数;步骤5、重复步骤3与步骤4,直到计算时间达到设置好的仿真总时间时,完成计算,输出系统广义位移、广义速度和广义加速度随时间变化的值,即可分析过程闭环多体动力学系统在一定时间内的运动状态。本专利技术与现有技术相比,其显著优点:(1)本专利技术的动力学方程建模时使用了指标-1的微分-代数方程,通过添加Baumgarte违约稳定项,使得位移约束和速度约束不违约。(2)求解方法利用了Bathe积分策略,Bathe算法属于隐式算法,相比于显式积分算法,Bathe算法在较大积分步长的情况下也可以得到较好的精度。(3)迭代过程利用了逆Broyden拟牛顿法求解方程,由于将动力学方程推导成了以广义位移项作为未知变量的形式,因此雅克比矩阵的迭代初值无需进行求导计算,可直接由广义质量矩阵和广义阻尼矩阵获得,且由于雅克比矩阵中包含广义质量矩阵和广义阻尼矩阵,收敛效率提高,从而能够对动力学方程进行稳定、高效的求解。下面结合附图对本专利技术作进一步详细描述。附图说明图1为本专利技术方法的总体流程图。图2为实施例1中闭环多体系统结构示意图。具体实施方式为了说明本专利技术的技术方案及技术目的,下面结合附图及具体实施例对本专利技术做进一步的介绍。结合图1,本专利技术的一种基于Bathe积分策略的多体动力学方程求解方法,包括以下步骤:步骤1、构建含完整约束的动力学方程:在动力学多体系统中建立相应的坐标系,并采用相对坐标法,利用拉格朗日乘子法,根据虚功率原理,得到动力学方程。在动力学多体系统中任意位置建立惯性坐标系,并且在动力学多体系统中的每个刚体的质心上建立连体坐标系,每个铰上建立铰坐标系,以相邻铰的坐标系的相对坐标(即铰的相对运动参数)作为系统广义坐标,采用相对坐标法,考虑系统所受的约束,采用拉格朗日乘子法引入约束方程,根据虚功率原理得到动力学方程,其为指标-3的微分-代数方程组(DAEs):式中t为时间,q、和分别为铰的相对位移、相对速度和相对加速度,Φ(q,t)=0为系统约束方程,Φq为Φ(q,t)对q求导,()T表示对该矩阵的转置,λ为拉格朗日乘子,M(q,t)为质量矩阵,为阻尼矩阵,Q为系统外力。步骤2、将动力学方程整理为含完整约束的动力学方程的一般形式:将约束方程对时间t求二阶导数,从而得到指标-1的微分-代数方程组,在动力学方程中添加Baumgarte约束稳定项,整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式。2.1、对式(1)中的约束方程Φ(q,t)=0对时间t求二阶导数,可以将式(1)写成如下指标-1的微分-代数方程组(DAEs):式中其中Φqq为Φ(q,t)对q求二阶导数,Φqt为Φ(q,t)依次对q和t求一阶导数,Φtt为Φ(q,t)对t求二阶导数。2.2、在动力学方程中添加Baumgarte约束稳定项为稳定求解动力学方程,根据Baumgarte约束稳定法,在式(2)中加入稳定项可将式(2)写成如下形式式中,为速度约束,α和β为Baumgarte系数,取h为积分步长,λ′和λ″分别作为λ对时间的一次积分项和二次积分项,由于在式(3)中与拉格朗日乘子相关的项里只有λ参与了运算,λ′与λ″并没有进行实际的运算,因此并不改变原方程的形式。2.3、整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式令式中P、和分别为动力学方程的广义位移项、广义速度项和广义加速度项,和分别为动力学方程的广义质量矩阵和广义阻尼矩阵,为系统广义力。则式(3)可整理为:上式即为含完整约束的动力学方程的一般形式。步骤3、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t,t+h/2]上进行积分迭代求解,得到t+h/2时刻的运动参数:3.1、令系统的广义位移初值和广义速度初值分别为P0和假设t时刻的广义位移、广义速度和广义加速度分别为Pt、和首先求解t+h/2时刻的广义位移Pt+h/2。在[t,t+h/2]上利用梯形公式可推导得到t+h/2时刻的广义速度和广义加速度的表达式为:将式(6)代入式(5)进行整理后可得到以广义位移Pt+h/2为未知变量的非线性代数方程:3.2、利用逆Broyden拟牛顿法迭代求解式(7)迭代过程如下:式中yk和sk都为迭代的中间变量,Jt+h/2表示t+h/2时刻的雅克比矩阵,上标k和k+1分别表示第k次迭代和第k+1次迭代,Y的表达式如下:根据泰勒展开原理,式(7),式(8)中Pt+h/2和Jt+h/2的迭代初值可分别设置为:当计算得到第k+1次迭代所得的和后,利用式(6)可得到即可进行第k+2次的迭代。设置迭代收敛允许误差tol,并设置收敛条件:当当前迭代步满足收敛条件式(12)时,迭代停止,计算得到的第k+1次的广义位移广义速度和广义加速度即为t+h/2时刻的运动参数。步骤4、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t+h/2,t+h]上进行积分迭代求解,得到t+h时刻的运动参数:4.1、求解t+h时刻的广义位移Pt+h本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201711171910.html" title="基于Bathe积分策略获取闭环多体系统运动状态的方法原文来自X技术">基于Bathe积分策略获取闭环多体系统运动状态的方法</a>

【技术保护点】
一种基于Bathe积分策略的多体动力学方程求解方法,其特征在于,包括以下步骤:步骤1、构建含完整约束的动力学方程:在动力学多体系统中建立相应的坐标系,并采用相对坐标法,利用拉格朗日乘子法,根据虚功率原理,得到动力学方程;步骤2、将动力学方程整理为含完整约束的动力学方程的一般形式:将约束方程对时间t求二阶导数,从而得到指标‑1的微分‑代数方程组,在动力学方程中添加Baumgarte约束稳定项,整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式;步骤3、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t,t+h/2]上进行积分迭代求解,得到t+h/2时刻的运动参数;其中h为积分步长;步骤4、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t+h/2,t+h]上进行积分迭代求解,得到t+h时刻的运动参数;步骤5、重复步骤3与步骤4,直到计算时间达到设置好的仿真总时间时,完成计算,输出系统广义位移、广义速度和广义加速度随时间变化的值,即可分析过程闭环多体动力学系统在一定时间内的运动状态。

【技术特征摘要】
1.一种基于Bathe积分策略的多体动力学方程求解方法,其特征在于,包括以下步骤:步骤1、构建含完整约束的动力学方程:在动力学多体系统中建立相应的坐标系,并采用相对坐标法,利用拉格朗日乘子法,根据虚功率原理,得到动力学方程;步骤2、将动力学方程整理为含完整约束的动力学方程的一般形式:将约束方程对时间t求二阶导数,从而得到指标-1的微分-代数方程组,在动力学方程中添加Baumgarte约束稳定项,整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式;步骤3、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t,t+h/2]上进行积分迭代求解,得到t+h/2时刻的运动参数;其中h为积分步长;步骤4、利用Bathe积分策略对含完整约束的动力学方程一般形式在时间步[t+h/2,t+h]上进行积分迭代求解,得到t+h时刻的运动参数;步骤5、重复步骤3与步骤4,直到计算时间达到设置好的仿真总时间时,完成计算,输出系统广义位移、广义速度和广义加速度随时间变化的值,即可分析过程闭环多体动力学系统在一定时间内的运动状态。2.如权利要求1所述的一种基于Bathe积分策略的多体动力学方程求解方法,其特征在于,步骤1构建含完整约束的动力学方程为:式中t为时间,q、和分别为铰的相对位移、相对速度和相对加速度,Φ(q,t)=0为系统约束方程,Φq为Φ(q,t)对q求导,()T表示对该矩阵的转置,λ为拉格朗日乘子,M(q,t)为质量矩阵,为阻尼矩阵,Q为系统外力。3.如权利要求2所述的一种基于Bathe积分策略的多体动力学方程求解方法,其特征在于,步骤2建立含完整约束的动力学方程的一般形式,具体包括以下步骤:步骤2.1、对式(1)中的约束方程Φ(q,t)=0对时间t求二阶导数,可以将式(1)写成如下指标-1的微分-代数方程组:式中其中Φqq为Φ(q,t)对q求二阶导数,Φqt为Φ(q,t)依次对q和t求一阶导数,Φtt为Φ(q,t)对t求二阶导数;步骤2.2、在动力学方程中添加Baumgarte约束稳定项:根据Baumgarte约束稳定法,在式(2)中加入稳定项并移项,将式(2)写成如下形式式中,为速度约束,α和β为Baumgarte系数,取h为积分步长,λ′和λ″分别作为λ对时间的一次积分项和二次积分项;步骤2.3、整合相应参数并整理方程,形成含完整约束的动力学方程的一般形式令式中P、和分别为动力学方程的广义位移项、广义速度项和广义加速度项,和分别为动力学方程的广义质量矩阵和广义阻尼矩阵,为系统广义力;则式(3)整理为:4.如权利要求3所述的一种基于Bathe积分策略的多体动力学方程求解方法,其特征在于,步骤3得到t+h/2时刻的运动参数具体包括以下步骤:步骤3.1、令系统的广义位移初值和广义速度初值分别为P0和假设t时刻的广义位移、广义速度和广义加速度分别为Pt、和在[t,t+h/2]上利用梯形公式推导得到t+h/2时刻的广义速度和广义加速度的表达式为:将式(6)代入式(5)进行整理后可得到以广义位移Pt+h/2为未知变量的非线性代数方程:

【专利技术属性】
技术研发人员:钱林方陈光宋吉磊陈龙淼徐亚栋
申请(专利权)人:南京理工大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1