2

次の入力を受け取るこの MATLAB 関数があります。

A=[0 1; 0 -1];
B=[0; 1]
C=[-1 1];

コードは次のとおりです。

function [ T ] = transferMAtrix( A, B, C )
    s=sym('s');
    [n n] = size(A);
    sI=s*sym(eye(n));
    T=sym(C)*inv(sI-sym(A))*sym(B);

end

また、transferMAtrix(A, B, C) は次の出力を返します。

1/(s + 1) - 1/(s*(s + 1))

私の質問は次のとおりです。出力が次のようになるように、これらの分数を同じ分母にする方法はありますか。

(s-1)/(s*(s+1))

?

4

1 に答える 1

1
>> syms s
>> T=1/(s + 1) - 1/(s*(s + 1))

T =

1/(s + 1) - 1/(s*(s + 1))

>> [n,d]=numden(T)

n =

s - 1


d =

s^2 + s

>> T=n/d

T =

(s - 1)/(s^2 + s)
于 2012-10-29T22:48:55.460 に答える