Simulink presenting a convergence error

8 vues (au cours des 30 derniers jours)
Lucas duboc
Lucas duboc le 10 Avr 2024
Commenté : Lucas duboc le 11 Avr 2024
I made a simple simulaltion of a x=Asen(wt) function in simulink using differential equations, but instead of a constant senoidal curve, it is converging to zero, although its very slow (w needs to be high or simulation time needs to be very long), here is the simulink code, and the scope output, the only custom things to simulink is a fixed simulation step of 0.01.
Original function is A*sin(wt), with A=2 and w = 60 modeled as a differential equation of x''(t) = -w² *x(t), x'(0) = Aw and x(0) = 0
I think the problem is a rounding error since it is very slow, but I don't know how to fix it

Réponse acceptée

Paul
Paul le 10 Avr 2024
Setting the fixed-step solver to ode8 seems to work pretty well for the problem shown in the question with a fixed step of 0.01. Don't know how well ode8 will work for other choices of w and step size, but I suspect it will be better than any of the others for this particular system.
  1 commentaire
Lucas duboc
Lucas duboc le 11 Avr 2024
thank you, worked fine now, but got a little choppy with a 0.01 step, but the 0.001 step works just as well

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Simulink dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by