ss2tf and tf2ss function
Mostrar comentarios más antiguos
Dear sir, I use ss2tf function in matlab. Its output values input to tf2ss function. But the result is not equal to the original input. (A1,B1,C1,D1) IS NOT EQUAL TO (A,B,C,D.)
What wrong is it?
clear;
A=[0 1 0;0 0 1;-9 -8 -7];
B=[7;8;9];
C=[2 3 4];
D=[0];
[num, den]=ss2tf(A,B,C,D,1);
[a1,b1,c1,d1]=tf2ss(num,den);
a1 =
-7.0000 -8.0000 -9.0000
1.0000 0 0
0 1.0000 0
b1 =
1
0
0
c1 =
74.0000 -199.0000 -235.0000
d1 =
0
Respuestas (2)
Fangjun Jiang
el 14 de Jun. de 2011
1 voto
The tf2ss() returns A,B,C,D matrices in controller (or controllable) canonical form. There is also observable canonical form. Bottom line, the A, B, C, D returned by tf2ss() may not match your original state space matrix. See state space controls
1 comentario
peng huan
el 25 de Mayo de 2023
thank you very much!
mohammad asasi
el 23 de Nov. de 2012
1 voto
Hi dear david
keep in mind that representation of a system in frequency domain is unique
but we can convert it to state space form in many many ways...
so representation in state space form is not uniqe...
best regards
Categorías
Más información sobre Dynamic System Models en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!