简体   繁体   中英

MATLAB - Find Frequency of Transfer Function Corresponding to a Magnitude

Given a transfer function H(s) , I plot the bode(H) . Now I want to get the frequency at which the magnitude equals a specific number.

Is this possible?

here's how to do this using find with the handles bode function gives you. Let's start with the following example:

H = tf([1 0.1 7.5],[1 0.12 9 0 0]);
[mag,phase,wout]=bode(H);

then use find as follows:

thr = 1e-2;
ind = find(mag>0.47-thr & mag<0.47+thr)

and the frequency for that magnitude (0.47) will be:

wout(ind)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM