Abstract
SummaryThe algorithm detailed below extends previous work on inversion of block tridiagonal matrices from the Hermitian/symmetric case to the general case and allows for varying sub‐block sizes. The sub‐blocks of the matrix are evenly distributed across p processes. Local sub‐blocks are combined to form a matrix on each process. These matrices are inverted locally and the inverses are combined in a pairwise manner. At each combination step, the updates to the global inverse are represented by updating “matrix maps” on each process. The matrix maps are finally applied to the original local inverse to retrieve the block tridiagonal elements of the global inverse. This algorithm has been implemented in Fortran with MPI. Calculated inverses are compared with inverses obtained using the well known libraries ScaLAPACK and MUMPS. Results are given for matrices arising from Density Functional Theory applications.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have