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

📄 basecorrm.m

📁 阵列信号处理的工具箱
💻 M
字号:
function Rout  = basecorrm(snapshots, rxRadarSig)%BASECORRM Gives a base estimates of the antenna signal correlation matrix.%%--------%Synopsis:%  Rout  = basecorrm(snapshots, rxRadarSig)%%Description:%  Gives a base estimates of the antenna signal correlation matrix.%  The estimate can be used as input to spectral (e.g MUSIC) and parametric%  DOA estimation methods (e.g WSF). basecorrm allows you to choose whatever%  snapshots you want, e.g. special pulse or range bins, to use for the%  estimate. basecorrm i suitable both when taking snapshots from the same%  signal (e.g. from different range bins, pulses) and from more than one%  signal. A "snapshot" is a column vector with antenna channel signals.%  You have to collect all snapshots to a comnplex matrix (CxMatrixT)%  yourself. See the examples below.%%  The estimate is a maximum likelihood (ML) estimate%%Output and Input:%  Rout (RxCorrMatT): The estimated antenna signal correlation matrix.%  snapshots (CxMatrixT): Snapshots of the antenna signal. This means%    that different rows are signals from different antenna channels%    and different columns come from different pulses, ranges, trials etc.%  rxRadarSig (RxRadarSigT): An antenna signal, from which parameters%    are extracted that are stored in Rout (needed by some processing%    functions).%%--------%Notations:%  Data type names are shown in parentheses and they start with a capital%  letter and end with a capital T. Data type definitions can be found in [1]%  or by "help dbtdata".%  [D] = This parameter can be omitted and then a default value is used.%  When the [D]-input parameter is not the last used in the call, it must be%  given the value [], i.e. an empty matrix.%  ... = There can be more parameters. They are explained under respective%  metod or choice.%%Examples:%  Example 1:%    ant = defant('isotropULA',[12, 0.45*lambda]);%    sig = compsim5(ant, lambda, noPulses, noRangeBins, 'const', ...%      [theta, phi, SNR, alpha, dalpha,dist], 'nonoise');%    sigsize(sig);%    figure,sigplot2(sig,1,':',':'),title('Before beamforming')%    snapshots = [getm3(sig.signals,3,[],':',1,':'), ...%      getm3(sig.signals,3,[],':',2,':')];%    R = basecorrm(snapshots,sig);%    s = sdoaspc('music',R)%    figure,splot2(s)%%  Example 2:%    ant = defant('expAnt');%      % Define the antenna.%    setcal1('wctab','m1065.dbc')%      % Set calibration compensation to use with sdoaspc, sdoapar1 etc.%    sig = expsig1(ant,'m1065..dbs');%    sig = sigsubix(sig,1:127,':',':');%      % Read the received antenna signals.%    sigsize(sig);%    figure,sigplot2(sig,1,':',':'),title('Before beamforming')%    snapshots = [...%      getm3(sig.signals,3,[],':',15,':'), ...%      getm3(sig.signals,3,[],':',16,':'), ...%      getm3(sig.signals,3,[],':',17,':'), ...%      getm3(sig.signals,3,[],':',18,':')%      ];%      % Get snapshots from range bins 15,16,17,18 from all pulses.%    R = basecorrm(snapshots,sig);%    s = sdoaspc('music',R)%    figure,splot2(s)%      % Plot a Music spectrum.%%Algoritm:%%Software Quality:%  (About what is done to ascertain software quality. What tests are done.%   Known bugs.)%%Known Bugs:%%%References:%  [1]: Bj鰎klund S.: "DBT, A MATLAB Toolbox for Radar Signal Processing.%    Reference Guide", FOA-D--9x-00xxx-408--SE, To be published.%%See Also:%  ecorrm%   *  DBT, A Matlab Toolbox for Radar Signal Processing  *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%% Start        : 980602 Svante Bj鰎klund (svabj).% Latest change: $Date: 2000/10/16 15:19:59 $ $Author: svabj $.% $Revision: 1.8 $% *****************************************************************************RxCorrMatTVersion = 3;% ----------------------------------------------------------------------- %% Handle input parameters% ----------------------------------------------------------------------- %if (nargin < 2)  error('DBT-Error: To few input parameters.')end% ****************** Add missing input parameters ******************% ****************** Default values ******************% ****************** Error check input parameters ******************chkdtype(snapshots, 'CxMatrixT')chkdtype(rxRadarSig, 'RxRadarSigT')% ----------------------------------------------------------------------- %% Get a base estimate of the correlation matrix% ----------------------------------------------------------------------- %  % ****************** Maximum Likelihood estimate ******************  L = size(snapshots,2);  Rxx = 1/L * snapshots*snapshots';  % ****************** Create an output variable. ******************  old = 0;  if (old)    Rout = rxRadarSig;    Rout = rmfield(Rout,'signals');    Rout.dataType = 'RxCorrMatT';    Rout.version = RxCorrMatTVersion;    Rout.corrMat = Rxx;    Rout.noSamples = L;  else    Rout = RxCorrMatT(Rxx, L, rxRadarSig);  end%if

⌨️ 快捷键说明

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