<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">OALibJ</journal-id><journal-title-group><journal-title>Open Access Library Journal</journal-title></journal-title-group><issn pub-type="epub">2333-9705</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/oalib.1105968</article-id><article-id pub-id-type="publisher-id">OALibJ-97369</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Biomedical&amp;Life Sciences</subject><subject> Business&amp;Economics</subject><subject> Chemistry&amp;Materials Science</subject><subject> Computer Science&amp;Communications</subject><subject> Earth&amp;Environmental Sciences</subject><subject> Engineering</subject><subject> Medicine&amp;Healthcare</subject><subject> Physics&amp;Mathematics</subject><subject> Social Sciences&amp;Humanities</subject></subj-group></article-categories><title-group><article-title>
 
 
  Generalized Shift-Splitting Preconditioner for Saddle Point Problems with Block Three-by-Three Structure
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Linna</surname><given-names>Wang</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Ke</surname><given-names>Zhang</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>Department of Mathematics, Shanghai Maritime University, Shanghai, China</addr-line></aff><pub-date pub-type="epub"><day>02</day><month>12</month><year>2019</year></pub-date><volume>06</volume><issue>12</issue><fpage>1</fpage><lpage>14</lpage><history><date date-type="received"><day>29,</day>	<month>November</month>	<year>2019</year></date><date date-type="rev-recd"><day>22,</day>	<month>December</month>	<year>2019</year>	</date><date date-type="accepted"><day>25,</day>	<month>December</month>	<year>2019</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  We propose a generalized shift-splitting iteration method for saddle point problems with block three-by-three structure. As a new iteration method, the method converges to the unique solution of the saddle point problem unconditionally. When exploited as a preconditioner, the spectral distribu-tion of the preconditioned matrix is investigated. Numerical experiments show that the new variant is efficient in speeding up GMRES for solving the block three-by-three saddle point problem.
 
</p></abstract><kwd-group><kwd>Saddle Point Problem</kwd><kwd> Generalized Shift-Splitting</kwd><kwd> Krylov Subspace</kwd><kwd> GMRES</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>We consider the saddle point problems with the following block three-by-three structure</p><p>[ A B T 0 − B 0 − C T 0 C 0 ] [ x y z ] = [ f g h ] or A u = b , (1)</p><p>where A ∈ ℝ n &#215; n is a symmetric positive definite matrix, B ∈ ℝ m &#215; n and C ∈ ℝ s &#215; m are matrices of full row rank, f ∈ ℝ n , g ∈ ℝ m and h ∈ ℝ s are given vectors. The linear system of equations (1) has many practical applications in scientific computing and engineering fields, including the constrained quadratic optimization problem, the constrained least squares problem and the computational fluid dynamics [<xref ref-type="bibr" rid="scirp.97369-ref1">1</xref>].</p><p>In practice, the coefficient matrix A in (1) is generally sparse and of large size. Therefore, iterative methods are usually preferred for their low memory requirement per iteration. Among these candidates, the Uzawa-type methods [<xref ref-type="bibr" rid="scirp.97369-ref2">2</xref>], the matrix splitting methods [<xref ref-type="bibr" rid="scirp.97369-ref3">3</xref>] and the Krylov subspace methods [<xref ref-type="bibr" rid="scirp.97369-ref4">4</xref>] have received much attention during the past decades. For instance, the Uzawa method [<xref ref-type="bibr" rid="scirp.97369-ref2">2</xref>] is a classical approach which is known for its low computational overhead and easy implementation. To improve the numerical performance, some Uzawa-type variants have been proposed recently which include the inexact Uzawa [<xref ref-type="bibr" rid="scirp.97369-ref5">5</xref>] [<xref ref-type="bibr" rid="scirp.97369-ref6">6</xref>] [<xref ref-type="bibr" rid="scirp.97369-ref7">7</xref>], Uzawa-SOR [<xref ref-type="bibr" rid="scirp.97369-ref8">8</xref>] and Uzawa-PSS [<xref ref-type="bibr" rid="scirp.97369-ref9">9</xref>], etc. The other way for solving the saddle point problems is to exploit the matrix splitting. By using the Hermitian and skew-Hermitian splitting (HSS), Bai et al. [<xref ref-type="bibr" rid="scirp.97369-ref3">3</xref>] propose the HSS iteration method. Following this reasoning, some efficient variants such as the accelerated Hermitian and skew-Hermitian splitting (AHSS) [<xref ref-type="bibr" rid="scirp.97369-ref10">10</xref>], the modified Hermitian and skew-Hermitian splitting (MHSS) [<xref ref-type="bibr" rid="scirp.97369-ref11">11</xref>] and the relaxed Hermitian and skew- Hermitian splitting (RHSS) [<xref ref-type="bibr" rid="scirp.97369-ref12">12</xref>] have been proposed henceforth. Recently, the sophisticated Krylov subspace methods have been used to solve the saddle point problems. Due to the structure of the saddle point matrices, however, a slow convergence or even stagnation is often witnessed during the actual computation. Such drawback can be alleviated by employing an appropriate preconditioner. In the context of saddle point problems, many efficient preconditioners, to name just a few, the block diagonal preconditioners, the constrained preconditioners, the HSS-based preconditioners, have been developed; see [<xref ref-type="bibr" rid="scirp.97369-ref13">13</xref>] [<xref ref-type="bibr" rid="scirp.97369-ref14">14</xref>] [<xref ref-type="bibr" rid="scirp.97369-ref15">15</xref>] [<xref ref-type="bibr" rid="scirp.97369-ref16">16</xref>] and the more recent monograph [<xref ref-type="bibr" rid="scirp.97369-ref17">17</xref>] for detail.</p><p>In [<xref ref-type="bibr" rid="scirp.97369-ref18">18</xref>], Bai et al. propose a class of shift-splitting iteration method for solving non-Hermitian positive definite linear system A u = b . It can be recast in the following way. Suppose that A ∈ ℝ n &#215; n is a non-Hermitian positive definite matrix. Then the shift-splitting of the coefficient matrix A is given by</p><p>A = M ( α ) − N ( α ) = 1 2 ( α I + A ) − 1 2 ( α I − A ) ,</p><p>which leads naturally to the shift-splitting iteration scheme</p><p>u k + 1 = M − 1 ( α ) N ( α ) u k + M − 1 ( α ) b ,     k = 0 , 1 , 2 , ⋯</p><p>Theoretical analysis shows that shift-splitting iteration is endowed with an unconditional convergence. By using this sound convergence property, Cao et al. come up with the shift-splitting to solve the saddle point problems and propose a shift-splitting preconditioner and a local shift-splitting variant [<xref ref-type="bibr" rid="scirp.97369-ref19">19</xref>]. Numerical experiments show that the proposed two shift-splitting-type preconditioners are superior to the HSS preconditioner in terms of CPU time and iteration steps. The shift-splitting technique has also been generalized by incorporating two relaxation parameters [<xref ref-type="bibr" rid="scirp.97369-ref20">20</xref>]. Furthermore, Salkuyeh et al. extend it to solve the generalized saddle point problems and propose a modified generalized shift-splitting preconditioner [<xref ref-type="bibr" rid="scirp.97369-ref21">21</xref>].</p><p>By taking into account the special structure of (1), Cao [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] proposes shift- splitting preconditioners for solving (1). Motivated by [<xref ref-type="bibr" rid="scirp.97369-ref20">20</xref>] and [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>], we devise a new generalized shift-splitting (GSS) iteration scheme for the structured linear system (1). A corresponding GSS preconditioner is induced to accelerate the convergence of GMRES. Theoretical results on the convergence of GSS iteration method and the eigenvalue distribution of the preconditioned matrix are also given.</p><p>The organization of this paper is as follows. In Section 2, we introduce the generalized shift-splitting iteration method for solving the block three-by-three saddle point problem and look into its convergence property. In Section 3, we obtain a GSS preconditioner derived from the GSS iteration and analyze the spectrum of the preconditioned matrix. In Section 4, some numerical experiments are carried out to illustrate the effectiveness of GSS by comparing it with other shift-splitting preconditioners given in [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>]. Finally, some conclusions are given in Section 5.</p></sec><sec id="s2"><title>2. Generalized Shift-Splitting Iteration Method and Its Convergence</title><p>The proposed generalized shift-splitting (GSS) iteration is based on the work of [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>]. Therefore, it is reasonable for us to recap briefly the shift splitting used in [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] before introducing the new iteration method in this section.</p><p>In its simplest form, the shift splitting (SS) of the coefficient matrix A in (1) goes as follows</p><p>A = 1 2 ( α I + A ) − 1 2 ( α I − A ) = 1 2 [ α I + A B T 0 − B α I − C T 0 C α I ] − 1 2 [ α I − A − B T 0 B α I C T 0 − C α I ] , (2)</p><p>where I is the identity matrix with conforming size. The parameter α in (2) is used to monitor the convergence of the SS iteration method and hence the spectrum of the preconditioned matrix. In other words, α plays the same role in adjusting the two block diagonal matrices in (2), i.e.,</p><p>[ A B T − B 0 ] ∈ ℝ ( m + n ) &#215; ( m + n ) and 0 ∈ ℝ s &#215; s . (3)</p><p>However, the reason for choosing a single parameter to control simultaneously these two block diagonal matrices above remains elusive. Instead, it seems more appealing to investigate the convergence if the two block diagonal matrices are affected by two different parameters separately. This is the main motivation of our work. To this end, we refine the splitting (2) by embedding an extra parameter β in the ( 3,3 ) -block, which yields the following generalized shift- splitting</p><p>A = M ( α , β ) − N ( α , β ) = 1 2 ( Ω + A ) − 1 2 ( Ω − A ) = 1 2 [ α I + A B T 0 − B α I − C T 0 C β I ] − 1 2 [ α I − A − B T 0 B α I C T 0 − C β I ] . (4)</p><p>Here α &gt; 0 , β &gt; 0 and Ω = [ α I α I β I ] . Then it is trivial to find that the generalized shift-splitting (4) reduces to the shift-splitting (2) if α = β .</p><p>Using the splitting (4), we obtain the following stationary iteration</p><p>u k + 1 = Γ G S S u k + c , (5)</p><p>where Γ G S S = M − 1 ( α , β ) N ( α , β ) , c = M − 1 ( α , β ) b and k = 0,1, ⋯ . To put it another way, the generalized shift-splitting method (GSS) for the block three-by- three saddle point problem (1) that can be stated as follows. Given an initial vector u 0 , compute</p><p>1 2 [ α I + A B T 0 − B α I − C T 0 C β I ] u k + 1 = 1 2 [ α I − A − B T 0 B α I C T 0 − C β I ] u k + [ f g h ] (6)</p><p>until u k converges, where k = 0,1, ⋯ .</p><p>It is known that the GSS iteration method (5) enjoys the unconditional convergence if the spectral radius of the iteration matrix Γ G S S is less than 1. The following results are adapted from [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] and [<xref ref-type="bibr" rid="scirp.97369-ref23">23</xref>] which are instrumental in proving such sound convergence property.</p><p>Lemma 1. Suppose that A ∈ ℝ n &#215; n is a symmetric positive definite matrix, B ∈ ℝ m &#215; n and C ∈ ℝ s &#215; m are of full row rank. Let λ be an eigenvalue of the saddle point matrix A , then</p><p>R e ( λ ) &gt; 0.</p><p>Proof. The proof can be found in ( [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>], Lemma 2.2).</p><p>Lemma 2. Let W ∈ ℝ n &#215; n be a non-Hermitian positive semidefinite matrix and E ( W , δ ) = ( δ I + W ) − 1 ( δ I − W ) be the extrapolated Cayley transform with δ &gt; 0 . Then</p><p>1) the spectral radius of E ( W , δ ) is bounded by 1, i.e., ρ ( E ( W , δ ) ) ≤ 1 ;</p><p>2) ρ ( E ( W , δ ) ) = 1 if and only if the matrix W has a (reducing) eigenvalue of the form ι ξ with ξ ∈ ℝ and ι the imaginary unit.</p><p>Proof. See ( [<xref ref-type="bibr" rid="scirp.97369-ref23">23</xref>], Theorem 2.1) for detail.</p><p>The following theorem on the convergence of GSS iteration method comes out as a result of Lemma 1 and Lemma 2.</p><p>Theorem 1. Suppose that A ∈ ℝ n &#215; n is a symmetric positive definite matrix, B ∈ ℝ m &#215; n and C ∈ ℝ s &#215; m are matrices of full row rank. Let α &gt; 0 and β &gt; 0 . Then the spectral radius of Γ G S S defined in (5) satisfies</p><p>ρ ( Γ G S S ) &lt; 1,</p><p>i.e., the GSS iteration method converges to the unique solution of (1) unconditionally.</p><p>Proof. By (4) and (5), we rewrite the iteration matrix Γ G S S as</p><p>Γ G S S = ( Ω + A ) − 1 ( Ω − A ) = Ω − 1 2 ( I + Ω − 1 2 A Ω − 1 2 ) − 1 ( I − Ω − 1 2 A Ω − 1 2 ) Ω 1 2 .</p><p>Let A ^ = Ω − 1 2 A Ω − 1 2 . It is easy to see that Γ G S S is similar to the matrix Γ ^ G S S = ( I + � ^ ) − 1 ( I − � ^ ) . Therefore, it suffices to prove ρ ( Γ ^ G S S ) &lt; 1 . By the construction of A ^ = Ω − 1 2 A Ω − 1 2 , we have</p><p>A ^ = [ α I α I β I ] − 1 2 [ A B T 0 − B 0 − C T 0 C 0 ] [ α I α I β I ] − 1 2 = [ α − 1 A α − 1 B T 0 − α − 1 B 0 − ( α β ) − 1 2 C T 0 ( α β ) − 1 2 C 0 ] .</p><p>Since α and β are positive, then α − 1 A is a symmetric positive definite matrix, α − 1 B and ( α β ) − 1 2 C are matrices of full row rank. Thus A ^ is a</p><p>nonsymmetric positive semi-definite matrix. Moreover, it follows from Lemma 1 that R e ( λ ( � ^ ) ) &gt; 0 . Therefore, it can be deduced from Lemma 2 that ρ ( Γ ^ G S S ) ≤ 1 . The equality ρ ( Γ ^ G S S ) = 1 holds if and only if A ^ has a (reducing) eigenvalue of the form ι ξ , which is impossible because R e ( λ ( A ^ ) ) &gt; 0 . It turns out that ρ ( Γ ^ G S S ) &lt; 1 . As a result, ρ ( Γ G S S ) &lt; 1 which completes the proof.</p></sec><sec id="s3"><title>3. GSS Preconditioner and Its Properties</title><p>Though the GSS iteration method is proved to converge unconditionally, its convergence can be rather slow when compared with the involved Krylov subspace methods [<xref ref-type="bibr" rid="scirp.97369-ref24">24</xref>]. In the context of linear system solvers, it is more interesting to exploit the generalized shift-splitting as a preconditioner to accelerate the Krylov subspace methods like GMRES.</p><p>In this section, we present the following generalized shift-splitting preconditioner (GSS)</p><p>P G S S = 1 2 [ α I + A B T 0 − B α I − C T 0 C β I ] . (7)</p><p>When applying a preconditioner, the convergence of the preconditioned linear system is closely related with the eigenvalue distribution. The following finding shows that the eigenvalues of GSS-preconditioned matrix A P G S S − 1 cluster in a circle centered at the point ( 1,0 ) with radius less than 1. We adopt the right preconditioning here such that the residual of the original saddle point problem is the same as that of its right-preconditioned counterpart.</p><p>Theorem 2. Suppose that A ∈ ℝ n &#215; n is a symmetric positive definite matrix, B ∈ ℝ m &#215; n and C ∈ ℝ s &#215; m are matrices of full row rank. Let θ be an eigenvalue of A P G S S − 1 , then</p><p>| 1 − θ | &lt; 1.</p><p>Proof. Since the preconditioned matrix A P G S S − 1 is similar to P G S S − 1 A , then it is only necessary to investigate the spectrum of P G S S − 1 A . Since P G S S = M ( α , β ) , then it follows from (4) that</p><p>P G S S − 1 A = P G S S − 1 ( M ( α , β ) − N ( α , β ) ) = M ( α , β ) − 1 ( M ( α , β ) − N ( α , β ) ) = I − Γ G S S .</p><p>From Theorem 1, we know that | 1 − θ | &lt; 1 , where θ is an eigenvalue of P G S S − 1 A .</p><p>Before ending this section, we give some implementation details when applying the GSS preconditioner. In actual computations, a matrix-vector product P G S S − 1 r is often needed which can be solved from the linear system P G S S z = r . Note that the preconditioner P G S S can be decomposed as</p><p>P G S S = 1 2 [ I B T ( α I + 1 β C T C ) − 1 0 0 I − 1 β C T 0 0 I ]     ⋅ [ α I + A + B T ( α I + 1 β C T C ) − 1 B 0 0 0 α I + 1 β C T C 0 0 0 β I ]     ⋅ [ I 0 0 − ( α I + 1 β C T C ) − 1 B I 0 0 1 β C I ] . (8)</p><p>Let r = [ r 1 T , r 2 T , r 3 T ] T and z = [ z 1 T , z 2 T , z 3 T ] T , where r 1 , z 1 ∈ ℝ n , r 2 , z 2 ∈ ℝ m and r 3 , z 3 ∈ ℝ s . By using the decomposition (8), we obtain the following subroutine for solving z = P G S S − 1 r .</p><p>1) Solve w 1 from ( α I + 1 β C T C ) w 1 = 2 r 2 + 2 β C T r 3 ;</p><p>2) Solve z 1 from ( α I + A + B T ( α I + 1 β C T C ) − 1 B ) z 1 = 2 r 1 − B T w 1 ;</p><p>3) Solve w 2 from ( α I + 1 β C T C ) w 2 = B z 1 ;</p><p>4) Update z 2 = w 1 + w 2 ;</p><p>5) Update z 3 = 1 β ( 2 r 3 − C z 2 ) .</p><p>In computing P G S S − 1 r , the computational overhead by GSS is the same as that by SS [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>]. As indicated in the numerical examples, however, an appropriate choice of ( α , β ) generally yields better numerical performance (concerning CPU time and iteration steps) than using a single parameter α (as in SS). In this sense, the GSS can be regarded as a more promising variant than its predecessor SS.</p></sec><sec id="s4"><title>4. Numerical Experiments</title><p>In this section, we give some numerical experiments to illustrate the effectiveness of the new preconditioner GSS in terms of the number of iteration steps (iter), CPU time in seconds (time) and the relative residual norm (res). For completeness, we display both the number of restarts and the number of inner steps in the last restart; see, for instance, <xref ref-type="table" rid="table3">Table 3</xref>. The unconditioned GMRES(k), the shift-spliting-preconditioned GMRES(k) (SS) [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] and the relaxed shift- splitting-preconditioned GMRES(k) (RSS) [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] are employed for comparison, where k is the restarting frequency. In what follows, the right preconditioning is used for SS, RSS and GSS, the reason of which is given in Section 3. We set the restarting frequency k to be 5 and the initial guess u 0 to be the zero vector. The right-hand side vector b in (1) is given by 10 ⋅ r a n d ( m + n + s ,1 ) . All algorithms mentioned above terminate if ‖ b − A u i ‖ 2 / ‖ b ‖ 2 &lt; 10 − 6 within 1500 restarts, where u i is the ith iterate. Numerical experiments are carried out on a laptop using MATLAB 2014b with Intel Core (8G RAM) under Windows 10 system.</p><p>The testing problem is adapted from [<xref ref-type="bibr" rid="scirp.97369-ref25">25</xref>]. It is a block three-by-three saddle point problem with A, B and C of the following structure</p><p>A = [ I ⊗ T + T ⊗ I 0 0 I ⊗ T + T ⊗ I ] ∈ ℝ 2 p 2 &#215; 2 p 2 , B = [ I ⊗ F F ⊗ I ] ∈ ℝ p 2 &#215; 2 p 2 , C = E ⊗ F ∈ ℝ p 2 &#215; p 2 ,</p><p>where T = 1 h 2 ⋅ tridiag ( − 1,2, − 1 ) ∈ ℝ p &#215; p , F = 1 h ⋅ tridiag ( 0,1, − 1 ) ∈ ℝ p &#215; p , E = diag ( 1, p + 1, ⋯ , p 2 − p + 1 ) with ⊗ being the Kronecker product and h = 1 p + 1 the grid size.</p><sec id="s4_1"><title>4.1. Choice of the Parameter Pair ( α , β )</title><p>As mentioned in Section 2, the main motivation for embracing an extra parameter β in GSS is to strike a balance in controlling the sub-matrices in (3). A proper choice of α and β will make the GSS preconditioner more appealing. As shown in (7), the GSS preconditioner P G S S becomes closer to (half of) the saddle point matrix A as α and β decrease. This implies that the choice α = β = 0 seems to be the optimal one. However, we do not suggest using extremely small values of α and β for numerical concerns. Instead, we use the experimental (optimal) values of α and β in the following experiments.</p><p>To this end, we first tabulate the CPU time of the GSS preconditioner with varying α and β for p = 16 and p = 32 in <xref ref-type="table" rid="table1">Table 1</xref> and <xref ref-type="table" rid="table2">Table 2</xref>, respectively. The parameter pair ( α , β ) = ( 0.01,0.001 ) yields the shortest CPU time in both tables. To further verify this finding, we carry out more experiments in <xref ref-type="fig" rid="fig1">Figure 1</xref> and <xref ref-type="fig" rid="fig2">Figure 2</xref> by depicting the number of total iteration steps<sup>1</sup> and CPU time of GSS with varying β when α is chosen to be 0.01, 0.1 and 1, respectively. Some remarks are in order. Loosely speaking, for a fixed value of α , the number of total iteration steps and CPU time increase as β goes up although there are some zigzags; see <xref ref-type="fig" rid="fig1">Figure 1</xref> and <xref ref-type="fig" rid="fig2">Figure 2</xref>. Moreover, a similar pattern is also observed for β when the value of β is fixed while α varies; for instance, when β = 50 , the total iteration steps increase as α changes from 0.01 to 1, which reads readily by comparing the subplots (a), (c) and (e) in <xref ref-type="fig" rid="fig1">Figure 1</xref>. This justifies our choice of using ( α , β ) = ( 0.01,0.001 ) as the experimental optimal value.</p><p>Based on the above experiments, we use ( α , β ) = ( 0.01,0.001 ) as the experimental optimal choice for α and β in GSS. As for the optimal value of α</p><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> CPU time of the GSS preconditioner with different values of α and β ( p = 16 )</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >α time β</th><th align="center" valign="middle" >0.001</th><th align="center" valign="middle"  colspan="3"  >0.01</th><th align="center" valign="middle"  colspan="2"  >0.1</th><th align="center" valign="middle"  colspan="2"  >1</th><th align="center" valign="middle" >5</th><th align="center" valign="middle"  colspan="2"  >10</th></tr></thead><tr><td align="center" valign="middle" >0.001</td><td align="center" valign="middle" >0.0391</td><td align="center" valign="middle"  colspan="3"  >0.0306</td><td align="center" valign="middle"  colspan="2"  >0.0535</td><td align="center" valign="middle"  colspan="2"  >0.0704</td><td align="center" valign="middle" >0.0921</td><td align="center" valign="middle"  colspan="2"  >0.1283</td></tr><tr><td align="center" valign="middle" >0.01</td><td align="center" valign="middle" >0.0336</td><td align="center" valign="middle"  colspan="3"  >0.0550</td><td align="center" valign="middle"  colspan="2"  >0.0512</td><td align="center" valign="middle"  colspan="2"  >0.0854</td><td align="center" valign="middle" >0.1321</td><td align="center" valign="middle"  colspan="2"  >0.1473</td></tr><tr><td align="center" valign="middle" >0.1</td><td align="center" valign="middle" >0.0506</td><td align="center" valign="middle"  colspan="3"  >0.0515</td><td align="center" valign="middle"  colspan="2"  >0.0675</td><td align="center" valign="middle"  colspan="2"  >0.1122</td><td align="center" valign="middle" >0.1507</td><td align="center" valign="middle"  colspan="2"  >0.2250</td></tr><tr><td align="center" valign="middle" >1</td><td align="center" valign="middle" >0.0739</td><td align="center" valign="middle"  colspan="3"  >0.0612</td><td align="center" valign="middle"  colspan="2"  >0.0886</td><td align="center" valign="middle"  colspan="2"  >0.1484</td><td align="center" valign="middle" >0.2838</td><td align="center" valign="middle"  colspan="2"  >0.4180</td></tr><tr><td align="center" valign="middle" >5</td><td align="center" valign="middle"  colspan="2"  >0.1056</td><td align="center" valign="middle" >0.1041</td><td align="center" valign="middle"  colspan="2"  >0.1393</td><td align="center" valign="middle"  colspan="2"  >0.2813</td><td align="center" valign="middle"  colspan="3"  >0.7082</td><td align="center" valign="middle" >1.3993</td></tr><tr><td align="center" valign="middle" >10</td><td align="center" valign="middle"  colspan="2"  >0.1443</td><td align="center" valign="middle" >0.1560</td><td align="center" valign="middle"  colspan="2"  >0.1744</td><td align="center" valign="middle"  colspan="2"  >0.4298</td><td align="center" valign="middle"  colspan="3"  >0.9397</td><td align="center" valign="middle" >2.1133</td></tr><tr><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td><td align="center" valign="middle" ></td></tr></tbody></table></table-wrap><p>in SS and RSS, we follow the choice α = 0.01 used in [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>] and regard it as the empirical optimal value.</p></sec><sec id="s4_2"><title>4.2. Comparison with Other SS-Type Methods</title><p>In this subsection, we compare the numerical performance of GSS with SS and</p><table-wrap id="table2" ><label><xref ref-type="table" rid="table2">Table 2</xref></label><caption><title> CPU time of the GSS preconditioner with different values of α and β ( p = 32 )</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >α time β</th><th align="center" valign="middle" >0.001</th><th align="center" valign="middle" >0.01</th><th align="center" valign="middle" >0.1</th><th align="center" valign="middle" >1</th><th align="center" valign="middle" >5</th><th align="center" valign="middle" >10</th></tr></thead><tr><td align="center" valign="middle" >0.001</td><td align="center" valign="middle" >1.4348</td><td align="center" valign="middle" >1.3374</td><td align="center" valign="middle" >1.8127</td><td align="center" valign="middle" >2.5649</td><td align="center" valign="middle" >3.1475</td><td align="center" valign="middle" >4.3422</td></tr><tr><td align="center" valign="middle" >0.01</td><td align="center" valign="middle" >1.3786</td><td align="center" valign="middle" >2.1595</td><td align="center" valign="middle" >1.8248</td><td align="center" valign="middle" >2.7657</td><td align="center" valign="middle" >3.7720</td><td align="center" valign="middle" >4.5090</td></tr><tr><td align="center" valign="middle" >0.1</td><td align="center" valign="middle" >2.3747</td><td align="center" valign="middle" >2.0354</td><td align="center" valign="middle" >2.4876</td><td align="center" valign="middle" >3.1519</td><td align="center" valign="middle" >5.4760</td><td align="center" valign="middle" >7.0319</td></tr><tr><td align="center" valign="middle" >1</td><td align="center" valign="middle" >2.5129</td><td align="center" valign="middle" >2.5942</td><td align="center" valign="middle" >3.2291</td><td align="center" valign="middle" >5.2169</td><td align="center" valign="middle" >10.1217</td><td align="center" valign="middle" >15.6771</td></tr><tr><td align="center" valign="middle" >5</td><td align="center" valign="middle" >3.7049</td><td align="center" valign="middle" >3.8040</td><td align="center" valign="middle" >5.1990</td><td align="center" valign="middle" >9.5487</td><td align="center" valign="middle" >24.7657</td><td align="center" valign="middle" >47.8987</td></tr><tr><td align="center" valign="middle" >10</td><td align="center" valign="middle" >4.4818</td><td align="center" valign="middle" >4.4699</td><td align="center" valign="middle" >5.6668</td><td align="center" valign="middle" >13.9554</td><td align="center" valign="middle" >35.1132</td><td align="center" valign="middle" >74.5482</td></tr></tbody></table></table-wrap><p>RSS regarding CPU time and iteration steps. It should be noted that all sub-linear equations involved in computing matrix-vector product P − 1 r are solved by direct methods.</p><p>It is known that the spectrum imposes a great effect on the convergence of the preconditioned linear system. To begin with the discussion, we plot respectively the spectral distributions of the original saddle point matrix A , the GSS-pre- conditioned matrix A P G S S − 1 , the SS-preconditioned matrix A P S S − 1 , and the RSS-preconditioned matrix A P R S S − 1 in <xref ref-type="fig" rid="fig3">Figure 3</xref>. As illustrated, the eigenvalues of the original saddle point matrix A are well separated, which makes the unpreconditioned GMRES method cumbersome. After employing the SS-type preconditioners, however, the eigenvalues of the preconditioned matrices become much more clustered. In particular, the eigenvalues of the GSS-precondi- tioned matrix are more clustered than those of SS and RSS; see <xref ref-type="fig" rid="fig3">Figure 3</xref>. Thus it can be expected that GSS will bring about an improvement over SS and RSS in solving (1). This intuition is echoed by <xref ref-type="table" rid="table3">Table 3</xref>, where the saddle point problem (1) of four different sizes are considered. In [<xref ref-type="bibr" rid="scirp.97369-ref22">22</xref>], it is stated that the iteration steps of both the SS and RSS preconditioned iteration methods remain constant</p><table-wrap id="table3" ><label><xref ref-type="table" rid="table3">Table 3</xref></label><caption><title> Numerical results for three preconditioned GMRES methods with different grid sizes</title></caption><table><tbody><thead><tr><th align="center" valign="middle" ></th><th align="center" valign="middle"  colspan="3"  >SS</th><th align="center" valign="middle"  colspan="3"  >RSS</th><th align="center" valign="middle"  colspan="3"  >GSS</th></tr></thead><tr><td align="center" valign="middle" >size</td><td align="center" valign="middle" >iter</td><td align="center" valign="middle" >time</td><td align="center" valign="middle" >res</td><td align="center" valign="middle" >iter</td><td align="center" valign="middle" >time</td><td align="center" valign="middle" >res</td><td align="center" valign="middle" >iter</td><td align="center" valign="middle" >time</td><td align="center" valign="middle" >res</td></tr><tr><td align="center" valign="middle" >p = 16</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >0.0744</td><td align="center" valign="middle" >9.3431e−09</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >0.0651</td><td align="center" valign="middle" >5.1792e−09</td><td align="center" valign="middle" >1(2)</td><td align="center" valign="middle" >0.0415</td><td align="center" valign="middle" >4.5483e−07</td></tr><tr><td align="center" valign="middle" >p = 32</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >1.9894</td><td align="center" valign="middle" >8.5844e−09</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >1.8084</td><td align="center" valign="middle" >4.4832e−09</td><td align="center" valign="middle" >1(2)</td><td align="center" valign="middle" >1.2381</td><td align="center" valign="middle" >3.4408e−07</td></tr><tr><td align="center" valign="middle" >p = 48</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >16.5567</td><td align="center" valign="middle" >7.8697e−09</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >16.2467</td><td align="center" valign="middle" >2.7591e−09</td><td align="center" valign="middle" >1(2)</td><td align="center" valign="middle" >10.9178</td><td align="center" valign="middle" >3.1121e−07</td></tr><tr><td align="center" valign="middle" >p = 64</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >88.9495</td><td align="center" valign="middle" >7.6631e−09</td><td align="center" valign="middle" >1(3)</td><td align="center" valign="middle" >84.8754</td><td align="center" valign="middle" >2.641e−09</td><td align="center" valign="middle" >1(2)</td><td align="center" valign="middle" >57.3213</td><td align="center" valign="middle" >2.7896e−07</td></tr></tbody></table></table-wrap><p>even if the problem size 4 p 2 soars. Fortunately, this desirable property has also been carried over to GSS. Furthermore, GSS outperforms SS and RSS in that it requires the shortest CPU time and the least number of iteration steps in all test problems, as observed in <xref ref-type="table" rid="table3">Table 3</xref>. In light of this, we conclude that GSS is a competitive shift-splitting variant for solving the structured saddle point problem (1).</p></sec></sec><sec id="s5"><title>5. Conclusion</title><p>The shift-splitting iteration method/preconditioner for solving the block three- by-three saddle point problem (1) uses a single parameter to control the convergence. Being aware of the different roles of the block diagonal matrices in the saddle point matrix, we introduce an additional parameter to monitor the ( 3,3 ) - block, which yields a generalized shift-splitting iteration method and a corresponding auxiliary preconditioner. By looking into the spectrum of the iteration matrix, we prove the unconditional convergence of the proposed method. We also apply the induced generalized shift-splitting preconditioner to speed up the convergence of GMRES. It is proved that the preconditioned matrix using the new preconditioner has a well-clustered spectrum which is verified by the numerical examples. Future works include finding the theoretically optimal choice of the parameters in the new scheme and develop other efficient shift-splitting preconditioners.</p></sec><sec id="s6"><title>Acknowledgements</title><p>This work is supported by the National Natural Science Foundation (grant number: 11601323) and the Key Discipline Fund (2018) of College of Arts and Sciences in Shanghai Maritime University. The authors would like to thank the referees for their constructive suggestions.</p></sec><sec id="s7"><title>Conflicts of Interest</title><p>The authors declare no conflicts of interest regarding the publication of this paper.</p></sec><sec id="s8"><title>Cite this paper</title><p>Wang, L.N. and Zhang, K. (2019) Generalized Shift-Split- ting Preconditioner for Saddle Point Pro- blems with Block Three-by-Three Structure. Open Access Library Journal, 6: e5968. https://doi.org/10.4236/oalib.1105968</p></sec><sec id="s9"><title>NOTES</title></sec></body><back><ref-list><title>References</title><ref id="scirp.97369-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Benzi, M., Golub, G.H. and Liesen, J. (2005) Numerical Solution of Saddle Point Prob-lems. Acta Numerica, 14, 1-137. https://doi.org/10.1017/S0962492904000212</mixed-citation></ref><ref id="scirp.97369-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Arrow, K.J., Hurwicz, L. and Uzawa, H. (1958) Studies in Nonlinear Programming. Stanford University Press, Redwood City, CA.</mixed-citation></ref><ref id="scirp.97369-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z., Golub, G.H. and Ng, M.K. (2003) Hermitian and Skew-Hermitian Splitting Methods for Non-Hermitian Positive Definite Linear Sys-tems. SIAM Journal on Matrix Analysis and Applications, 24, 603-626. https://doi.org/10.1137/S0895479801395458</mixed-citation></ref><ref id="scirp.97369-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z. (2015) Motiva-tions and Realizations of Krylov Subspace Methods for Large Sparse Linear Systems. Journal of Computational and Applied Mathematics, 283, 71-78. https://doi.org/10.1016/j.cam.2015.01.025</mixed-citation></ref><ref id="scirp.97369-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Bramble, J.H., Pasciak, J.E. and Vassilev, A.T. (1997) Analysis of the Inexact Uzawa Algorithm for Saddle Point Prob-lems. SIAM Journal on Numerical Analysis, 34, 1072-1092. https://doi.org/10.1137/S0036142994273343</mixed-citation></ref><ref id="scirp.97369-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Z.-H. (2003) Fast Uzawa Algorithm for Generalized Saddle Point Problems. Applied Numerical Mathematics, 46, 157-171.https://doi.org/10.1016/S0168-9274(03)00023-0</mixed-citation></ref><ref id="scirp.97369-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z. and Wang, Z.-Q. (2008) On Parameterized Inexact Uzawa Methods for Generalized Saddle Point Problems. Linear Algebra and Its Applications, 428, 2900- 2932. https://doi.org/10.1016/j.laa.2008.01.018</mixed-citation></ref><ref id="scirp.97369-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple">Zhang, J. and Shang, J. (2010) A Class of Uzawa-SOR Methods for Saddle Point Problems. Applied Mathematics and Computation, 216, 2163-2168.https://doi.org/10.1016/j.amc.2010.03.051</mixed-citation></ref><ref id="scirp.97369-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Y. and Yi, S.-C. (2016) A Class of Uzawa-PSS Iteration Methods for Nonsingular and Singular Non-Hermitian Saddle Point Problems. Applied Mathematics and Computation, 275, 41-49. https://doi.org/10.1016/j.amc.2015.11.049</mixed-citation></ref><ref id="scirp.97369-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z. and Golub, G.H. (2007) Accelerated Hermitian and Skew-Hermitian Splitting Iteration Methods for Saddle-Point Problems. IMA Journal of Numerical Analysis, 27, 1-23. https://doi.org/10.1093/imanum/drl017</mixed-citation></ref><ref id="scirp.97369-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z., Benzi, M. and Chen, F. (2010) Modified HSS Iteration Methods for a Class of Complex Symmetric Linear Sys-tems. Computing, 87, 93-111.https://doi.org/10.1007/s00607-010-0077-0</mixed-citation></ref><ref id="scirp.97369-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Y., Yao, L., Jiang, M. and Niu, Q. (2013) A Relaxed HSS Preconditioner for Saddle Point Problems from Meshfree Discretization. Journal of Computational and Applied Mathematics, 31, 398-421. https://doi.org/10.4208/jcm.1304-m4209</mixed-citation></ref><ref id="scirp.97369-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple">Pan, J.-Y., Ng, M.K. and Bai, Z.-Z. (2006) New Preconditioners for Saddle Point Problems. Applied Mathematics and Computation, 172, 762-771.https://doi.org/10.1016/j.amc.2004.11.016</mixed-citation></ref><ref id="scirp.97369-ref14"><label>14</label><mixed-citation publication-type="other" xlink:type="simple">Benzi, M. and Guo, X.-P. (2011) A Dimensional Split Preconditioner for Stokes and Linearized Na-vier?-Stokes Equations. Applied Numerical Mathematics, 61, 66-76.https://doi.org/10.1016/j.apnum.2010.08.005</mixed-citation></ref><ref id="scirp.97369-ref15"><label>15</label><mixed-citation publication-type="other" xlink:type="simple">Zhang, G.-F., Ren, Z.-R. and Zhou, Y.-Y. (2011) On HSS-Based Constraint Preconditioners for Generalized Saddle-Point Problems. Numerical Algorithms, 57, 273-287. https://doi.org/10.1007/s11075-010-9428-3</mixed-citation></ref><ref id="scirp.97369-ref16"><label>16</label><mixed-citation publication-type="other" xlink:type="simple">Wang, N.-N. and Li, J.-C. (2019) A Class of New Extended Shift-Splitting Preconditioners for Saddle Point Problems. Journal of Computational and Applied Mathematics, 357, 123-145. https://doi.org/10.1016/j.cam.2019.02.015</mixed-citation></ref><ref id="scirp.97369-ref17"><label>17</label><mixed-citation publication-type="other" xlink:type="simple">Rozlo?nk, M. (2018) Saddle-Point Problems and Their Iterative Solution. Birkh?user. https://doi.org/10.1007/978-3-030-01431-5 </mixed-citation></ref><ref id="scirp.97369-ref18"><label>18</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z., Yin, J.-F. and Su, Y.-F. (2006) A Shift-Splitting Preconditioner for Non-Hermitian Positive Definite Matrices. Journal of Computational and Applied Mathematics, 24, 539-552.</mixed-citation></ref><ref id="scirp.97369-ref19"><label>19</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Y., Du, J. and Niu, Q. (2014) Shift-Splitting Preconditioners for Saddle Point Problems. Journal of Computational and Applied Mathematics, 272, 239-250.https://doi.org/10.1016/j.cam.2014.05.017</mixed-citation></ref><ref id="scirp.97369-ref20"><label>20</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Y., Tao, H. and Jiang, M. (2014) Generalized Shift Splitting Preconditioners for Saddle Point Problems, in Chinese. Mathematica Numerica Sinica, 36, 16-26.</mixed-citation></ref><ref id="scirp.97369-ref21"><label>21</label><mixed-citation publication-type="other" xlink:type="simple">Salkuyeh, D.K., Masoudi, M. and Hezari, D. (2015) On the Generalized Shift-Splitting Preconditioner for Saddle Point Problems. Applied Mathematics Letters, 48, 55-61. https://doi.org/10.1016/j.aml.2015.02.026</mixed-citation></ref><ref id="scirp.97369-ref22"><label>22</label><mixed-citation publication-type="other" xlink:type="simple">Cao, Y. (2019) Shift-Splitting Preconditioners for a Class of Block Three-by-Three Saddle Point Problems. Applied Mathematics Letters, 96, 40-46.https://doi.org/10.1016/j.aml.2019.04.006</mixed-citation></ref><ref id="scirp.97369-ref23"><label>23</label><mixed-citation publication-type="other" xlink:type="simple">Bai, Z.-Z. and Hadjidimos, A. (2014) Optimization of Extrapolated Cayley Transform with Non-Hermitian Positive Definite Matrix. Linear Algebra and Its Applications, 463, 322-339. https://doi.org/10.1016/j.laa.2014.08.021</mixed-citation></ref><ref id="scirp.97369-ref24"><label>24</label><mixed-citation publication-type="other" xlink:type="simple">Zhang, K., Zhang, J.-L. and Gu, C.-Q. (2017) A New Relaxed PSS Preconditioner for Nonsymmetric Saddle Point Problems. Applied Mathematics and Computation, 308, 115-129. https://doi.org/10.1016/j.amc.2017.03.022</mixed-citation></ref><ref id="scirp.97369-ref25"><label>25</label><mixed-citation publication-type="other" xlink:type="simple">Huang, N. and Ma, C.-F. (2019) Spectral Analysis of the Preconditioned System for the 3 × 3 Block Saddle Point Prob-lem. Numerical Algorithms, 81, 421-444. https://doi.org/10.1007/s11075-018-0555-6</mixed-citation></ref></ref-list></back></article>