ODE23 taking in 3 variables

2 views (last 30 days)
WhatIsMatlab-
WhatIsMatlab- on 20 Apr 2016
Edited: WhatIsMatlab- on 20 Apr 2016
I can run this function with 2 z values but when I try to add another z value I get an error. Do you know how to run this function for 3 z values?
Error: Index exceeds matrix dimensions.
function dxdy = TY3(t,z)
dxdy = [z(3); 1*z(3)+2*z(2)+3*z(1)];
[t,z] = ode23(@TY3,[0 30],[1 0 ]);
plot(t,z(:,1),'k','LineWidth',2);

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 20 Apr 2016
You have 3 variables z(1),z(2) and z3, you need to write 3 equations dydx(1),dydx(2) and dydx(3), for example
dxdy = [z(3); 1*z(3)+2*z(2)+3*z(1);0]
and call ode23 with 1x3 array representing initial conditions
[t,z] = ode23(@TY3,[0 30],[1 0 1 ]);
plot(t,z(:,1),'k','LineWidth',2);
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 20 Apr 2016
I just gave an example, you have to provide the third equation and the initial conditions
WhatIsMatlab-
WhatIsMatlab- on 20 Apr 2016
Edited: WhatIsMatlab- on 20 Apr 2016
Ok thanks!! I got it working.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!