I have a power density plot with the below matlab code. I want to find the 3dB bandwidth of it. Can someone help me to solve this matter

2 次查看(过去 30 天)
%%PARAMETERS
D = 1*10^6;
vi = 10^6;
r = 10^4;
%%RANGE
w = linspace(0.9*10^6,1.1*10^6,211);
%%EQUATION
b = 0.7;
syms m n;
Y1 = (((D/(4.*b))^m)*((2*m.*b)+(r/2)))./(factorial(m)*(((2*m.*b)+(r/2))^2+(w-vi).^2));
Y = symsum(Y1, m, 0, 10);
%%PLOT
plot(w-vi,Y,'blue');
xlabel('Frequency Detuning (Hz)');
ylabel ('Relative Power Density');

回答(1 个)

Sai Charan Sampara
Sai Charan Sampara 2022-6-28
编辑:Sai Charan Sampara 2022-6-28
Convert the power density into logarithm scale. Use the max function to find the maximum power density in dB. The value of (maximum-3) dB is cut off power density value. Then use the logical equation index=frequency==maximum-3 to get the indices of the frequency values. There should be two values of frequency for which this holds true. Both the upper and lower cut off frequencies can be accessed by frequency(index). Their difference gives 3dB bandwidth in Hertz.

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by