Error using ODE solvers?

1 次查看(过去 30 天)
Joe
Joe 2013-5-5
Hi I'm trying to solve for this system of ODEs using the ODE solver that works the fastest:
d/dt[x1 x2 x3] = [-10^4*x1+x2^2+x3;0.1*x2+x3;x1^3-x2-10^-4*x3]
So in order to determine which ODE solver computes this the fastest, I've simply tested each solver with the same conditions and tolerance. However, the x1 values I get are extremely off from each other from each solver even though x2 and x3 are relatively close in terms of the tolerance. I don't know what seems to be the problem...

采纳的回答

Jan
Jan 2013-5-6
编辑:Jan 2013-5-6
The resulting trajectories will differ, when:
  • the ODE is stiff and you use a non-stiff solver,
  • the solution is not stable - then tiny deviations caused by the different integration schemes are amplified.
So at first determine the stiffness, then calculate the sensitivity matrix by varying the inputs and comparing the outputs.
Btw, if speed matters, -1e4 is faster than -10^4.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by