Réponse acceptée

Yifeng Tang
Yifeng Tang le 25 Août 2025

0 votes

I would suggest that you try ode15s or ode23t instead.
While ode15i, being an implict solver, may work well with stiff system of equations, it doesn't allow a "mass" matrix in the input set to indicate a certain equation is an algebraic equation. See https://www.mathworks.com/help/matlab/math/summary-of-ode-options.html and look for the "mass" option in the table. It's still possible to rewrite your equations with multiplier to trick ode15i into solving it, but I find it easier to use ode15s or ode23t with a mass matrix so the equations are more human-understandable.
I've seen ode15s and ode23t picked automatically in some Simscape models, which usually is a DAE system, although daessc solver is much more likely (but it's not available in MATLAB solvers).
Hope this helps.

1 commentaire

Tony Cheng
Tony Cheng le 26 Août 2025
Hi Yifeng,
Thanks vey much for ur detailed description. I will make a first attempt to use ode15s then ode15i will be tested to compare the results.
your idea really help!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!