MATLAB Answers

changing continuous transfer function

1 view (last 30 days)
Mohammad mahdavyfakhr
Mohammad mahdavyfakhr on 2 Feb 2020
Hi Every one,
I have a continuous trnsfer function and I want autimatically shift all s values by a value as w.
For example if I have the following transfer function
s=tf('s')
H=1/(0.002*s+10);
I want to obtain H(s+w) as H(s+w)=1/(0.002*(s+w)+10)
For this transfer function I can easily subtitute s with s+w but if the transfer function is long with multiple coefficents it is not an effective way. So Im wondering if there is a way so that I can autoimatically shift all s values?
Thanks

  0 Comments

Sign in to comment.

Answers (2)

Mohammad Sami
Mohammad Sami on 2 Feb 2020
You should just define your transfer function as a function. You can then just pass in the values you want to evaluate on.
H = @(s)1/(0.002*s+10);
s = 10;
w = 2;
Hsw = H(s+w);

  0 Comments

Sign in to comment.


Mohammad mahdavyfakhr
Mohammad mahdavyfakhr on 3 Feb 2020
Yes, thank you, this works when I first define a transfer function, but in case the transfer function is obtained from other code like:
H=@(s) tf([1],[1 1]);
w = 2;
we cannot have H(s+w) right.

  0 Comments

Sign in to comment.

Sign in to answer this question.