0

使用 DiffEquation 可以转换为 diff sys,但是如果转换回传递函数,它是怎么回事?

with(DynamicSystems):
sys2 := DiffEquation(sqrt(1-a^2)/(1-a/s));
PrintSystem(sys2);

de := [Diff(x1(t),t) = a*x1(t)+a*u1(t), y1(t) = sqrt(1-a^2)*x1(t)+sqrt(1-a^2)*u1(t)];
4

1 回答 1

0

我不确定我是否理解你的问题的措辞。这是你想要的吗?

with(DynamicSystems):

sys2 := DiffEquation(sqrt(1-a^2)/(1-a/s)):

sys2:-de;

        [                               
        [ d                             
        [--- x1(t) = a x1(t) + a u1(t), 
        [ dt                            

                          (1/2)                 (1/2)      ]
                  /     2\              /     2\           ]
          y1(t) = \1 - a /      x1(t) + \1 - a /      u1(t)]
                                                           ]

K:=TransferFunction(sys2):

K:-tf;

                  [         (1/2)         (1/2)  ]
                  [  (a + 1)      (-a + 1)      s]
                  [- ----------------------------]
                  [             -s + a           ]

expand(combine(K:-tf[1,1])) assuming a>0;

                                    (1/2)  
                            /     2\       
                            \1 - a /      s
                          - ---------------
                                -s + a     
于 2012-07-22T03:33:14.313 回答