2011-01-09 63 views
0

我在matlab中將這些簡單代碼寫在了單獨的文件中。 當我運行這個程序時,我得到這個消息:ode15s代碼中的錯誤消息

???嘗試執行腳本ode15s作爲一個函數:

d:\程序\ ode15s.m

錯誤==> ode15s在2

[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 
+1

嘗試將您的第一個文件重命名爲其他內容(不要使用`ode15s.m`) – Amro 2011-01-09 20:31:11

回答

0

您將腳本命名爲ode15s,與內置函數名稱相同。當matlab試圖執行ode15s(@difdif,[0 40],[1 0 0])時,它會找到腳本,而不是內置函數。重命名您的腳本。