Convert between partial fraction expansion and polynomial coefficients
[r,p,k] = residue(b,a)
[b,a] = residue(r,p,k)
The residue function converts a quotient of polynomials to pole-residue representation, and back again.
where bj and aj are the jth elements of the input vectors b and a.
If there are no multiple roots, then
The number of poles n is
n = length(a)-1 = length(r) = length(p)
The direct term coefficient vector is empty if length(b) < length(a); otherwise
length(k) = length(b)-length(a)+1
If p(j) = ... = p(j+m-1) is a pole of multiplicity m, then the expansion includes terms of the form
Vectors that specify the coefficients of the polynomials in descending powers of s
Column vector of residues
Column vector of poles
Row vector of direct terms
Numerically, the partial fraction expansion of a ratio of polynomials represents an ill-posed problem. If the denominator polynomial, a(s), is near a polynomial with multiple roots, then small changes in the data, including roundoff errors, can make arbitrarily large changes in the resulting poles and residues. Problem formulations making use of state-space or zero-pole representations are preferable.
If the ratio of two polynomials is expressed as
b = [ 5 3 -2 7] a = [-4 0 8 3]
and you can calculate the partial fraction expansion as
[r, p, k] = residue(b,a) r = -1.4167 -0.6653 1.3320 p = 1.5737 -1.1644 -0.4093 k = -1.2500
Now, convert the partial fraction expansion back to polynomial coefficients.
[b,a] = residue(r,p,k) b = -1.2500 -0.7500 0.5000 -1.7500 a = 1.0000 -0.0000 -2.0000 -0.7500
The result can be expressed as
Note that the result is normalized for the leading coefficient in the denominator.
It first obtains the poles with roots. Next, if the fraction is nonproper, the direct term k is found using deconv, which performs polynomial long division. Finally, the residues are determined by evaluating the polynomial with individual roots removed. For repeated roots, resi2 computes the residues at the repeated root locations.
 Oppenheim, A.V. and R.W. Schafer, Digital Signal Processing, Prentice-Hall, 1975, p. 56.