문제

I have a question on the same topic in math.stackexchange.com: https://math.stackexchange.com/questions/664422/how-does-matlab-simulink-get-such-accurate-ode-solution-results, and it remains open.

I am looking to understand how Simulink's accuracy of solving ODEs with purportedly the fourth order Runge-Kutta solver (ODE4) far exceeds any implementation I have developed so far. Either I have incorrectly implemented the algorithm or Simulink is doing extra work behind-the-scenes to increase accuracy. I have asked on the math stack exchange site about potential mathematical methods, I ask here about computer science methods of achieving increased accuracy.

My interest comes from a need to understand model stability using different solution methods, and not knowing what Simulink is doing to get accuracy means having less idea of its potential stability in certain situations.

도움이 되었습니까?

해결책

I think that this has some connection with energy conservation of integration method.

They are probably using modified RK method without such energy drift.

http://en.wikipedia.org/wiki/Symplectic_integrator

다른 팁

The simple Runge-Kutta method as it turns out is as accurate as the Simulink definition when implemented correctly. Several implementation errors contributed to a relatively small but definite error from the correctly implemented solution.

The answer to this question is that Simulink implements the RK solver as agreed in literature with no proprietary improvement.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top