# Sparse1.3 # A Sparse Linear Equation Solver # # Kenneth S. Kundert # Alberto Sangiovanni-Vincentelli # University of California, Berkeley # # # Sparse1.3 is a flexible package of subroutines written # in C used to quickly and accurately solve large sparse sys- # tems of linear equations. The package is able to handle # arbitrary real and complex square matrix equations. Besides # being able to solve linear systems, it is also able to # quickly solve transposed systems, find determinants, and # estimate errors due to ill-conditioning in the system of # equations and instability in the computations. Sparse also # provides a test program that is able read matrix equations # from a file, solve them, and print useful information about # the equation and its solution. # # Sparse1.3 is generally as fast or faster than other # popular sparse matrix packages when solving many matrices of # similar structure. Sparse does not require or assume sym- # metry and is able to perform numerical pivoting to avoid # unnecessary error in the solution. It handles its own # memory allocation, which allows the user to forgo the hassle # of providing adequate memory. It also has a natural, flexi- # ble, and efficient interface to the calling program. # # Sparse was originally written for use in circuit simu- # lators and is particularly apt at handling node- and # modified-node admittance matrices. The systems of linear # generated in a circuit simulator stem from solving large # systems of nonlinear equations using Newton's method and # integrating large stiff systems of ordinary differential # equations. However, Sparse is also suitable for other uses, # one in particular is solving the very large systems of # linear equations resulting from the numerical solution of # partial differential equations. # # The Sparse1.3 package is currently available from the # Department of Electrical Engineering and Computer Sciences # of the University of California, Berkeley. It was written # in the C programming language by Kenneth Kundert and ver- # sions exist for the UNIX and VAX/VMS operating systems. Be # sure to specify the version when ordering. Sparse1.3 has # replaced Sparse1.2; providing greater capability and speed, # and a more refined interface to the calling program. # # Sparse is available for a $150.00 charge. The package # includes the source code on tape, the user's guide, and a # large selection of test matrices. To obtain a copy of # Sparse, send a check or money order payable to the Regents # of the University of California to: # EECS Industrial Liaison Program # 461 Cory Hall # University of California # Berkeley, CA 94720 # # Please allow four weeks for delivery. # # Sparse is also distributed through NETLIB. # .