2014-10-31 53 views
0

我不是編程,強有力的。我試圖在Matlab中繪製Power Electronics中的兩個方程。我的代碼如下。當我繪製Btcr和alpha時,我正在得到一個空白圖!請讓我知道什麼是錯的。Matlab的編程:繪製納VS觸發角阿爾法

 Plotting Susceptance vs Firing Angle 

%Variables 
V = 1; 
L = 0.005; 
freq = 60; 
omega = 2 * pi * freq; 
theta = 0:0.01:360*2; 

for alpha = 90:10:180 
sigma = 2*(180 - alpha) 
Btcr = (sigma + sind(2*alpha))/(omega*L*3.14); 
end 
plot(Btcr, alpha); 

回答

0

您的for -loop是不必要的。您每次都要經過循環時間實際上覆蓋的sigmaBtcr以前的值,所以在最後你沒有數據,只有兩個數字的載體。你可以通過完全刪除循環來解決這個問題:

alpha = 90:10:180 
sigma = 2*(180 - alpha) 
Btcr = (sigma + sind(2*alpha))/(omega*L*3.14); 
plot(Btcr, alpha); 
+0

謝謝大衛!我正在看圖表!但是有沒有辦法讓曲線平滑?我現在正在看鋸齒線。 – Som 2014-11-01 02:47:59

+0

@Som它看起來好像沒什麼問題,我得到一個相當不錯的直線。嘗試繪製標記而不是一條線(使用'plot(Btcr,alpha,'o')')來查看鋸齒狀是來自數據還是繪圖。 – David 2014-11-01 07:07:35

+0

謝謝大衛。標記看起來比線更好.. :) – Som 2014-11-06 17:06:45