control.pade

control.pade(T, n=1, numdeg=None)[source]

Create a linear system that approximates a delay.

Return the numerator and denominator coefficients of the Pade approximation of the given order.

Parameters
Tnumber

Time. delay

npositive integer

Degree of denominator of approximation.

numdeginteger, or None (the default)

If numdeg is None, numerator degree equals denominator degree. If numdeg >= 0, specifies degree of numerator. If numdeg < 0, numerator degree is n+numdeg.

Returns
num, denndarray

Polynomial coefficients of the delay model, in descending powers of s.

Notes

Based on [1] and [2].

References

1

Algorithm 11.3.1 in Golub and van Loan, “Matrix Computation” 3rd. Ed. pp. 572-574.

2

M. Vajta, “Some remarks on Padé-approximations”, 3rd TEMPUS-INTCOM Symposium.

Examples

>>> delay = 1
>>> num, den = ct.pade(delay, 3)
>>> num, den
([-1.0, 12.0, -60.0, 120.0], [1.0, 12.0, 60.0, 120.0])
>>> num, den = ct.pade(delay, 3, -2)
>>> num, den
([-6.0, 24.0], [1.0, 6.0, 18.0, 24.0])