Matlab二阶导数

时间:2013-03-01 12:58:21

标签: function matlab derivative

我已按照http://www.mit.edu/people/abbe/matlab/ode.html上的教程编写了一个函数,如下所示:

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

当我使用

调用它时
[T, XY] = ode45('diffxy',0,10,[0 1 0])

我收到错误

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

我也试过

  
    

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

  

有人有任何想法吗?

1 个答案:

答案 0 :(得分:3)

没有阅读整个教程,但你不应该将你的功能定义为

function dxy = diffxy(t, xy)

其中t是时间向量