MATLAB Answers

ode23tb stops solving

38 views (last 30 days)
Sadegh A
Sadegh A on 26 Dec 2020
Answered: Nikhil Sonavane on 30 Dec 2020
Hello,
I'm using ode solvers for my nonlinear problem in the form of:
Mx''+Cx'+Kx=F
in which M, C, and K are matrices and F is a vector, with nonlinear terms. I tried all ODE solvers, but they ran very slowly, and the best and fastest one was ODE23tb.
This solver was 100 times faster than others, but in some conditions of the problem, if the time interval is [0 10] for example, ode23tb quickly runs up to 5th second (for example in 1 minute) but stops at this second and do not go ahead, and spends one minute for every 0.001 seconds. It seems suddenly the time steps reduces to 10e-6.
I changed different options of ODE but were not effective.
May you help me?
Thanks.

  3 Comments

Jan
Jan on 26 Dec 2020
If the function to be integrated contains a pole at this point or a discontinuity, this is the expected behavior.
Sadegh A
Sadegh A on 26 Dec 2020
Dear jan
Thank you for your comment.
No, there is not any pole or discontinuity.
May it has any other reason?
Jan
Jan on 27 Dec 2020
Without seeing any details it is impossible to guess the cause of the problem. Can you post your code?

Sign in to comment.

Answers (1)

Nikhil Sonavane
Nikhil Sonavane on 30 Dec 2020
You may refer to the following documentation which will help you choose a solver for your problem more accurately-

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by