2017-04-10 569 views
1

整個代碼Matlab的陰謀4個vecotrs

clear;clc 
d1= 0.34; 
d2= 0.15; 
d3=0.27; 
deltat = 1; 
W = 1000.0; 
X = 0.0; 
Y = 0.0; 
Z=0.00; 
for t = 1:30 
W(t+1) = W(t) - deltat*d1*W(t); 
X(t+1) = X(t) - deltat*d2*X(t); 
X(t+1) = X(t+1) + deltat*d1*W(t); 
Y(t+1) = Y(t)- deltat*d3*Y(t); 
Y(t+1) = Y(t+1) + deltat*d2*X(t); 
Z(t+1)=Z(t); 
Z(t+1)=Z(t+1) + deltat*d3*Y(t); 
end 
figure(1) 
plot(W(t),X(t),Y(t),Z(t)) 
title('Radioactive Decay','FontSize',14) 
legend('W','X','Y','Z'); 
xlabel('Time (days)'); 
ylabel('Kilograms'); 
W(30) 
X(30) 
Y(30) 
Z(30) 

我有

plot(W(t),X(t),Y(t),Z(t)) 

問題故障部位

我試圖繪製W,X, Y和Z在一個圖上一起繪製,以顯示3點的變化我已經分配了0天的時間,但是看起來我所輸入的格式是錯誤的,因爲最終的結果是空的。

回答

1

發生此問題的原因是繪圖函數僅適用於二維線圖。文檔:https://se.mathworks.com/help/matlab/ref/plot.html

你寫它的方式是在一個軸上繪製W(t),在另一個軸上繪製X(t)等等,總計爲四個維度。

使用

plot(W); hold on; 
plot(X); hold on; 
plot(Y); hold on; 
plot(Z); 
+0

謝謝!這個工作的概念。我只需刪除(t)並將這些字母大寫以獲得正確的圖形。 – Jack

+0

答案現在被編輯爲更正確的解決方案。 – matiastofteby