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!