フィルターのクリア

How to obtain statespace having two inputs from transfer function in matlab mfile

2 ビュー (過去 30 日間)
I am having a transfer function having two zeros and four poles.
G(s)= (as^2+bs+c)/(s^4+ds^3+es^2 )
I need to convert TF to statespace such that it has two inputs i.e. matrix B has two columns.I know the commands tf2ss but it gives me statespace with one input.

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2012 年 12 月 5 日
Use tf2ss to find A,B,C,D , change B to add any inputs you want, then rebuilt a newmodel with ss function
a=1;b=2;c=1;
d=1;e=1;
N=[a b c];
D=[1 d e 0 0];
[A,B,C,D]=tf2ss(N,D)
B=[B [1;0;0;0]]
new_model=ss(A,B,C,D)

その他の回答 (1 件)

Teja Muppirala
Teja Muppirala 2012 年 12 月 5 日
How about:
s = tf('s');
G= (s^2+s+1)/(s^4+s^3+s^2 );
Gss = ss([G G]);
Although I don't quite see the point in having two inputs to the same system (you could just add them together and get the same response).

カテゴリ

Help Center および File ExchangePower and Energy Systems についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by