For some applications it is known from the properties of the system that the matrix is symmetric. However in the generation of the matrix coefficients some differences may occur between the lower and upper triangular terms. Since factoring a symmetric matrix requires half the computation of a nonsymmetric matrix, FMS includes a way to average the lower and upper terms to allow the faster symmetric factoring. The FMS Parameter LUOK is used to control this feature.

LUOK

The matrix is first opened and built as a nonsymmetric matrix. The FMS Parameter LUOK is then set to process this matrix as symmetric, and the symmetric factoring routine is called.

A second application for this feature occurs when matrix data is generated. In some cases generating half of the matrix coefficients as required for a symmetric matrix will naturally populate some terms in the upper triangle and some terms in the lower triangle. Transposing the upper triangle terms to force all data into the lower triangle may be awkward. This feature allows you to provide both lower and upper triangles during matrix assembly and then compact the data into symmetric form after the matrix coefficients have been generated. Note that FMS automatically initializes all matrix coefficients to zero so only the nonzero values need to be specified.