📄 beamform.m
字号:
function [sigOut, beamPosOut] = beamform(sigIn, beamPos, subArrPoint, taperType, taperParam, interCorrMat)%BEAMFORM Conventional beamforming.%%--------%Synopsis:% [sigOut, beamPosOut] = beamform(sigIn, beamPos, subArrPoint, taperType, % taperParam, interCorrMat)%%Description:% Conventional beamforming with or without tapering and with or without% side lobe cancellation.%%Output and Input:% sigOut (RxRadarSigT): Output radar signal.% beamPosOut (Vector of DoaT): The directions of the created main beams.%% sigIn (RxRadarSigT): Input radar signal.% beamPos [D](Vector of DoaT): Directions of one or several main beams.% subArrPoint [D](DoaT): Subarray pointing direction. (Default = 0).% taperType [D], taperParam [D]: Defines the tapering to use. See the function% "gettap1" for more information.% interCorrMat [D](CxMatrixT): Interference antenna signal correlation matrix. % This is used to adaptively suppress the interference. (Default = identity % matrix)%%--------%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.)% This function is not tested yet.%%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:% spafilt% * DBT, A Matlab Toolbox for Radar Signal Processing *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%% Start : 980913 Svante Bj鰎klund (svabj).% Latest change: $Date: 2000/10/16 15:20:00 $ $Author: svabj $.% $Revision: 1.7 $% *****************************************************************************% ----------------------------------------------------------------------- %% Handle input parameters% ----------------------------------------------------------------------- %if (nargin < 1) error('DBT-Error: To few input parameters.')end% ****************** Add missing input parameters ******************arginNo=2;if (nargin < arginNo) beamPos = [];endarginNo = arginNo +1;if (nargin < arginNo) subArrPoint = [];endarginNo = arginNo +1;if (nargin < arginNo) taperType = [];endarginNo = arginNo +1;if (nargin < arginNo) taperParam = [];endarginNo = arginNo +1;if (nargin < arginNo) interCorrMat = [];endarginNo = arginNo +1;% ****************** Default values ******************if isempty(beamPos) beamPos = [];end%ifif isempty(subArrPoint) subArrPoint = [];end%ifif isempty(taperType) taperType = [];end%ifif isempty(taperParam) taperParam = [];end%ifif isempty(interCorrMat) interCorrMat = [];end%if% ************* Pick out some more fields from input parameters. *************% ****************** Error check input parameters ******************chkdtype(sigIn, 'RxRadarSigT')chkdtype(beamPos, 'Vector of DoaT','EmptyT')chkdtype(subArrPoint, 'Vector of DoaT','EmptyT')chkdtype(taperType, 'StringT','EmptyT')chkdtype(interCorrMat, 'CxMatrixT', 'EmptyT')% ----------------------------------------------------------------------- %% Beamform.% ----------------------------------------------------------------------- %[sigOut, basisMat, beamPosOut] = spafilt(sigIn, 'acbf', {sigIn.antenna, ... sigIn.waveform}, {subArrPoint []}, beamPos, ... gettap1(sigIn.antenna,taperType,taperParam),interCorrMat);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -