Steering vector calculation used in MVDR beamformer

34 views (last 30 days)
i am trying to reciprocate weight calculation in MVDR beamformer. As noticed a steering vector calculation performed as part of this caculation.
My condition to calculate steering vector is URA size [8 8]and spacing [0.075 0.055] in meters. The incident angle of the signal is 12 degrees in azimuth and 6.5 degree in elevation. The carrier frequency is 360 MHz and propagation speed 3x10^8Hz.
this is the steering vector equation i used for calculation,
steering vector for a sensor array with N elements can be calculated as:
v(theta, phi) = [e^(jkr1sin(theta)cos(phi)), e^(jkr2sin(theta)cos(phi)), ..., e^(jkrN*sin(theta)*cos(phi))],
where:
  • theta is the elevation angle of arrival,
  • phi is the azimuth angle of arrival,
  • k is the wavenumber (2*pi/lambda, where lambda is the wavelength),
  • r1, r2, ..., rN are the distances from the elements of the array to the source.
i noticed a mismatch in both output. please enlight me if i am wrong.

Answers (1)

akshatsood
akshatsood on 5 Sep 2023
Edited: akshatsood on 5 Sep 2023
Hi Anu,
I understand that you are experiencing a mismatch in outputs during steering vector calculation. As per my knowledge, steering vector can be computed using phased.SteeringVector function from the Phased Array System Toolbox. After reviewing the provided data and requirements, I have boiled down to below code snippet to calculate steering vector.
size = [8 8]; % array size
spacing = [0.075 0.055]; % element spacing
carrierFreq = 3.6*1e8;
speed = 3*1e8;
% azimuth and elevation angles
angle = [12; 6.5];
% creating a URA system object
arr = phased.URA('Size', size, 'ElementSpacing', spacing);
% SteeringVector system object
steervec = phased.SteeringVector('SensorArray', arr);
% determining steering vector
sv = steervec(carrierFreq, angle);
Have a look at below references for better understanding
I hope this helps.

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!