How to create Padé approximation of a time delay in transfer function form using different orders for numerator and denominator polynomials?

2 ビュー (過去 30 日間)
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
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 件)

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

製品


リリース

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by