# Substitute s for jw in a transfer function

218 views (last 30 days)
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.

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 CommentsShowHide 1 older comment
Inés Bodoque on 11 Jan 2021
It worked! Thank you very much

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 CommentsShowHide 1 older comment
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