首页 理论教育 变步长法及车辆系统仿真理论与实践

变步长法及车辆系统仿真理论与实践

时间:2023-08-26 理论教育 版权反馈
【摘要】:此为4阶5级公式,还可推导出一个3阶4级公式:令误差则式~式简称为RKM3-4法。设定一个最小误差限emin,一个最大误差限emax,每一步的局部误差取为式中,En为变步长各式计算出的误差估计。由式可知,当较大时,en是相对误差,而当很小时,en就成了绝对误差,这样可避免当值很小时,en变得过大。若en<ε0,则本步积分成功,现确定下一步的最大步长hn+1。

变步长法及车辆系统仿真理论与实践

在实际应用时,对前述数值积分法,仿真人员可根据实际情况在仿真的不同阶段选取不同的步长,这就是变步长法,如变步长龙格-库塔-默森(Runge-Kutta-Merson)法。步长选取的原则是,在保证仿真过程满足一定精度的前提下,为使计算量尽可能小,尽量选取适用的较大的步长,这样仿真步长需不断改变。变步长应根据一定的条件,其前提是要有一个好的局部误差估计公式,根据局部误差的大小来改变步长。对于龙格-库塔算法的误差估计,通常是设法找到另一个低阶(一般是低一阶)的龙格-库塔公式,要求这两个公式中的ki相同,则两个公式计算结果之差可以看作是误差。

假设微分方程

计算公式为

式中,

此为4阶5级公式,还可推导出一个3阶4级公式:

令误差

式(2.1.17)~式(2.1.19)简称为RKM3-4法。根据该步的绝对误差En,即可按步长的控制策略进行步长的控制,通常用对分策略。

设定一个最小误差限emin,一个最大误差限emax,每一步的局部误差取为

式中,En为变步长各式计算出的误差估计。

由式(2.1.20)可知,当 较大时,en相对误差,而当很小时,en就成了绝对误差,这样可避免当值很小时,en变得过大。

其控制策略如下:

若en>emax,则,重算此步;

若emin<en<emax,则hn+1=hn,继续计算;(www.xing528.com)

若en<emin,则hn+1=2hn,继续计算。

这种对分策略简便易行,每步附加计算量小,但不能达到每步最优。还有一种最优步长控制策略,其基本思想是在保证精度的前提下,每个积分步取得最大步长(或称最优步长),这样可以减少计算量。具体做法是根据本步误差估计,近似确定下一步可能的最大步长,其策略如下:

对于k阶积分算法,认为

其中,φ(ξ)是f(y,t)在积分区间[tn,tn+h]内一些偏导数的组合,通常可取ξ=tn,则

据此作以下判断。

(1)若en<ε0,则本步积分成功,现确定下一步的最大步长hn+1

假定hn+1足够小,则φ(tn+hn+1)≈φ(tn),下一步误差为

为使en+1≤ε0,即

则有

将式(2.1.22)代入上式得

(2)若en>ε0,则本步失败,按式(2.1.23)求出一个积分步长,它表示重新积分的本步步长,再算一遍,即

由于假定了hn+1足够小,因此φ(tn)基本不变,必须限制步长的缩小与放大,一般限制h的最大放大、缩小系数为10,即要求

有关最优步长控制,除此方法以外,还有吉尔(Gear)法等,可参阅相关文献。采用最优步长控制后,计算量明显减少,但上述两种控制方法对于f函数中含有间断特性的情况不适用,因为在间断点附近会出现步长频繁放大、缩小的振荡现象,而最优步长控制法是以本步误差外推下一步步长,所以振荡现象更为严重。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈