# matlab differential equation

I have followed the tutorial on http://www.mit.edu/people/abbe/matlab/ode.html and prepared a function as follows:

function dxy = diffxy(xy)
%
%split xy into variables in our equations
%
x = xy(1);
xdot = xy(2);
y = xy(3);
%
% define the derivatives of these variables from equations
%
xdot = xdot;
ydot     = 3*x + 2*y + 5;
xdoubledot = 3 - ydot + 2*xdot;
%
%return the derivatives in dxy in the right order
%
dxy = [xdot; xdoubledot; ydot]
end


When I call it using

[T, XY] = ode45('diffxy',0,10,[0 1 0])


I get an error

??? Error using ==> diffxy
Too many input arguments.


I also tried

XY= ode45(@diffxy,[0 10],[0;1;0])


Anybody have any idea?

Problem solved. time should be considered also as a parameter. New function definition:

function dxy = diffxy(**t**,xy)


THANKS

-
The function you call with ode45 must accept two arguments. See the documentation for details. –  in_wolframAlpha_we_trust Mar 1 '13 at 13:13
yep problem solved –  dramaticlook Mar 1 '13 at 13:37
Please post your solution as an answer rather than editing it into the question. Otherwise the question will remain open. –  Dennis Jaheruddin Mar 1 '13 at 13:41