Azzera filtri
Azzera filtri

Enforce Kinematic Constraint in Initial Value Problem ode45()

1 visualizzazione (ultimi 30 giorni)
I have the following non-linear system:
I had originally solved for the displacement of each mass using ode45() (see https://www.mathworks.com/matlabcentral/answers/2107866-find-state-space-representation-of-linearized-non-linear-system-to-find-state-space-representation-i?s_tid=srchtitle). I had set the initial displacement and velocity of each mass to zero as my initial values. My confusion is with how my kinematic constraint (i.e. zero displacement at each wall) is accounted for or enforced in the ode45() solution. Is my ode45() solution valid for the system shown or do I need to form this as a boundary value problem with the boundary conditions as x(0) = 0 and x(l) = 0 instead of an initial value problem as I have done with ode45()? Another reason I bring this up is because my ode45() solver frequently fails after t<10^-5 s when solving. Is this because there are are singularities at the walls that I am not accounting for with my ode45() solution?
  1 Commento
Jonathan Frutschy
Jonathan Frutschy il 20 Mag 2024
@Sam Chak I'm not sure if you would know the answer to this, but any insight would be greatly appreciated.

Accedi per commentare.

Risposta accettata

Sam Chak
Sam Chak il 20 Mag 2024
Visualizing a system with 600 masses can be challenging. However, I believe the kinematic constraint for this system may be formulated as a differential-algebraic system of equations (DAEs).
For more information, please refer to the following examples:

Più risposte (0)

Prodotti


Release

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by