ode45 - Does matlab keep track of derivatives which can be recalled?

1 view (last 30 days)
I've run into an issue with a system of coupled 2nd order nonlinear ODEs. I've converted the system to a system of 1st order ODEs like normal, but its not in the format that ode45 requires. ode45 requires
x_dot = f(t,x), where x is the state vector
My form is
x_dot = f(t,x,x_dot)
where the function also depends on the derivative. I searched all around to see if anyone else has had this issue, and only found one post on a forum. It just said to proceed normally with ode45 and use the old values (previous step) of x_dot to calculate the rhs.
This makes sense, but ode45 doesn't work that way (not that I know of). I only have access to the old state values and not their derivatives.
Any ideas?

Accepted Answer

Babak
Babak on 1 May 2013
Re-formulate your equations from
x_dot = f(t,x,x_dot)
to
g(t,x,x_dot) = f(t,x,x_dot) - x_dot = 0
and then use
ode15i
to integrate the set of equations in g().

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!