ode45,ODE23 , force is not a time dependent function

5 visualizaciones (últimos 30 días)
Gloria
Gloria el 27 de Mayo de 2022
Comentada: Gloria el 27 de Mayo de 2022
Hi;
As you can see in the code ; normally for ODE23 I was defining the force with time such as Fy=@(t) Fyr*sin(w*t);
But now the force values are given in the excel and I couldn't understand how can I apply force now?
To solve ode23, as in F=[....], Fy(t), Fz(t) and Mt(t) depend on t, but this time I have force values and they are not functions.
What should I do?

Respuesta aceptada

Walter Roberson
Walter Roberson el 27 de Mayo de 2022
If you have external impulses, then none of the ode* functions can be used for the entire timespan, unless the forces can be interpolated with degree two or more, such as using interp1 'spline'.
If they cannot be made smooth enough then you need to stop the ode* function at the each location that fails C2 continuity.
This is because the mathematics of optimal point selection to calculate new points from is dependent upon intepolating polynomials that require continuity.

Más respuestas (1)

Sam Chak
Sam Chak el 27 de Mayo de 2022
Hi Gloria
You can load data on Excel to Workspace and then use the function interp1(t,Fy,Ts) to interpolate the data set (t,Fy) at simulation time Ts. For more info, check out the link:

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