CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   Main CFD Forum (http://www.cfd-online.com/Forums/main/)
-   -   Why Thomas Algorithm for tridiagonal systems? (http://www.cfd-online.com/Forums/main/962-why-thomas-algorithm-tridiagonal-systems.html)

 Yogesh Talekar June 29, 1999 08:23

Why Thomas Algorithm for tridiagonal systems?

Why onlt Thomas' alorithm is used for solving tri-diagonal system and Why not GAUSS elimination which is much simpler? IS there anything in literature.

 Jim Park June 29, 1999 10:21

Re: Why Thomas Algorithm for tridiagonal systems?

Am I forgetting something (entirely possible!)?

Isn't the Thomas algorithm just a degenerate Gauss elimination operating on a tridiagonal coefficient matrix?

 John C. Chien June 29, 1999 10:52

Re: Why Thomas Algorithm for tridiagonal systems?

(1). There are a couple of books you can read. (2). "Numerical Methods fo Engineering Application" by Joel H. Ferzier, published by John Wiley & Sons 1981. ISBN-0-471-06336-3 (3). "Applied Iterative Methods" by Louis A. Hageman & David M. Young, published by Academic Press 1981,ISBN 0-12-313340-8. (4). Thomas algorithm is used to solve the tri-diagonal system of equations as part of line implicit method. There are also many point iterative methods available. Sometimes, I just use point S.O.R. method for easy programming. It is faster to use line implicit method when the total number of mesh points becomes large. Try to read the Ferzier's book first. (There are also other books by David Young).

 Duane Baker June 29, 1999 20:04

Re: Why Thomas Algorithm for tridiagonal systems?

Correction:

Ferziger NOT Ferzier!

good book!

 John C. Chien June 30, 1999 07:05

Re: Why Thomas Algorithm for tridiagonal systems?

(1). You are right. But it looks smoother and easier to write this way. (2). We will have to convince the author to change the name. Or we will give the author another name called "fuzzy" , "fuzzy joe". (3). Don't try to read between the keyboard characters.

 T.J. Wanat June 30, 1999 20:01

Re: Why Thomas Algorithm for tridiagonal systems?

The Thomas alogorithm is a specialized form of Gauss elimination that is faster and more accurate (you reduce the total number of operations, thus reducing the truncation and round-off error that accumulates for large systems). I recommend using it whenever possible.

 Edward C. Chan July 15, 1999 13:56

Re: Why Thomas Algorithm for tridiagonal systems?

Thomas' Algorithm is a special case of Gaussian elimination where the incident matrix consists of only the diagonal, and its immediate east and west neighbours (when the problem is 1D.)

As with Gaussian elimination, it is an exact solver and it takes very little time to implement and execute. If you need the code, I can give it to you (in C++)

Cheers, Ed.

 All times are GMT -4. The time now is 20:49.