在Adams中设置不同的求解器误差及Hmax(允许的最大迭代步长)会对结果产生比较明显甚至决定性的影响。在没有仿真经验的时候或者对模型结果存在疑问,最好能够先进行误差敏感度研究,或者可将此步做为分析中的必要规定。
下面以二自由度弹簧振子模型做个示例。
命名最上面圆球为sprung_mass,质量350Kg,中间为unsprung_mass,质量为50Kg,最下面为road,质量为1Kg;三个球都用移动副约束,取消重力;设置上面弹簧参数为25N/mm,无阻尼;下面弹簧参数为250N/mm,无阻尼。
在road上施加motion,为幅值15mm,频率0.1-20Hz的正弦扫频函数,表达式如下
设置求解器为Gstiff,SI2,orginal;仿真时间20s,仿真步长0.01
研究error设置:将Hmax设置为1e-3,分别设置error=1e-10,error=1e-9,error=1e-8,error=1e-7。查看sprung的位移响应,可知当error为1e-7时,与其他结果差异较大,其他响应曲线也是。因此可先将误差设置为1e-8。
研究Hmax设置:Hmax决定了允许的最大迭代步长,此值越小,仿真速度越快。将误差设置为1e-8,Hmax分别设置为1e-2,1e-3,1e-4。查看结果,可知1e-2结果在20s附近略有差异。
综上,可以将求解器误差设置为1e-8,Hmax=1e-3。
当然,还可以继续进行探索,达到速度与精度的平衡
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删