Re: [問題] plot多個波形相加已回收
※ 引述《haosan (K211)》之銘言:
: for i=1:30
: magnitude(i) = i*2;
: end
: for i=1:30
: freq(i) = i*1.2;
: end
: for i=1:30
: phase(i) = i;
: end
: x = linspace(0.00,2.00,20000);
: hold on;
: for j=1:20000
: k0 = 8;
: for i=1:30
: k0 = k0 + magnitude(i)*sin(2*pi*freq(i)*x(j)+phase(i));
: end
: plot(x(j),k0);
: end
: 有沒有辦法少用一個迴圈 但得到同樣效果?
a=1:30
magnitude(a) = a.*2;
freq(a) = a.*1.2;
phase(a) = a;
x = linspace(0.00,2.00,20000);
hold on;
for j=1:20000
k0=magnitude(a).*sin(2.*pi.*freq(a).*x(j)+phase(a));
k0=sum(k0)+8;
plot(x(j),k0);
end
沒寫錯的話應該是這樣,把內迴圈向量化,運算完30次之後再加總~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.40.112.131
推
11/09 13:09, , 1F
11/09 13:09, 1F
討論串 (同標題文章)