⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dfb.m

📁 阵列信号处理的工具箱
💻 M
字号:
function [sigOut,vd] = dfb(sig,prf)%  function [sigOut,vd] = dfb(sig,prf)%%  Doppler filter bank. This function takes the absolute value of the result.%  Use the function dfb2 if this is not wanted.%%  sigOut   RxRadarSigT%  vd    ?     ?%  sig      RxRadarSigT%  prf      RealScalarT : PRF (Pulse Repetition Frequency)%%Known Bugs:%  dfb does not save information about the performed filtering, which%  is necessary to make high resolution doppler estimation.%  The frequencies of the doppler channels are not saved in the output signal.%  This function takes the absolute value of the result.%  Use the function dfb2 if this is not wanted.%%See Also:%  dfb2%   *  DBT, A Matlab Toolbox for Radar Signal Processing  *%  (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%%  Start        : 961120 Fredrik Athley (freath).%  Latest change: $Date: 2000/10/16 15:20:36 $ $Author: svabj $.%  $Revision: 1.15 $% *****************************************************************************disp('Warning: The function dfb is obsolete. Use dfb2 instead.')ant = sig.antenna;%lambda = ant.lambda;waveform = sig.waveform;lambda  = waveform.wavelength;K = ant.noElem;XX =  sig.signals;s = sizem(XX);noPulses = s(1);noRangeBins = s(2);noBeams = s(3);noCPIs = s(5);N = noPulses;if N>1  if N~=2^round(log(N)/log(2))    error('DBT-Error: Number of pulses must be a power of 2')  end  YY = zerosm(s);  for range=1:noRangeBins    for cpi=1:noCPIs      X = getm(XX,':',range,':',1,cpi);      X = reshape(X,noBeams,noPulses);      Y = abs(fft(X.'))';      Y = [Y(:,N/2+2:N) Y(:,1:N/2+1)];      YY = setm(YY,Y.',':',range,':',1,cpi);    end  end  N = s(2);  fd = linspace(0,(N - 1)/N*prf,N);  fd = (-(N/2-1):N/2)*prf/N;  vd = lambda/2*fd;else  YY = XX;end%sigOut.dataType = 'RxRadarSigT';%sigOut.antenna = ant;sigOut = sig;sigOut.signals = YY;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -