📄 smlfun.m
字号:
function [output, Rss, sigma2] = smlfun(theta,Rhat,antenna,lambda)%SMLFUN Calculates the optimization criterion , source correlation matrix and noise power for SML.%%--------%Synopsis:% [output, Rss, sigma2] = smlfun(theta,Rhat,antenna,lambda)%%Description:% Calculates the optimization criterion , source correlation matrix% and noise power for Stochastic Maximum Likelihood (SML). See reference% [2] p. 109-111 for details.%%Output and Input:% output (): The criterion to minimize.% Rss (RxMatrixT): Estimated source signal correlation matrix.% sigma2 (RealScalarT): Estimated noise power.%% theta (DoaT): DOA of source signals.% Rhat (CxMatrixT): Estimated antenna signal correlation matrix.% antenna (): Antenna definition.% lambda (): Wavelength [m].%%--------%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:%%Software Quality:% (About what is done to ascertain software quality. What tests are done.)% The methods 'dml', 'sml', 'wsf', 'ssf', 'rmusic' and 'esprit' were used% in the work done by A. Heydarkhan [8].% The method 'ptmf' was used in the work done by M. Borgstr鰉 and% S. Bj鰎klund [9].%%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.% [2]: Haykin S., Litva J., Shepherd T.J.(Eds.):"Radar Array Processing",% Springer Verlag 1993, ISBN 3-540-55224-3, 0-387-55224-3.%%See Also:% doapar1% * DBT, A Matlab Toolbox for Radar Signal Processing *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.% Start : 970729 Amir Heydarkhan (amihey).% Latest change: $Date: 2000/10/16 15:21:57 $ $Author: svabj $.% $Revision: 1.10 $% *****************************************************************************m = size(Rhat,1);d = length(theta);%lambda = antenna.lambda;A = spastemat(antenna, theta', lambda);Ac = inv(A'*A)*A';p = eye(m)-A*Ac;sigma2 = 1/(m-d)*trace(p*Rhat);Psml = Ac*(Rhat-sigma2*eye(m))*Ac';output = log10(det(A*Psml*A'+sigma2*eye(m)));output = real(output);if (nargout > 1) Rss = Psml; sigma2 = sigma2;end%if
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -