📄 rxcorrmatt.m
字号:
function corrMatOut = RxCorrMatT(corrMatData, noSamples, rxRadarSig)%RXCORRMATT Constructor for spatial correlation matrices.%%--------%Synopsis:% corrMatOut = RxCorrMatT% corrMatOut = RxCorrMatT(corrMatData, noSamples, rxRadarSig)%%Description:% Constructor for spatial correlation matrices, i.e. the data type % "RxCorrMatT". More information on this data type and the input parameters% of this function can be found in [1].%%Output and Input:% corrMatOut (RxCorrMatT): The output spatial correlation matrix.%% corrMatData (CxMultiMatrixT): % noSamples% rxRadarSig%%--------%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.)%%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, basecorrm, RxRadarSigT% * DBT, A Matlab Toolbox for Radar Signal Processing *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%% Start : 981113 Svante Bj鰎klund (svabj).% Latest change: $Date: 2000/10/16 15:19:56 $ $Author: svabj $.% $Revision: 1.4 $% *****************************************************************************%% corrMatOut = RxCorrMatT(corrMatData, {antenna, waveform}, {propSpeed},% pulIx, ranIx, spaIx, [], [], [], pulTrans, ranTrans, spaTrans,% freqPos, rangePos, doaPos)% The structure of this function is prepared for using MATLAB's classes.if (nargin == 0) corrMatOut = basedef;elseif isa(corrMatData,'RxCorrMatT') corrMatOut = corrMatData;else if (nargin < 1) error('DBT-Error: To few input parameters.') end % ****************** Add missing input parameters ****************** arginNo=2; if (nargin < arginNo) noSamples = []; end arginNo = arginNo +1; if (nargin < arginNo) rxRadarSig = []; end arginNo = arginNo +1; % ****************** Default values ****************** if isempty(noSamples) noSamples = 1; % What should the default value be? end%if if isempty(rxRadarSig) rxRadarSig = []; % What should the default value be? end%if % ************* Pick out some more fields from input parameters. ************* % ****************** Error check input parameters ****************** chkdtype(corrMatData, 'CxMatrixT') chkdtype(noSamples, 'IntScalarT') chkdtype(rxRadarSig, 'RxCompSigT', 'RxRadarSigT') % ************* Base definition. ************* corrMatOut = basedef(rxRadarSig); % ************* Assign values. ************* corrMatOut.corrMat = corrMatData; corrMatOut.noSamples = noSamples;end%if%endfunction RxCorrMatTfunction corrMatOut = basedef(rxRadarSig) corrMatOut.antenna = []; corrMatOut.waveform = []; % According to the reference guide release 2.6, the fields "antenna" % and "waveform" are mandatory. if (~isempty(rxRadarSig)) corrMatOut = rxRadarSig; %corrMatOut = rmfield(corrMatOut,'signals'); % All fields except "signals" is to be copied. % Removing a field with "rmfield" is extremely slowly. corrMatOut.signals = []; % Keeping the field "signals" but makes it as small as possible. end%if corrMatOut.dataType = 'RxCorrMatT'; corrMatOut.version = 4; corrMatOut.corrMat = []; corrMatOut.noSamples = 1; %parent = SigCorrMatT(...) %corrMatOut = class(corrMatOut,'RxCorrMatT',parent); % Inheritance from class "SigCorrMatT".%endfunction basedef% Not used comments: %If the input parameter "rxRadarSig" % is not given, then these field will be non-existent. This is % probably no problem since up till now the only way to create a % RxCorrMatT variable has been from a RxRadarSigT varaible.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -