# residue

## Purpose

Convert between partial fraction expansion and polynomial coefficients.

## Synopsis

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

## Description

`[r,p,k] = residue(b,a)` find the residues, poles, and direct term of a partial fraction expansion of the ratio of two polynomials, b(s) and a(s). If there are no multiple roots

Vectors `b` and `a` specify the coefficients of the polynomials in descending powers of s. The residues are returned in the column vector `r`, the pole locations in column vector `p`, and the direct terms in row vector `k`. 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

`[b,a] = residue(r,p,k)`, with three input arguments and two output arguments, converts the partial fraction expansion back to the polynomials with coefficients in `b` and `a`.

## Algorithm

`residue` is an M-file. 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, the M-file `resi2` computes the residues at the repeated root locations.

## Limitations

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.

## See Also

    deconv, poly, roots

## References

[1] A.V. Oppenheim and R.W. Schafer, Digital Signal Processing, p. 56, Prentice-Hall, 1975.

(c) Copyright 1994 by The MathWorks, Inc.