1: \begin{abstract}
2: Preconditioners are generally essential for fast convergence in the iterative solution
3: of linear systems of equations. However, the computation of a good preconditioner
4: can be expensive. So, while solving a sequence of many linear systems, it
5: is advantageous to recycle preconditioners, that is, update a previous
6: preconditioner and reuse the updated version. In this paper, we introduce a
7: simple and effective method for doing this.
8: We consider recycling preconditioners for both
9: the general case of sequences of linear systems
10: $\MA(\Vp_k) \Vx_k = \Vb_k$ as well as the
11: important special case
12: of the type $(s_k\ME + \MA)\Vx_k = \Vb_k$.
13: The right hand sides
14: may or may not change.
15:
16: We update preconditioners by defining a map from a new matrix to a
17: previous matrix, for example, the first matrix in the sequence. We then combine the preconditioner for this previous matrix with the map
18: to define the new preconditioner. This approach has several advantages.
19: {\em The update is independent from the original preconditioner, so
20: it can be applied to any preconditioner.}
21: The possibly high cost of an
22: initial preconditioner can be amortized over many linear solves.
23: The cost of updating the preconditioner is more or less constant and there is flexibility in balancing
24: the quality of the map with the computational cost.
25:
26: In the numerical experiments section, we demonstrate good results for several
27: applications.
28: \end{abstract}
29: