把状态保存

今天实现了把模拟状态保存为文件的功能。
当前的模拟对话框为:

模拟过后只需点 Save Simulation Result,即可保存结果。
结果包括初始位置initPos、内部点索引intPntIdx、表面点索引surfPntIdx、每一帧偏移量q、速度v、加速度a、参数值param

下一步实现模型的静态解算,就是给出一组表面点的运动序列,算出平衡位置下内部点的运动序列。
做一个切换开关,就是把参数连接到初始值。

模型的静态解算
模型的静态解算方法比较简单,利用  K = dF / dx 
其中K为tangent stiffness matrix, F为内力,dx为偏移量
用牛顿法解 F + K * dx = 0,得到dx

注意一点就是由于是求内部点的静态位置,K应该只取内部点对应的行和列,dx、dF则是取内部点对应的元素,否则即使每次把表面点步长设成0,迭代也不收敛


当前的界面如图所示:

加上了Static Simulate按钮
静态解算时,参数直接从RigInitParameter读取,而不是通过模拟得到

,状态与动态模拟一样也是保存在节点的RigStatus内部







转载于:https://www.cnblogs.com/dydx/p/4249207.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值