New Methods for Improving the Pole-Zero Analysis Accuracy Josef Dobeˇ s, David ˇ Cern´ y, and Libor Sl´ ama Czech Technical University in Prague Department of Radio Engineering Technick´ a2 166 27 Praha 6, Czech Republic Email: {dobes, cernyd1, slamalib}@fel.cvut.cz Dalibor Biolek Brno University of Technology Department of Microelectronics ´ Udoln´ı 53 602 00 Brno, Czech Republic Email: biolek@feec.vutbr.cz Jan M´ıchal Silicon & Software Systems (S3) Department of Mixed Signal Design Klicperova 12 150 00 Praha 5, Czech Republic Email: michal@fel.cvut.cz Abstract—An optimal pivoting strategy of the algorithm that reduces the general eigenvalue problem to the standard one is suggested for both full- and sparse-matrix procedures. The algorithm increases the accuracy of the semisymbolic analysis, especially for resonant and/or large-scale electronic circuits. A novel technique is also incorporated recognizing multiple poles or zeros, which are often computed inaccurately by the standard algorithms. A new type of this procedure called secondary root polishing is described in the paper. The accuracy is further increased using longer numerical data. First, the “long double” precision (available in many C/C++ compilers) is utilized. Second, a novel application of a suitable multiple-precision arithmetic library is suggested. The algorithms were checked on various electronic circuits. Keywords—Eigenvalues and eigenfunctions, poles and zeros, resonant or large-scale electronic circuits, sparse matrices, variable-length arithmetic. I. I NTRODUCTION T HE POLE-ZERO analysis belongs to the most important parts of the design of electronic circuits. However, the analysis is known to be very sensitive to the numerical accuracy of algebraic operations during the process [1], [2]. Consequently, many of the theoretically exact methods fail. Three major types of improvements to these methods are proposed here: • the first consists in an algorithm design regarding the choice of pivots during the reduction to the standard eigenvalue problem, • the second suggests the primary or secondary root polishing for improving the results of both reduction and QR algorithm, • and the third is based on using longer numerical data types for the sparse-matrix reduction and QR algorithm. II. FUNDAMENTAL PRINCIPLE OF THE REDUCTION ALGORITHM A system of linear circuit equations (or equations linearized at an operating point) can be written by the Laplace transformation (sP + Q) X = Y , (1) where s marks the Laplace operator, P /Q are the matrices as- sociated with the dynamic/static parts of the model derivatives, respectively, X is the vector of the Laplace representation of circuit variables, and Y is the source vector. The poles of all the transfer functions and the zeros of a transfer function can be computed by solving the equations det ( sP + Q ) =0 for poles, det sP (0j) + Q (ij) =0 for zeros, (2) where the matrices P (0j) and Q (ij) arise from the original ones – the first by zeroizing j th column, and the second by replacing j th column by Y with all its elements zeroized with the exception of the one corresponding to the i th source. Solving the general eigenvalue problems defined by (2) is more difficult than solving the standard ones. Therefore, a systematic reduction is applied during the transformation of (2) to the standard form, which is shown in Fig. 1 – it is an alternative of the method Fig. 1. Final position of the nonzero matrix elements after the reduction. in [3]. After the transformation, the determinant can be computed as det ( sP + Q ) = (-1) n exch n i=m+1 Q22 ii det P11P −1 11 ( sP11 + Q11 ) = (-1) n exch m i=1 P11 ii n i=m+1 Q22 ii det ( s1 + P −1 11 Q11 ) , (3) where n exch is the total number of row and column exchanges during the reduction, and 1 is the unity matrix. The operations that transform the matrix sP + Q to the form shown in Fig. 1 are a certain modification of the Gauss elimination method. The only exception occurs when the matrix P11 contains a nondiagonal element that is not reducible by the diagonal elements of this matrix. In such cases, it is necessary to multiply a row from the lower part of the matrix by the s operator, which is equivalent to moving a row of the Q22 matrix to the left. The nondiagonal element of the P11 matrix can then be reduced by means of the transferred row. A final step for determining the poles or zeros of the transfer function is a computing of the eigenvalues of the matrix Q ′ = -P −1 11 Q11. (4) III. ENHANCEMENT OF THE ACCURACY OF THE ALGORITHM A. Optimal Pivoting for the Reduction Algorithms The reduction process is very difficult from the point of view of numerical precision, especially in the case of the large-scale systems. The matrices often contain elements of very different magnitudes. Therefore, a full pivoting should be used for the choice of the k th key element: P kk := max kin kjn |Pij |,k =1,...,n, (5) however, the key element determined in the above stated way is regarded to be zero if it is too small in comparison with the maximum element of the k th column: if |P kk | εeigen max 1i<k |P ik |, then P kk := 0. (6) Mathematical Models for Engineering Science ISBN: 978-960-474-252-3 155