SECONDARY ROOT POLISHING TECHNIQUES IN COMPUTER CIRCUIT ANALYSIS Dalibor Biolek MA Brno, K301, Kounicova 65, PS 13, 612 00 Brno Abstract: The so-called secondary root polishing techniques are described. They are used in the SNAP program to eliminate numerical inaccuracies during the zero/pole computation of the circuit functions of linear and linearized circuits. Introduction The analysis functions of some programs for the analysis of linear and linearized circuits are based on the circuit function zeros and poles. The SNAP program for the symbolic, semisymbolic, and numerical analyses belongs to this class [1]. The final analysis accuracy is then strongly dependent on the zero and pole finding algorithms. The question of accuracy of these algorithms is fundamental especially in some cases: partly in the analysis of large circuits of the order of about 100 and more, partly in circuits having a considerable spread of time constants and natural frequencies, or in circuits with multiple poles. In principle, zeros/poles are computed by two different methods: either from the circuit matrix by the solution of generalized eigenvalue problem, or from the numerator/denominator polynomials by finding their roots. Generally, the first method is more accurate and - if possible – we always prefer it. Nevertheless, in some cases of analysis, the zero/pole computation represents a numerically sophisticated problem, and even the very accurate algorithms can generate inadmissible errors. To decrease these errors, special techniques, called root polishing, are often used [2]. There are methods of iterative root improvement, which sometimes make it possible to decrease the error to a level which is given by the roundoff processor error. Let us call all these familiar methods primary root polishing techniques. Let us assume that instead of a correct couple of poles [-1,-1] we get after the primary polishing [-1,-0.999999999999]. This tiny error (10 -10 %) causes an incorrect identification of two different poles instead of one twofold. Then the equation of the step response will be of quite a different structure than in the correct case. The above example is a typical illustration of an error which can be eliminated by the so- called secondary root polishing technique. Techniques of secondary polishing. Parameters Min / Max , Re/Im , Im/Re , Re , Im control the zero and pole polishing using the method of zeroing the negligible components. This polishing removes the numerical inaccuracy, as given in following examples: set of roots before polishing set of roots after polishing -3,2134586976e-34 +j2,3981289349e12 +j2,3981289349e12 -3,2134586976e-34 -j2,3981289349e12 -j2,3981289349e12 -8,8726534894e9+j1,99000298983 -8,8726534894e9 2,3399478723e-9 0