部分分数展開 residue関数 について

3 views (last 30 days)
匠 佐藤
匠 佐藤 on 18 Jul 2024
Answered: UDAYA PEDDIRAJU on 24 Jul 2024
部分分数展開 residue について
A = [1.000 -2.4698700000 1.414714000 0.586061000 -0.53090000 ];
B = [0.023772000 0.113586000 -0.381740000 0.338480000 -0.093660000 ];
[r,p,k] = residue(B,A);
と入力すると
p =
1.0000 + 0.0620i
1.0000 - 0.0620i
0.9991 + 0.0000i
-0.5293 + 0.0000i
となるのに対し
A = [1.000 -2.468053354 1.404358591 0.601339291 -0.53766175 ];
B = [0.020130076 0.163012635 -0.492222446 0.426453515 -0.116840951 ];
[r,p,k] = residue(B,A);
と入力すると
p =
1.0029 + 0.0000i
0.9997 + 0.0621i
0.9997 - 0.0621i
-0.5343 + 0.0000i
となり、上下の変数A、Bにそこまで大きな違いはないと思われるのに、返される極の順番が違うように思います。
極pの出力に何かルールはあるのでしょうか。

Answers (1)

UDAYA PEDDIRAJU
UDAYA PEDDIRAJU on 24 Jul 2024
Hi Takumi,
The "residue" function in MATLAB is used to perform partial fraction expansion of a given rational transfer function. It returns the residues, poles, and direct term of the expansion.
In the provided code snippet, the "residue" function is used to calculate the residues and poles of the transfer function defined by the coefficient arrays B and A. The residues are stored in the variable r, the poles are stored in the variable p, and the direct term is stored in the variable k.
the decimal value are rounded off to the nearest values in every case that a MATLAB variable encounters a long decimals value, you can read about the format function to customize the view as per your requirement type "help format" in you command window of MATLAB or refer: https://www.mathworks.com/help/matlab/ref/format.html and https://www.mathworks.com/help/matlab/ref/format.html

Categories

Find more on ビッグ データの処理 in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!