skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Analysis of the recursive doubling algorithm

Technical Report ·
OSTI ID:7316179

Recursive doubling is an algorithm proposed by Stone for the solution, on a parallel processor, of an n x n tridiagonal system of linear equations. Such systems arise frequently in physical applications, where n is typically large (e.g., n = 10,000) and many systems of this size need to be solved. An efficient method of solution is desirable. One method of solving Ax = y, where A is tridiagonal, is to decompose A into A = LU, where L is unit lower bidiagonal and U is upper bidiagonal. Then Lz = y is solved, followed by Ux = z. Stone proposed two algorithms; first, a parallel ''backsolver'' for the solution of the two bidiagonal systems, and second, a ''Q-finder'' which, together with three parallel divisions, produces L and U. This paper gives a mathematical explanation of Stone's algorithms which shows that they are two cases of a general algorithm. Then precise definition is given to the causes of numerical instability in the algorithm, and possible approaches to scaling are suggested. Particular applications are given to solving m-term linear recurrence relations, tridiagonal systems of equations, and the symmetric tridiagonal eigenvalue problem. For solving a tridiagonal system of equations, the special case where the systems arise from operator splitting techniques for solving parabolic partial differential equations is also considered. It is shown that recursive doubling can become a viable competitor to Gauss Elimination. Pertinent timing information is given in most of the above applications. 3 tables. (RWR)

Research Organization:
California Univ., Livermore (USA). Lawrence Livermore Lab.
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
7316179
Report Number(s):
UCRL-79071
Country of Publication:
United States
Language:
English