0
$\begingroup$

I am working with FMCW phased array radar with only upchirps. The range doppler matrix is obtained using the two dimensional fast Fourier transform on multiple chirps. I want to obtain the angular spectrum per range velocity cell, so have taken range doppler bin for every antenna element and now I have a sample vector rdSnapShot (1 X Nant), where Nant is number of antenna elements present.

For this functionality I am using MATLAB's pmusic (MUSIC algorithm), my question is that as MATLAB's function pmusic requires correlation matrix, is it correct to just multiply the sample vector (1 X Nant) with its complex conjugate and obtain correlation matrix of (size Nant X Nant).

N.B. I have just one range doppler bin for each antenna element.

Providing the MATLAB code:

nTargets = 2;
Rxx_outerproduct = rdSnapShot*rdSnapShot';

[powerSpectrumMUSIC,idxFreq] =pmusic(Rxx_outerproduct ,nTargets,'corr');
% Adjusting the frequency for zero centered angle
idxFreq = idxFreq - max(idxFreq)./2;
% Shifting the response to obtain zero centeric response
powerSpectrumMUSIC=(powerSpectrumMUSIC);
% Converting the frequency scale to direction of arrival scale
idxAngle = asind(idxFreq/pi);
angResponseMUSIC = (db(powerSpectrumMUSIC));
$\endgroup$

1 Answer 1

0
$\begingroup$

Yes, it is proper/practical way to obtain correlation matrix. just multiply your sample with its conjugate to get auto-correlation and with conjugate of other antenna elements sample to get cross-correlation. arrange them in matrix to get correlation matrix($N$$X$$N$).
you can also look out for MVDR implementations in matlab which uses similar method for obtaining noise correlation matrix.

$\endgroup$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.