Research Article

Partial Refactorization in Sparse Matrix Solution: A New Possibility for Faster Nonlinear Finite Element Analysis

Algorithm 2

Sparse direct methods of refactorization.
Step 1.  Input original stiffness matrix , upper triangular matrix and diagonal matrix ;
Step 2.  Create array CHANGE( ) with the initial value zero, where is the number of
equations. CHANGE indicates row is not changed, while CHANGE indicates
row is changed;
Step 3.  Input the change of each element stiffness matrix and assemble them to original
total stiffness matrix. Then let CHANGE( ) be 1 if row is changed;
Step 4.  According to Rule, spread the effect of changes over the whole matrix and mark
all the changed rows:
Step 5.  Assemble matrix to the original factor. If CHANGE , fill in row with
original factorization result; if CHANGE , fill in row with entries of new stiffness matrix;
Step 6.  Numerically factorize the matrix, only recalculating entries in changed rows
(CHANGE ) according to (5). Only changed row is added to the elimination tree, in
implementation being represented by the linked list.
Step 7.  The solution procedure after factorization stays the same.