Matlab ode15s代码中的错误消息
我在单独的文件中用matlab编写了这些简单的代码。 运行此程序时,我收到以下消息: ???尝试将脚本ode15s作为函数执行: D:\app\ode15s.m 在2处==>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
[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
)