3. DESCRIPTION OF PROGRAM OR FUNCTION
ILUCG3 (Incomplete LU factorized Conjugate Gradient algorithm for 3-D asymmetric matrix system arising from discretization of three-dimensional elliptic and parabolic partial differential equations found in plasma physics applications, such as plasma diffusion, equilibria, and phase space transport (Fokker-Planck equation) problems. These problems share the common feature of being stiff and requiring implicit solution techniques. When these parabolic or elliptic PDE's are discretized with finite-difference or finite-element methods, the resulting matrix system is frequently of block-tridiagonal form. To use ILUCG3, the discretization of the three-dimensional partial differential equation and its boundary conditions must result in a block-tridiagonal matrix. Its element in turn are block-tridiagonal sub-matrices composed of elementary sub-sub-matrices that are also tridiagonal. A generalization of the incomplete Cholesky conjugate gradient (ICCG) algorithm is used to solve the linear asymmetric matrix equation. Loops are arranged to vectorize on the Cray1 with the CFT compiler, wherever possible. Recursive loops, which cannot be vectorized, are written for optimum scalar speed. For problems having a symmetric matrix, ICCG3 should be used since it runs up to four times faster and uses approximately 30% less storage. Similar methods in two dimensions are available in ILUCG2 and ICCG2.