where do those imaginary values come from?

If I use this piece of code
b=24;
k=2000*3600;
t=0:1:720;
Q_y = zeros(size(t));
for i = 1:length(t)
if t(i) < 360-b/2
Q_y(i) = (k/(360-b/2))*t(i);
elseif t(i) >= 360-b/2 && t(i) < 360+b/2
Q_y(i) = k;
else
Q_y(i) = (-k/(360-b/2))*t(i)+720*(k/(360-b/2));
end
end
on itself everything is fine, but when I try to use it in a bigger piece of code Q_y suddenly gets imaginary values. Where do they come from and what can I do about them?

 採用された回答

Image Analyst
Image Analyst 2014 年 3 月 18 日

0 投票

All will be revealed if you follow these instructions http://blogs.mathworks.com/videos/2012/07/03/debugging-in-matlab/ on your bigger, unshown piece of code.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeSimulink についてさらに検索

質問済み:

2014 年 3 月 18 日

回答済み:

2014 年 3 月 18 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by