How do I get a outer loop in a polar plot in MATLAB
Afficher commentaires plus anciens
To display the multiple microphone directive pattern, I wrote a simple MATLAB program.
% Super-cardiod = 0.57
% Hyper-Cardiod = 0.33
A_sen = 20.0; % sensitivity
c = 343; % speed of sound 343 m/s
Beta_1 = 0.33; % beta value for the shape of the directivity pattern
Beta_2 = 0.57; % beta value for the shape of the directivity pattern
d = 0.09; % distance between two microphones
Ang_freq = 90; % Angular frequency of sound
theta = linspace(-2*pi,2*pi); % Angular ref to microphone
U_total_1 = (A_sen *(Ang_freq*d)/c)*(Beta_1+cos(theta));
U_total_2 = (A_sen *(Ang_freq*d)/c)*(Beta_2+cos(theta));
subplot(2,1,1),polar(theta,U_total_1)
subplot(2,1,2),polar(theta,U_total_2)
The MATLAB program works to display the directivity pattern as below,

However, I'd like the inner loop to be an outer loop as shown in the link below.
I suppose this is due to the axes limits. But I'm not sure. How do I get the inner loop to show as an outer loop. Thank you..
Note: I am using R2014b. Therefore I don't have the polarplot function. So I will have to stick to the polar function in MATLAB.
4 commentaires
KSSV
le 6 Nov 2017
But there are no loops in your code..?
Big heads
le 6 Nov 2017
Walter Roberson
le 6 Nov 2017
You are trying to create a hypercardioid ?
Big heads
le 8 Nov 2017
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Get Started with Phased Array System Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!