Published June 1, 2013 | Version v1
Journal article

A fast algorithm for sparse matrix computations related to inversion

  • 1. Institute for Computational and Mathematical Engineering, Stanford University, 496 Lomita Mall, Durand Building, Stanford, CA 94305 (United States)
  • 2. Department of Electrical Engineering, Stanford University, 350 Serra Mall, Packard Building, Room 268, Stanford, CA 94305 (United States)
  • 3. Department of Mechanical Engineering, Stanford University, 496 Lomita Mall, Durand Building, Room 209, Stanford, CA 94305 (United States)

Description

We have developed a fast algorithm for computing certain entries of the inverse of a sparse matrix. Such computations are critical to many applications, such as the calculation of non-equilibrium Green's functions Gr and G< for nano-devices. The FIND (Fast Inverse using Nested Dissection) algorithm is optimal in the big-O sense. However, in practice, FIND suffers from two problems due to the width-2 separators used by its partitioning scheme. One problem is the presence of a large constant factor in the computational cost of FIND. The other problem is that the partitioning scheme used by FIND is incompatible with most existing partitioning methods and libraries for nested dissection, which all use width-1 separators. Our new algorithm resolves these problems by thoroughly decomposing the computation process such that width-1 separators can be used, resulting in a significant speedup over FIND for realistic devices — up to twelve-fold in simulation. The new algorithm also has the added advantage that desired off-diagonal entries can be computed for free. Consequently, our algorithm is faster than the current state-of-the-art recursive methods for meshes of any size. Furthermore, the framework used in the analysis of our algorithm is the first attempt to explicitly apply the widely-used relationship between mesh nodes and matrix computations to the problem of multiple eliminations with reuse of intermediate results. This framework makes our algorithm easier to generalize, and also easier to compare against other methods related to elimination trees. Finally, our accuracy analysis shows that the algorithms that require back-substitution are subject to significant extra round-off errors, which become extremely large even for some well-conditioned matrices or matrices with only moderately large condition numbers. When compared to these back-substitution algorithms, our algorithm is generally a few orders of magnitude more accurate, and our produced round-off errors stay at a reasonable level

Availability note (English)

Available from http://dx.doi.org/10.1016/j.jcp.2013.01.036

Additional details

Identifiers

DOI
10.1016/j.jcp.2013.01.036;
PII
S0021-9991(13)00089-2;

Publishing Information

Journal Title
Journal of Computational Physics
Journal Volume
242
Journal Page Range
p. 915-945
ISSN
0021-9991
CODEN
JCTPAH

INIS

Country of Publication
United States
Country of Input or Organization
International Atomic Energy Agency (IAEA)
INIS RN
45054679
Subject category
S97: MATHEMATICAL METHODS AND COMPUTING;
Descriptors DEI
ALGORITHMS; CALCULATION METHODS; COMPARATIVE EVALUATIONS; EQUIPMENT; ERRORS; FUNCTIONS; MATRICES; PARTITION; SIMULATION
Descriptors DEC
EVALUATION; MATHEMATICAL LOGIC

Optional Information

Copyright
Copyright (c) 2013 Elsevier Science B.V., Amsterdam, The Netherlands, All rights reserved.