簡體   English   中英

如何歸一化分數中的多項式系數?

[英]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))

vpa


當然,以上不等於您的原始分數,因為我實際上將其乘以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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM