[英]How to normalise polynomial coefficients in a fraction?
我有以下代码:
syms z
Gc=1.582*(1-0.3679*z^-1)/(1+.418*z^-1);
Ghp=.3679*(z^-1)*(1+.718*z^-1)/((1-z^-1)*(1-.3679*z^-1));
T=(Gc*Ghp)/(1+Gc*Ghp);
clipboard('copy', latex(simplifyFraction(T)));
T
结果如下:
如何归一化系数? 即我希望分母中的 z 2和分子中的 z 的系数为 1。Matlab 中是否有任何函数可以这样做?
您可以提取分子和分母numden
,然后让他们coefficiens与coeffs
再次,规范化多项式,和鸿沟。
[n,d] = numden(T);
cn = coeffs(n);
cd = coeffs(d);
T = (n/cn(end))/(d/cd(end));
latex(T)
的输出(注意:现在没有simplifyFraction
;它会撤消事情):
如果您更喜欢十进制形式的系数,请使用vpa(T)
:这里是latex(vpa(T))
。
当然,以上不等于您的原始分数,因为我实际上将其乘以cd(end)/cn(end)
。 根据您的目的,您可以
cn(end)/cd(end)
,或(cn(end)/cd(end))*((n/cn(end))/(d/cd(end)));
把它放回去。不幸的是,Matlab 太急于将两个分数合二为一,但您仍然可以看到归一化多项式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.