- 'phased.SteeringVector': https://www.mathworks.com/help/phased/ref/phased.steeringvector-system-object.html
- 'pattern' function: https://www.mathworks.com/help/phased/ref/phased.ula.pattern.html
How do I steer a custom volumetric array with shading weights included?
3 views (last 30 days)
Show older comments
I have a code I wrote that creates beampatterns using the phased array toolbox with different types of array shading. I have a custom array defined by phased.ConformalArray where I defined an array taper. When using pattern function, I can pass in the shading weights OR the steering vector defined in AZ, DE. I need to be able to do both.
Ultimately i'm interested in 1) centering shading weights as an acoustic aperture (such as cross hamming or cross taylor) around an azimuth and DE angle or 2) steering with a static array shading for the array. I don't see a way to do this currently with the existing functions. Am I missing something? Seems like you should be able to do both functions of steering with array shading. Please advise, thank you!
0 Comments
Answers (1)
Balavignesh
on 29 Sep 2023
Hi Brandon,
As per my understanding, you would like to achieve 'centering shading weights' around a specific azimuthal angle('AZ') and elevation angle('DE'), and steer the phased array with static array shading.
I would suggest you to use the 'phased.steeringVector' object to create a steering vector for the desired direction. You could achieve the desired aperture by multiplying the 'shading weights' with the 'steering vector' created.
Here is an example showing how you can do it:
% Define the azimuth and elevation angles
az = 45;
de = 30;
% This is an example array. Input your own array
yourArray = phased.ULA('NumElements',4);
fc = 300e6;
% Create a phased.SteeringVector object
sv = phased.SteeringVector('SensorArray', yourArray);
% Compute the steering vector for the desired direction
steeringVec = sv( fc, [az; de]);
shadingWeights = [0.5 0.7 0.9 1.0]';
% Multiply the steering vector with the shading weights
weightedSteeringVec = steeringVec.*shadingWeights;
% Use the weighted steering vector in the pattern function to get the
% desired output.
pattern(yourArray, fc, 'Weights', weightedSteeringVec);
Please refer to the following documentation links to know more about:
0 Comments
See Also
Categories
Find more on Array Geometries and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!