带公分母的符号分数求和 (MATLAB)

Symbolic Fraction Summation with Common Denominator (MATLAB)

你好,希望你们一切都好。

我有两个分母不同的符号分数,我想知道它们相减的结果。我尝试了 simplify 和 simplifyFraction 函数;但是他们没有产生我想要的结果。我希望结果采用 A/B.

的形式

这是分数和我得到的结果:

syms M1 M2 K1 K2 B s
T1 = (B*s + K1)/ ((M1*M2)*s^4 + (M1*B+M2*B)*s^3 + (M1*K1+M2*K1+M1*K2)*s^2 + (B*K2)*s + (K1*K2));
T = (M1*s^2 + B*s + K1) / ((M1*M2)*s^4 + (B*M1+B*M2)*s^3 + (K1*M1+K1*M2+K2*M1)*s^2 + (B*K2+B*K1-B)*s + (K1^2 -K1 + K1*K2));
T2 = T1 - T
T2 =
(K1 + B*s)/(M1*M2*s^4 + (B*M1 + B*M2)*s^3 + (K1*M1 + K1*M2 + K2*M1)*s^2 + B*K2*s + K1*K2) - (M1*s^2 + B*s + K1)/(s^3*(B*M1 + B*M2) - K1 + s^2*(K1*M1 + K1*M2 + K2*M1) + K1^2 + s*(B*K1 - B + B*K2) + K1*K2 + M1*M2*s^4)

能告诉我具体需要用什么函数来获取A/B形式的T2吗?

您可以使用numden提取分子和分母:

[N,D] = numden(T2);

如果你想获得多项式系数(如传递函数),你可以使用coeffs:

Ncoeffs = coeffs(N,s);
Dcoeffs = coeffs(D,s);