You are here : matlabSignal Processingresiduez

residuez() - Signal Processing

residuez converts a discrete time system,
expressed as the ratio of two polynomials, to partial fraction expansion, or residue, form. It also
converts the partial fraction expansion back to the original polynomial

Numerically, the partial fraction expansion of a ratio of polynomials
is an ill-posed problem. If the denominator polynomial is near a polynomial
with multiple roots, then small changes in the data, including round-off
errors, can cause arbitrarily large changes in the resulting poles
and residues. You should use state-space or pole-zero representations
instead.  [r,p,k] = residuez(b,a) finds
the residues, poles, and direct terms of a partial fraction expansion
of the ratio of two polynomials, b(z)
and a(z). Vectors b and a specify
the coefficients of the polynomials of the discrete-time system b(z)/a(z)
in descending powers of z.B(z)=b0+b1z−1+b2z−2+⋯+bmz−mA(z)=a0+a1z−1+a2z−2+⋯+anz−nIf there are no multiple roots and a > n-1,B(z)A(z)=r(1)1−p(1)z−1+⋯+r(n)1−p(n)z−1+k(1)+k(2)z−1+⋯+k(m−n+1)z−(m−n)The returned column vector r contains the
residues, column vector p contains the pole locations,
and row vector k contains the direct terms. The
number of poles isn = length(a)-1 = length(r) = length(p)
The direct term coefficient vector k is empty
if length(b) is less than length(a);
otherwise:length(k) = length(b) - length(a) + 1
If p(j) = ... = p(j+s-1) is a pole of multiplicity s,
then the expansion includes terms of the formr(j)1−p(j)z−1+r(j+1)(1−p(j)z−1)2+⋯+r(j+sr−1)(1−p(j)z−1)s[b,a] = residuez(r,p,k)   with three input
arguments and two output arguments, converts the partial fraction
expansion back to polynomials with coefficients in row vectors b and a.The residue function
in the standard MATLAB® language is very similar to residuez.
It computes the partial fraction expansion of continuous-time systems
in the Laplace domain (see reference [1]),
rather than discrete-time systems in the z-domain
as does residuez.


[r,p,k] = residuez(b,a)[b,a] = residuez(r,p,k)


n = length(a)-1 = length(r) = length(p)

Output / Return Value


Alternatives / See Also