Abstract

Most calculations in model reduction involve the solutions of a sequence of dual linear systems with multiple right-hand sides. To solve such systems efficiently, a new deflated BiCG method is explored in this paper. The proposed algorithm uses harmonic Ritz vectors to approximate left and right invariant subspaces inexpensively via small descenting direction vectors found by subsequent runs of deflated BiCG and then derives the deflated subspaces for the next pair of dual linear systems. This process leads to faster convergence for the next pair of systems. Numerical examples illustrate the effectiveness of the proposed method.

1. Introduction

Large scale simulations play an important role in the study of a great variety of complex physical phenomena, leading often to overwhelming demands on computational resources [15]. Hence, the common approach is to produce a surrogate model of much smaller dimension which provides a high-fidelity approximation of the original model. For such problems, interpolatory model reduction method combines flexibility and scalability and has proven effectiveness. It transfers function interpolations in the frequency domain to meet various desirable approximation goals. During this process, it requires the solutions of dual linear systems with multiple right-hand sides (RHSs):where is a sparse, nonsymmetric matrix and RHSs are not available simultaneously.

For the solutions of primary linear systems , , deflated Krylov methods have been appearing. This is due to the fact that they take advantage of the fact that several systems share the same matrix. In addition, the convergence of Krylov subspace solvers for a linear system, to a great extent, depends on the spectrum of the matrix. If one could project the eigenvectors corresponding to the smallest eigenvalues out from the initial residual and then solve the deflated system it will converge much faster. The process is referred to as deflation. Variants of deflated Krylov solvers for the primary linear systems have been fully studied in the literature [2, 3, 614]. However, deflation for dual linear systems has not yet been fully investigated [15, 16].

In this paper we extend this idea to the BiCG algorithm for the dual case. The goal of this paper is to develop a new deflated BiCG method for solving dual linear systems with multiple RHSs. Likewise, for BiCG, it can be shown that if the primal Krylov subspace is deflated with right eigenvectors, the corresponding left eigenvectors are removed from the dual residual. Therefore, while solving a pair of systems, we select approximate left and right invariant subspaces of and then use those to accelerate the convergence of the next pair of systems. The proposed algorithm uses harmonic Ritz vectors to approximate left and right invariant subspaces inexpensively via small descenting direction vectors found by subsequent runs of deflated BiCG and then derives the deflated subspaces for the next pair of dual linear systems. Furthermore, we describe a cheap way to build the deflated subspaces.

In the next section, we describe the outline of the deflated Lanczos algorithm used in the derivation of the deflated BiCG method. In Section 3, we derive a deflated BiCG method using previously computed deflated subspace matrices. How to compute and update such deflated space matrices is given in Section 4. In Section 5, we investigate the deflated BiCG algorithm for solving the dual systems with multiple RHSs. The effectiveness of the proposed method is also demonstrated in Section 6. Finally, some conclusions are summarized in Section 7.

Throughout this paper, is referred to as the transpose conjugate operation of matrix , denotes the inner product, is defined as the zero matrix, and is biorthogonality.

2. The Deflated Lanczos Algorithm

In this section, we describe a deflated Lanczos algorithm that builds two sequences ,   of vectors such that and , where and are two sets of linearly independent vectors.

We assume that the matrix is nonsingular. Let Since the matrices and are each other’s conjugate transpose, we can apply the standard Lanczos procedure to the above auxiliary matrices. Let unit vectors , be biorthogonal to , , respectively; then we compute the Lanczos vectors which satisfy where , , and are tridiagonal matrices, , are the last element of the last row of , and , respectively.

The Lanczos procedure guarantees that the vectors and . Since and , we have and for , via (5) and (6). Hence the sequences and satisfy the properties of (2).

To make these ideas more concrete, we give a deflated Lanczos algorithm by substituting the right-hand sides of (3) and (4).

3. The Deflated BiCG Algorithm

In this section, we derive the deflated BiCG method from Algorithm 1 in exactly the same way as BiCG was derived from the Lanczos biorthogonalization procedure [17]. For convenience, we drop the superscript in (1) and refer toas the primary and the dual system, respectively.

Define and .
Choose initial unit vectors and such that and . Set
.
fordo
  Solve ; for
;   
;   
;   
;   
;  
end for

Assume initial guesses and are given such that and . Let , . DefineThe th solutions that are updated in deflated BiCG algorithm become With deflation, the biorthogonality conditions , , and define the Petrov Galerkin conditions

Lemma 1. If , , , and satisfy (9), (10), (11), and (12), respectively, then and with , . Thus the residual is orthogonal to and is orthogonal to .

Proof. From (3) and (5), we have where . Using (9), we get From the orthogonality conditions leads to the following equations: Substituting (15) into (14), we get for some scalar . Similarly, it is able to prove that and .

Now we define , where , , and are diagonal, lower triangular, and upper triangular, respectively. Since a pivotless LDU decomposition of the tridiagonal matrix will lead to a breakdown in BiCG, it can be avoided by performing the LDU decomposition with 2 × 2 block diagonal elements [18]. However, such breakdown rarely happens in practice; hence we will not discuss it for the sake of brevity. Definewhere

Using the above information, two-term recurrences for dual linear systems can be easily derived from the deflated Lanczos procedure.

Theorem 2 2. The solutions , , the residuals , , and the descent directions , for the dual linear systems satisfy the following recurrence relations:

Proof. It is analogous to the proof of Theorem [7].

Theorem 3 3. The descent direction is -orthogonal to . In addition, it is also -orthogonal to .

Proof. It is equivalent to prove that is a diagonal matrix and . Consider the following:is diagonal and The proof of goes along the same lines as above. We next find expressions for , , , and with iteration vectors at hand.

Theorem 4. The coefficients in the deflated BiCG method satisfy the following relations: where and .

Proof.  The proof follows from [7].

Algorithm 2 provides an outline of the deflated BiCG method.

(1) Given and . If and are not available; then initialize and to empty matrices.
(2) Choose , and compute , , , using (22).
(3) if then to a random vector.
(4) Solve ;
(5) Set ; .
(6) fordo
(7)    
(8)    ;   
(9)    ;   
(10)  if tol and tol then
(11)   break;
(12)  end if
(13)  
(14)  Solve ;
(15)  ;   
(16) end for

In order to guarantee and , we take the following forms. Take and as the initial guesses and , as the corresponding initial residuals. Let

4. Computing Approximate Invariant Subspaces

The matrices and are defined as the primary and dual system deflated spaces, respectively. The deflated spaces are fixed to solve the current linear systems; however, the bases of the deflated spaces are updated periodically for the next pair of linear systems. In the literature, approximate invariant subspace of is taken as deflated space. Since we focus on the solutions of the dual linear systems, it is necessary to build the left invariant subspace for the dual and the right invariant for the primary. We use harmonic Ritz vectors [19] to approximate left and right invariant subspaces cheaply. Hence it is needed to solve a small generalized eigenvalue problem whose solution gives the desired approximate invariant subspaces. Although it is cheap to solve the generalized eigenvalue problem, it would be expensive to set up the corresponding matrices in a straightforward manner. For the less matrix vector products, we use the descent directions , to update the deflated subspaces following [7].

Let , For each new system, we define the matrices ,   as follows: where The harmonic projection method computes the left and right approximate eigenvectors corresponding to the smallest eigenvalues by solving the following generalized eigenproblems: where and . Let , ; then the new deflated subspaces for the next system are defined as For avoiding the matrix multiplication and reducing the number of the matrix vector products in and , we take the same way as [7].

Lemma 5 5. Let , . One has , , andwhere , take and respectively. Then the matrices , can be computed by

Proof.  The proof follows from [7].

Lemma 6 6. DefineThen the matrices , , , and are given by

Proof. The proof is analogous to the proofs as given in [7].

5. Systems with Multiple Right-Hand Sides

In this section, we describe the deflated BiCG algorithm for solving the dual linear systems with multiple RHSs. The algorithm uses descent direction vectors , to improve approximate eigenvectors found by subsequent runs of deflated BiCG and uses deflation to accelerate convergence. The new vectors , are appended to the current deflated subspaces, and . These incrementally built spaces are then used to generate approximate subspaces for deflating the next systems. The resulting algorithm is given in Algorithm 3.

(1) Choose and with .
(2) Solve the first dual linear systems of (1) with the standard BiCG.
(3) Compute and using (30) and (31). Set and .
(4) for,   do
(5)  Solve for left and right eigenvectors. Set , .
(6)  Choose .
(7)  Solve the th system of (1) by deflated BiCG with , .
(8)  Compute and . Note that and
(9) end for

The algorithm requires the storage of , , , , , and for approximating eigenvectors, amounting to vectors of length . In addition, we need to save , , , , and of the first steps of the algorithm.

6. Numerical Examples

In this section we give numerical results which indicate the potential effectiveness of our approach. In all of our runs we use a zero initial guess for the first dual system and take (22) as initial guesses for the remaining systems. Also, we keep the data in first steps and approximate eigenvectors associated with smallest eigenvalues. The stopping criterion is taken as . All the numerical experiments were performed in MATLAB 2011b. The machine we have used is a PC Pentium(R)4, CPU 2.50 GHz, 2.00 GB of RAM.

6.1. Convection Diffusion Problem

In this subsection, we take two different approaches BiCG and deflated BiCG (DBiCG) to solve the same problem for highlighting the efficiency of the deflation. The example is the convection diffusion problem with Dirichlet boundary conditions in the unit square , where , This problem is discretized with a second-order finite difference scheme for a vertex centered location of unknowns. We adopt to satisfy the Péclet condition, where is the mesh size and is the number of points per direction. Here, , , and are taken; then the problem size is 1024 and has 4992 nonzero entries, which is real, sparse, and nonsymmetric. The primary system right-hand side comes from PDE. For convenience, we take the same vector as the dual system right-hand side. Their convergence behaviors are plotted in Figure 1.

Figure 1 shows the convergence histories of two methods. Using the initial guesses (22), DBiCG (without any deflated subspaces) converges rather slowly in the first run. The numerical behavior of DBiCG will be the same as the ones by applying BiCG to solve the first dual linear systems. The only difference is that the deflated spaces for the next run are generated during the first process of DBiCG. For the second run, we solve the same systems by DBiCG-sh with deflated spaces. Compared with the first run, the reduction in iteration is around in the second run.

6.2. Lattice QCD Problem

The second numerical experiments stem from a quantum chromodynamics (QCD) problem. QCD is the gauge theory that describes the strong nuclear force between quarks and gluons [20, 21]. Quark propagators are obtained by solving the inhomogeneous lattice Dirac equation , where is a large but sparse complex non-Hermitian matrix representing a periodic nearest neighbour coupling on a four-dimensional Euclidean space time lattice. Following [22], we take a preconditioning process which transforms from the original system to the odd even reduced system. That preconditioning process has one-half of the dimension and a smaller condition number than the original system; for details see [23, 24]. The number of right-hand sides is 4 and the is taken as a vector of all ones and three independent random vectors with entries form .

Figure 2 is helpful for seeing how the deflation works in practise. It is observed that DBiCG leads to less iterations than BiCG.

7. Conclusions

In this paper, we have derived a deflated BiCG method for dual linear systems with multiple RHSs. The proposed algorithm uses harmonic Ritz vectors to approximate left and right invariant subspaces inexpensively via small descent direction vectors found by subsequent runs of deflated BiCG and then derives the deflated subspaces for the next pair of dual linear systems. This process leads to faster convergence for the next pair of systems. Numerical examples illustrate the effectiveness of the proposed method, which will encourage us to apply the deflation technique to the BiCGSTAB algorithm in the near future.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Authors’ Contribution

All authors completed the paper together. All authors read and approved the final paper.

Acknowledgments

This research is supported by YBXSZC20131070, the National Natural Science Foundation of China (11026085, 11101071, and 51175443), and the Project sponsored by OATF (UESTC).