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

3 Ansichten (letzte 30 Tage)
jrz
jrz am 24 Sep. 2022
Kommentiert: Star Strider am 25 Sep. 2022
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)

Akzeptierte Antwort

Star Strider
Star Strider am 24 Sep. 2022
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.

Weitere Antworten (0)

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by