How can I get a bode magnitude to be a certain size vector?

7 次查看(过去 30 天)
I've generated a transfer function, from which I need the magnitude as a vector to perform some integration on. The magnitude needs to be multiplied by a PSD (power spectral density) and then integrated using trapz(). The issue is that the PSD and magnitude vectors are different lengths, so trapz doesnt work. Is there a way I can specify the size of the magnitude vector so that is its a 1x10000 column vector? Below is my transfer function and how I have extracted the magnitude vector.
tf =
0.0001121 s^3 - 0.000292 s^2 - 0.0002738 s - 1.711e-05
------------------------------------------------------
s^4 + 5.701 s^3 + 20.31 s^2 + 0.6124 s + 0.3877
% Continuous-time transfer function.
[mag phase] = bode(tf)
MAG = sqeeze(mag)

采纳的回答

Star Strider
Star Strider 2022-9-24
The bode function allows you to specify a vector of frequencies in radians/time_unit.. See the documentation section on Bode Plot at Specified Frequencies and w for details. That way, you can control the size of the output.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by