📄 mdl.m
字号:
function b = mdl(Rx,plotopt)% *****************************************************************************% * DBT, A Matlab Toolbox for Radar Signal Processing *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%% function b = mdl(Rx)%% Estimates the number of signals using Minimum Description Length (MDL).%% b (IntScalarT): Estimated number of signals.% Rx (RxCorrMatT): Correlation matrix data.% plotopt (StringT): Plot option:.% = 'plot': Plots a bar plot of the MDL function.%% Start : 961120 Fredrik Athley (freath).% Latest change: $Date: 2000/10/16 15:21:08 $ $Author: svabj $.% $Revision: 1.10 $% *****************************************************************************if nargin<2 plotopt = 'noplot';endchkdtype(Rx, 'RxCorrMatT');R = Rx.corrMat;N = Rx.noSamples;[u,s,v] = svd(R);K = size(R,1);egv = diag(s);a = zeros(1,K);for m=0:K-1 negv = egv(m+1:K); Tsph = mean(negv)/((prod(negv))^(1/(K-m))); a(m+1) = N*(K-m)*log(Tsph) + m*(2*K-m)*log(N)/2;end[y,b] = min(a);b = b - 1;if strcmp(plotopt,'plot') bar(0:K-1,10*log10(a)) title('MDL function');xmin(-1);grid on; xlabel('number of signals');ylabel('[dB]')end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -