摘要
采用Matlab软件研究了Runge-Kutta直接积分法在计算非线性动力系统极限时存在的一个问题:单周期解误判为双周期或三周期.直接调用Matlab自带程序ode45,并设定算法的相对误差.以二元机翼强非线性颤振系统为例,研究发现,采用程序默认的相对误差来控制计算精度时,单周期极限环解出现了双周期和三周期;若修改相对误差的设定值则可提高控制精度,进而得到正确的解.因此,在用Runge-Kutta法自带ode45程序计算非线性动力系统极限环时,应特别注意对计算精度的设置.
Matlab software was applied to investigate a problem in implementing the Runge-Kutta method to simulate limit cycles of nonlinear dynamical systems. This problem refers to a misjudgement of the period of limit cycle oscillation, more specifically, a period-1 solution would possibly be considered to be period-2 or period-3. The relative errors of the results can be adjusted when directly calling the Matlab programs such as ode45. Taking the strongly nonlinear flutter system of an airfoil as an example, it revealed that, a period-1 limit cycle could be erroneously simulated as a period-2 or period-3 one. The correct solution can be obtained by improving the relative accuracy. This study demonstrates that it is worthy of paying more attention to the accuracy of the Runge-Kutta method, especially when used in simulating limit cycles.
出处
《华南师范大学学报(自然科学版)》
CAS
北大核心
2016年第4期21-25,共5页
Journal of South China Normal University(Natural Science Edition)
基金
广东省科技计划项目(2013B090500123)