Borrar filtros
Borrar filtros

ode15s slows down at reaching steady state SOLVED

2 visualizaciones (últimos 30 días)
Damjan Lasic
Damjan Lasic el 4 de En. de 2017
Comentada: Torsten el 12 de En. de 2017
I'm solving a system of rather stiff equation describing a microkinetic model of methanol formation (30 species, ~70 reactions and vastly different rate constants).
I'm achieving satisfactory speeds of the ode15s solver during simulation since i started using an analitycal jacobian (tremendous increase in speed and stability of the solver). However, as the solution approaches steady state, the solver reduces the speed greatly and gets stuck. When using just the right time interval to get to reduction part, the ratio of sucessful and failed attempts reported increases drastically.
I'm not sure what's causing this behaviour. Is anyone else experiencing similar problems? When using numerical estimation of the jacobian, the solver always speeded up when steady state was reached. Has this something to do with numerical fluctuations in steady state due to floating point number rounding?
Any insight or help would be much appreciated.
EDIT: The problem was fixed by reducing the absolute tolerance of the solver.
  3 comentarios
Damjan Lasic
Damjan Lasic el 12 de En. de 2017
If no Jacobian was provided, the simulation ran with increasingly big time steps after steady state was reached without a problem.
Anyway, i managed to "fix" this by changing the tolerances, so the problem is gone. Still don't really understand the mechanism though.
Torsten
Torsten el 12 de En. de 2017
I assume you checked the Jacobian
https://de.mathworks.com/help/optim/ug/checking-validity-of-gradients-or-jacobians.html
?
Best wishes
Torsten.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Ordinary Differential Equations en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by