?? tf_window.m
字號:
function Psi= tf_window(N, MAX_M_LAG, MAX_L_LAG, wing, winh)% function Psi= tf_window(N, MAX_M_LAG, MAX_L_LAG, wing, winh)% This file is part of the TFPM toolbox v1.0 (c)% michael.jachan@tuwien.ac.at and underlies the GPL.% % Generates a Hanning/Hanning TF window function in the lag/lag% domain. The effective window lengths are 2*win?+1. If(~win?) no% windowing is performed in the according direction. if(~MAX_?_LAG)% the according matrix dimension is N! %CHANGE!!!!!!!!!!!!!!!!!!!!!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%clear;tfpm;N = 64;MAX_M_LAG= 5;MAX_L_LAG= 3;wing = 10;winh = 10;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(~MAX_M_LAG) Msquare= 1; MAX_M_LAG= N/2-1;else Msquare= 0;end;if(~MAX_L_LAG) Lsquare= 1; MAX_L_LAG= N/2-1;else Lsquare= 0;end;%% Preparing window functionswin_g= hanning(2*wing+1);win_h= hanning(2*winh+1).';%% Shortening/lengthening the window functionsif(length(win_g)>N-1) win_g= win_g((length(win_g)-N+1)/2:(length(win_g)-N+1)/2+N-1);else win_g= [zeros((N-length(win_g)-1)/2, 1); win_g; zeros((N-length(win_g)+1)/2, 1)];end;if(length(win_h)>2*MAX_M_LAG+1) win_h= win_h((length(win_h)-1)/2-MAX_M_LAG+1-Msquare:(length(win_h)-1)/2+MAX_M_LAG+1);else win_h= [zeros(1, Msquare+MAX_M_LAG-(length(win_h)-1)/2) win_h zeros(1, MAX_M_LAG-(length(win_h)-1)/2)];end;%% win_g into lag domainwin_g= [win_g(N/2+1:N);win_g(1:N/2)]/sum(win_g);Win_g= fft(win_g);Win_g= [Win_g(N/2+1:N); Win_g(1:N/2)];Win_g= Win_g(N/2+1-MAX_L_LAG-Lsquare:N/2+1+MAX_L_LAG);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%figure(97)subplot(3, 1, 1);plot(win_g);subplot(3, 1, 2);plot(abs(Win_g))subplot(3, 1, 3);plot(win_h);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Maybe no windowing...if(~wing) Win_g= ones(2*MAX_L_LAG+1+Lsquare, 1);end;if(~winh) win_h= ones(1, 2*MAX_M_LAG+1+Msquare);end;%% The TF window functionPsi= Win_g*win_h;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if(0)% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%figure(99)mesh(abs(Psi))Psi(MAX_L_LAG+1+Lsquare, MAX_M_LAG+1+Msquare)size(Psi)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%end;% TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -