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 次查看(过去 30 天)
显示 更早的评论
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.
采纳的回答
更多回答(1 个)
Paul
2024-1-25
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 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!