How to tell ode15s to change its max time step for a specific short time range?

6 visualizaciones (últimos 30 días)
I have a dynamic system coded in Matlab and solved using ode15s, and it works fine except it is slow because of the system size. I must give the solver a small step size (say 1e-4) for a very short time (0.05 s - 0.1 s) when there is a chnge in the system network. The rest of simulation time (20 s) can be simulated with a step size 1e-1 and it gives a satisfactory result. Is there is any possibility to tell the solver to change its step size (max. step size) during this short time?
Thanks
Ismael

Respuesta aceptada

Torsten
Torsten el 12 de Jun. de 2019
Integrate from 0 to 0.05, restart the solver and solve from 0.05-0.1, restart the solver and solve from 0.1 - 20. Every time you restart the solver, you can change the maximum step size.
  3 comentarios
Torsten
Torsten el 12 de Jun. de 2019
The initial values of run "n" are the results for the last output time of run "(n-1)".

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by