📄 defaimtexant2.m
字号:
function [antenna, subArrWeights] = defaimtexant2(posErr, scanDoa, wavelength, subArrWeights)%DEFAIMTEXANT2 Definition of the receiving antenna in the AIMT application example.%%--------%Synopsis:% [antenna, subArrWeights] = defaimtexant2(posErr, scanDoa, wavelength, % subArrWeights)%%Description:% Definition of the receiving antenna in the AIMT application example [2].%%Output and Input:% posErr (Vector of PosT): Position errors [m] for the 51 elements.% Size = (1 X 51).% scanDoa [D](DoaT): Pointing direction of the subarrays. This is% accomplished by extra phase shifts to the subarray beamforming weights.% wavelength (RealVectorT): Wavelength of the carrier [m].% subArrWeights [D](CxVectorT):%%--------%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.% [2]: Athley F.:"Till鋗pningsexempel f鰎 studie av modellbaserad% lobformning", Ericsson Microwave Systems 1996, No FY/XU-96:299.In Swedish.%%See Also:% * DBT, A Matlab Toolbox for Radar Signal Processing *% (c) FOA 1994-2000. See the file dbtright.m for copyright notice.%% Start : 98xxxx Svante Bj鰎klund (svabj).% Latest change: $Date: 2000/10/16 15:39:18 $ $Author: svabj $.% $Revision: 1.5 $% *****************************************************************************% ****************** Add missing input parameters ******************arginNo=1;if (nargin < arginNo) posErr = [];endarginNo = arginNo +1;if (nargin < arginNo) scanDoa = [];endarginNo = arginNo +1;if (nargin < arginNo) wavelength = [];endarginNo = arginNo +1;if (nargin < arginNo) subArrWeights = [];endarginNo = arginNo +1;% ****************** Default values ******************if isempty(posErr) posErr = zeros(1,51);end%ifif isempty(scanDoa) scanDoa = [0;0];end%ifif isempty(wavelength) wavelength = 0.09993081933333; % Frequency 3 GHz (reference [2]).end%ifif isempty(subArrWeights) subArrWeights = [0.5 1 0.5].';end%if% ****************** ******************scanDoa1 = zeros(2,size(scanDoa,2)); scanDoa1(1:size(scanDoa,1),:) = scanDoa;scanDoa = scanDoa1; % If phi is missing, extend "scanDoa" with a zero row.old = 0;subArrElemPosIdeal = [[0:0.5:1]*0.1; zeros(2,3)];if (old) %[idealAnt, subArray] = defaimtexant2hlp(zeros(1,51), subArrWeights); [idealAnt] = defaimtexant2hlp(zeros(1,51), subArrWeights); %subArrWeights = gettap1(subArray,'user',subArrWeights,scanDoa,wavelength); % Add phase shifts to the weights due to scanning the main beam of the % subarrays in a desired direction. Use these weights in the antenna % "errAnt" with positioning errors. %size(subArrElemPosIdeal) %subArrElemPosIdeal %size(doa2wavevec(scanDoa,wavelength)) %doa2wavevec(scanDoa,wavelength)end%ifscanPhases = 1 * subArrElemPosIdeal.' * doa2wavevec(scanDoa, wavelength);thSign = 1;subArrWeights = subArrWeights .* exp(-j*thSign*scanPhases);%abs(subArrWeights)%r2d(angle(subArrWeights))if (old) errAnt = defaimtexant2hlp(1e-4*rand(1,51), subArrWeights);else antenna = defaimtexant2hlp(posErr, subArrWeights);end%if
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -