On Computing the Inverse of a Rational Matrix L.H. Keel and S.P. Bhattacharyya Abstract— In this paper, we develop a method for computing the inverse of a rational or polynomial matrix via Wolovich’s Structure Theorem. By using Leverrier’s algorithm with the above result, the inverse can be obtained using only arithmetic operations. I. INTRODUCTION Numerical and computational methods for dealing with polynomial and rational matrices are an important part of control systems research [1], [2]. This includes computing common divisors of polynomials, inversion of a polyno- mial matrices, coprime polynomial factorizations of rational matrices, and functions of polynomial matrices [3], [4]. An excellent account of linear systems theory containing numerical considerations can be found in [5] The inversion of a rational or polynomial matrix is needed in many branches of engineering and especially in signals, systems and control design and analysis. In [8], Leverrier’s algorithm to find the inverse of (sI - A) is generalized to the inversion of polynomial matrices of arbitrary degree and of a certain form. An input-output approach is taken to the realization of matrix fraction descriptions of transfer matrices in [9]. In [10], an algorithm is developed for finding the in- verse of polynomial matrices in the irreducible form by using the left (right) matrix division method and the determination of linearly dependent vectors of the remainders. In this paper, we present an algorithm that computes the inverse of an arbitrary polynomial or rational matrix using Wolovich’s Structure Theorem [6]. This algebraic technique can be easily implemented as a computational algorithm without requiring symbolic computation. Examples are given for illustration. II. PRELIMINARY RESULTS In this section, we discuss Leverrier’s algorithm, the Wolovich Structure Theorem, and the inverse of a unimod- ular matrix. A. Leverrier’s Algorithm[11] This algorithm determines the so-called resolvent, (sI - A) -1 for a real or complex matrix A, without symbolic calculation. First write (sI - A) -1 = Adj[sI - A] det[sI - A] . (1) This work was supported in part by DOD Grant W911NF-08-0514 and NSF Grant CMMI-0927664 Center of Excellence in Information Systems, Tennessee State University, Nashville, TN 37209 Department of Electrical and Computer Engineering, Texas A&M Uni- versity, College Station, TX 77843 Let a(s) = det[sI - A] (2) = s n + a n-1 s n-1 + ··· + a 1 s + a 0 where a i C and T (s) = Adj[sI - A] (3) = T n-1 s n-1 + T n-2 s n-2 + ··· + T 1 s + T 0 , with T i C n×n . Thus, we have (sI - A) -1 = 1 a(s) T (s) (4) or a(s)I =(sI - A)T (s) (5) so that a(s)I = Is n + a n-1 Is n-1 + ··· + a 1 Is + a 0 I (sI - A)T (s)= T n-1 s n +(T n-2 - AT n-1 ) s n-1 + ··· ··· +(T 0 - AT 1 ) s - AT 0 . Therefore, T n-1 = I, T n-2 = AT n-1 + a n-1 I, T n-3 = AT n-2 + a n-2 I, . . . (6) T 0 = AT 1 + a 1 I, -AT 0 = a 0 I. It is also shown that a i = - 1 n - i Trace [AT n-i ] , (7) and this leads to the following algorithm: a n-1 = -Trace [AT n-1 ] , a n-2 = - 1 2 Trace [AT n-2 ] , a n-3 = - 1 3 Trace [AT n-3 ] , (8) . . . a 0 = - 1 n Trace [AT 0 ] . Thus, the special case of a resolvent can be determined by arithmetic operations. We shall show in the paper that the inversion of a general rational matrix can be reduced to the case of a resolvent. Joint 48th IEEE Conference on Decision and Control and 28th Chinese Control Conference Shanghai, P.R. China, December 16-18, 2009 WeA04.6 978-1-4244-3872-3/09/$25.00 ©2009 IEEE 140