why many peaks are show when only one sample was used

1 view (last 30 days)
호연 장
호연 장 on 23 Aug 2021
Edited: KSSV on 23 Aug 2021
Dear everyone,
I've tested MVDR with phased toolbox, when M = 4 (4- ULA antennas spacing between lamda/2) and only one incidentAngles was given.
when just one sample was used (means k = 1), sometimes capton's power works well, but sometimes it has many peaks.
my question is why many peaks are show when only one sample was used.
tested code is below:
clear
% set parameters
incidentAngles = [0];
M = 4;
K = 1;
N = size(incidentAngles, 1);
SNR = 0.001% 1 : 0dB, 0.1 : 20dB, 0.01 : 40dB
SNRdB = -20*log10(SNR)
t = randn(K,N);
s = cos(t) + 1i*sin(t)
lambda = 0.005;
array = phased.ULA('NumElements',M,'ElementSpacing',lambda/2);
array.Element.FrequencyRange = [60e9 64e9];
fc = 60e9;
as = collectPlaneWave(array, s, incidentAngles', fc)
random_radian = 2*pi*rand(size(as));
noise = SNR*(cos(random_radian) + 1i*sin(random_radian))
x = as + noise
scanAngles = -90:1:90;
mvdr = phased.MVDREstimator('SensorArray',array,...
'OperatingFrequency',fc,'DOAOutputPort',true,...
'ScanAngles', scanAngles,...
'NumSignals',N);
[mvdrPower,mvdrDoas] = mvdr(x);
mvdrPowerNorm = mvdrPower/ max(mvdrPower);
mvdrPowerNormdB = 10*log10(mvdrPowerNorm);
mvdrDoas = sort(rmmissing(mvdrDoas))
clareset;
plot(scanAngles, mvdrPowerNormdB);

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!