The ILU-type Preconditioner with 2 Drop Tolerance Parameters
This paper is devoted to description of the ILU-type preconditioner with two drop tolerance parameters, named $FILU(\epsilon_1, \epsilon _2)$. This preconditioner $M$ gives good approximation of the original matrix $A$: $M = L \cdot U \approx A$ and requires less memory then a standard one - parameter preconditioner.
The procedure of creating of the preconditioner's matrix M consists of the following steps. At first we calculate special left and right (with respect to main diagonal) norms for each row, and store them in 2 vectors. Then during elimination of $i$-th row we compare adding element (new element in the row) with corresponding (left or right) norm, multiplied by $\epsilon_2$ . After elimination of the row is finished, all additional elements are compared with the corresponding norm, multiplied by $\epsilon_1$, and elements with value less then norm are dropped. Thus we check an additional element two times. First time we check it when it is added, and second time - after elimination of the row. Such approach allows us to diminish a number of nonzero elements in the preconditioner's matrix without worsening of quality of the preconditioner.