Matlab ode15s代码中的错误消息

Matlab ode15s代码中的错误消息,matlab,Matlab,我在单独的文件中用matlab编写了这些简单的代码。 运行此程序时,我收到以下消息: ???尝试将脚本ode15s作为函数执行: D:\app\ode15s.m 在2处==>ode15s时出错 [T,Y] = ode15s(@difdif,[0 40],[1 0 0]); 有什么问题吗 «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« clc [T,Y] = ode15s(@difdif,[0 40],[1 0

我在单独的文件中用matlab编写了这些简单的代码。 运行此程序时,我收到以下消息:

???尝试将脚本ode15s作为函数执行:

D:\app\ode15s.m

在2处==>ode15s时出错

[T,Y] = ode15s(@difdif,[0 40],[1 0 0]);
有什么问题吗

««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««

clc

[T,Y] = ode15s(@difdif,[0 40],[1 0 0]);

%plot(T,Y(:,3),'-o')

plot(T,Y(:,1),'-',T,Y(:,2),'-o',T,Y(:,3),'.')

«««««««««««««««««««««««««««««««««««««««««««««««««««

function dy = difdif(t,y)

dy = zeros(3,1);    % a column vector

dy(1) =-0.04*y(1)+10^4*y(2)*y(3);

dy(2) = 0.04*y(1)-10^4*y(2)*y(3)-3*10^7*y(2)^2;

dy(3) = 3*10^7*y(2)^2;

end
处理你的问题
D:\app\ode15s.m
可能是一个自制的脚本,它首先出现在MATLAB搜索路径上。MATLAB内置的
ode15s.m
不会按预期调用。更改MATLAB搜索路径中的顺序或重命名
D:\app\ode15s.m


引用解决方案:
which ode15s-all
显示搜索路径上的所有实例

您将脚本命名为
ode15s
,与内置函数同名。当matlab试图执行ode15s(@difdif[0 40],[1 0 0])时,它会找到脚本,而不是内置函数。重命名脚本。

尝试将第一个文件重命名为其他文件(不要使用
ode15s.m