How to create Padé approximation of a time delay in transfer function form using different orders for numerator and denominator polynomials?
2 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2025 年 4 月 17 日
回答済み: MathWorks Support Team
2025 年 4 月 17 日
I am using MATLAB R2023b, and I want to generate a Padé approximation for a "time delay" in transfer function form. The resulting transfer function should be of order ["m", "n"], where "m" is not equal to "n".
The "pade" function from the "Control System Toolbox" only supports equal orders for the numerator and denominator polynomials in the transfer function. It takes two arguments: the time delay "T" and a positive integer "N", which specifies the order of both polynomials.
Is there a workaround or alternative method to generate a Padé approximation with differing orders for the numerator and denominator?
採用された回答
MathWorks Support Team
2025 年 4 月 17 日
You can use the "pade" function from the "Symbolic Math Toolbox," which generates Padé approximation of symbolic expressions. This function allows you to specify the order of the numerator and denominator polynomials as a vector of two integers using Name-Value pair arguments. See the example below:
pade_tf = pade(<symbolic_expression>, 'Order', [m, n]);
Given "m", "n", and "T", you can use the following set of commands to compute the Padé approximation of the time delay:
syms s;
sys = exp(-s*T); % Laplace transform of a time delay of T seconds
pade_tf = pade(sys, 'Order', [m, n]);
The transfer function "pade_tf" will be a "sym" object. To extract the coefficients of the numerator and denominator polynomials, you can use the following set of commands:
[nm,dn] = numden(pade_tf);
num = sym2poly(nm);
den = sym2poly(dn);
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Symbolic Math Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!