?? ovrlpsav.m
字號:
function [y] = ovrlpsav(x,h,N)
% 用混疊相加法作塊卷積
% ----------------------------------------
% [y] = ovrlpsav(x,h,N)
% y = 輸出序列
% x = 輸入序列
% h = 脈沖響應
% N = 塊長
%
Lenx = length(x); M = length(h);
M1 = M-1; L = N-M1;
h = [h zeros(1,N-M)];
%
x = [zeros(1,M1), x, zeros(1,N-1)]; % 預置 (M-1) 個零
K = floor((Lenx+M1-1)/(L)); %塊數
Y = zeros(K+1,N);
% 與后續各塊卷積
for k=0:K
xk = x(k*L+1:k*L+N);
Y(k+1,:) = circonvt(xk,h,N);
end
Y = Y(:,M:N)'; % 去掉前(M-1) 個樣本
y = (Y(:))'; % 裝成輸出
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -