Oh I think I will try to use "num" and "den" for every element of K(s) calculated with tf(K), and then I will just take these coefficients and multiply them by a "s+delta" rather than an s. I will repost if this works, although I am still hoping for a nicer solution.
Given an LTI system with corresponding transfer matrix K(s), is there an easy way to specify K(w) where w=s+delta?
4 views (last 30 days)
Show older comments
I wanted to use the method in this paper here:
and to do so I need to shift the complex "s" argument for the transfer matrix K(s) by some constant real delta, such that for w=s+delta I need to be able to specify K(w).
Is there an easy way to do this? I currently have K(s) as a state space system.
2 Comments
Accepted Answer
More Answers (1)
Paul
on 25 Jan 2024
Hi Vinh,
I think the substitution backward.
It should go like this:
K(s) = C * inv(s*I - A) * B + D
w = s + delta -> s = w - delta
K(w) = C * inv((w - delta)*I - A) * B + D
K(w) = C * inv(wI - delta*I - A) * B + D
K(w) = C * inv(wI - (delta*I + A)) * B + D
therefore A_tilde = A + delta*I
Check
s_sys = rss(3,3,3);
delta = 3.1;
A_tilde = s_sys.A + delta*eye(3);
w_sys = s_sys;
w_sys.A = A_tilde;
s0 = -5 + 1j*4;
w0 = s0 + delta;
evalfr(s_sys,s0) - evalfr(w_sys,w0)
0 Comments
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!