Re: [問題] 請求數學公式的MATLAB寫法已回收
你好,我看了你的圖了。
但是兩個式子要表達的似乎不太一樣。
第一個比較像 tap weight update。
第二個就是 linear model。
但最主要都是和 convolution 有關。
這樣的話至少有四種作法:
(I) register
(II) convolution
(III) filter
(IV) FFT
我試了前三種,不妨參考看看:
% =======================================================================
clear all
N = 500; % length of input
M = 10; % length of tap weight vector
x = cos(2*pi/100*(1:N))'; % cos wave vector/input u(n)
w = [1 -0.5 0.25 -0.125 zeros(1,M-4)]'; % initialize tap weight vector
u = zeros(M,1); % initialize delayed version of u(n)
v = 0.1*randn(N,1); % initialize noise v(n)
y = zeros(N,1); % initialize output y(n)
% Method I: register type
for n=1:N
if (n<=M)
u(1:n) = x(n:-1:1);
else
u(1:M) = x(n:-1:n-M+1);
end
y(n) = w'*u + v(n);
end
% Method II: convolution type
y1= conv(x,w);
y1= y1(1:N) + 0.1*randn(N,1);
% Method III: : filter type
y2= filter(w,1,x) + 0.1*randn(N,1);
plot(0:N-1,y,0:N-1,y1,0:N-1,y2)
legend('y0(n)','y1(n)','y2(n)');
ylabel('Magnitude')
xlabel('n')
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.117.11.150
※ 編輯: ck901004 來自: 59.117.11.150 (10/17 12:13)
推
10/17 21:02, , 1F
10/17 21:02, 1F
→
10/17 21:05, , 2F
10/17 21:05, 2F
→
10/17 21:05, , 3F
10/17 21:05, 3F
推
10/17 21:09, , 4F
10/17 21:09, 4F
→
10/17 21:09, , 5F
10/17 21:09, 5F
→
10/17 21:10, , 6F
10/17 21:10, 6F
推
10/17 21:20, , 7F
10/17 21:20, 7F
→
10/17 21:21, , 8F
10/17 21:21, 8F
→
10/19 12:19, , 9F
10/19 12:19, 9F
→
10/19 12:19, , 10F
10/19 12:19, 10F
→
10/19 12:20, , 11F
10/19 12:20, 11F
→
10/19 12:20, , 12F
10/19 12:20, 12F
→
10/19 12:21, , 13F
10/19 12:21, 13F
→
10/19 12:22, , 14F
10/19 12:22, 14F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章