Need help trying to plot power beam patterns in dB

Hello,
I am getting extremely confused trying to plot a power beam pattern in Matlab with a dB scale for the y-axis.
Basically, I have a function, G = 10log10(norm((Y(x)/M)^2) that needs to be plotted. The x-axis should be in values of theta, between -90 and 90 degrees, and the y-axis should be in dB scale. The Y(x) function, with is contained in the G function, is then evaluated at certain values of theta (-75, 0, 30, and 60), and the results are then plotted.
As shown above, I have already converted the values of the G function to dBs, however, when I try to manually change the y-axis scale and tics to shown dB scale, my plot is gibberish.
Any advice or tips would be very much appreciated. Thanks in advanced.

댓글 수: 2

‘when I try to manually change the y-axis scale and tics to shown dB scale, my plot is gibberish.’
Please post the relevant parts of your code.
Thanks for getting back to me Star, hope this helps:
M = 4
theta = [60 -75 0 30]
A = [1 1 1 1; exp(-i*pi*sin(theta)); exp(-i*2*pi*sin(theta)); exp(-i*3*pi*sin(theta))];
A_inv = inv(A);
e_1 = [ 1 0 0 0];
w_h = e_1 * A;
y_t = w_h * A;
y_t_1 = w_h * A(:,1);
y_t_2 = w_h * A(:,2);
y_t_3 = w_h * A(:,3);
y_t_4 = w_h * A(:,4);
Power_Beam_Pattern = [(norm(y_t_1))^2; (norm(y_t_2))^2; (norm(y_t_3))^2; (norm(y_t_4))^2];
G_theta = 10*log10(Power_Beam_Pattern_1/M^2);
semilogy(theta,10*log10(G_theta))

댓글을 달려면 로그인하십시오.

 채택된 답변

Star Strider
Star Strider 2018년 1월 21일

0 개 추천

My pleasure.
The reason your plot is not working out as you want it is that you are using semilogy to plot a signal you have already log-transformed into dB.
Just use plot, or perhaps polarplot.
Also, I noticed that ‘theta’ appears to be in degrees. Either convert it to radians by multiplying it by pi/180 or use the sind function instead of sin.

댓글 수: 2

Appreciate your help Star, I was able to get to the bottom of it.
Cheers.
As always, my pleasure.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 MATLAB에 대해 자세히 알아보기

태그

질문:

2018년 1월 21일

댓글:

2018년 1월 21일

Community Treasure Hunt

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

Start Hunting!

Translated by