MATLAB Answers

Substitute s for jw in a transfer function

181 views (last 30 days)
Inés Bodoque
Inés Bodoque on 11 Jan 2021
Commented: Inés Bodoque on 11 Jan 2021
Hi, I have a transfer function define by
G = ([1 2],[3 4 5]) (as an example)
I want to change the 's' for 'jw'. Does anyone know how to do it?
I've tried subs(G,{s},{1j*omega}) but it didn't work.

Accepted Answer

Jon
Jon on 11 Jan 2021
Hi,
I think you mean that you define your transfer function using (you forgot the tf() in your example)
G = tf([1 2],[3 4 5]) %(as an example))
Then if you want to evaluate it at a particular frequency, that is a specific value of jw, you can use
w = 3; % for example 3 radians/sec
val = evalfr(G,j*w)
You can also use the freqresp function to evaluate it for multiple values along the jw axis
  2 Comments

Sign in to comment.

More Answers (1)

Pat Gipper
Pat Gipper on 11 Jan 2021
Matlab uses the reserved constant "i" which is set equal to sqrt(-1). Using your transfer function as defined try the following which will result in the variable "G" which will be a complex number.
num=1*i*w+2;den=3*(i*w)^2+4*i*w+5;G=num/den;
  2 Comments
Inés Bodoque
Inés Bodoque on 11 Jan 2021
Thank you for your answer! I need this for a project from one of my subjects and I am not allowed to use the Control Systems Toolbox, that's why I have to do it this way

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!