# VRP-GMRES(m) Iteration Algorithm for Fast Multipole Boundary Element Method

^{*}

## Abstract

**:**

## 1. Introduction

## 2. Fundamental Theory for the GMRES(m) Algorithm

#### 2.1. Galerkin Principle

#### 2.2. Arnoldi Process

- For the given $m>0$ and ${x}_{0}\in {R}^{n}$, compute ${v}_{1}={r}_{0}\left./\phantom{{r}_{0}\left(\right)open="\parallel "\; close="\parallel ">{r}_{0}}\right)\phantom{\rule{0.0pt}{0ex}}\left(\right)open="\parallel "\; close="\parallel ">{r}_{0}$, ${r}_{0}\phantom{\rule{3.33333pt}{0ex}}=\phantom{\rule{3.33333pt}{0ex}}b-A{x}_{0}$.
- When $k=1,2,\cdots ,\phantom{\rule{3.33333pt}{0ex}}m$, compute ${\overline{v}}_{k+1}=A{v}_{k}-{\displaystyle \sum _{i=1}^{k}}{h}_{i,k}{v}_{i}$, ${h}_{i,k}=\left(\right)open="("\; close=")">A{v}_{k},{v}_{i}$ and ${h}_{k+1,k}=\left(\right)open="\parallel "\; close="\parallel ">{\overline{v}}_{k+1}$, respectively. It is obvious that ${\overline{v}}_{k+1}\perp {v}_{i}\phantom{\rule{0.277778em}{0ex}}$$\left(\right)$.
- If ${h}_{k+1,k}=0$, then ${v}_{k+1}=0$ and stop calculation. Otherwise, let ${v}_{k+1}={\overline{v}}_{k+1}\left./\phantom{{\overline{v}}_{k+1}{h}_{k+1,k}}\right)\phantom{\rule{0.0pt}{0ex}}{h}_{k+1,k}$.

**Theorem**

**1.**

#### 2.3. GMRES(m) Algorithm

**Theorem**

**2.**

- Give a fixed integer $m\phantom{\rule{0.166667em}{0ex}}<<n$ and an initial value ${x}^{\left(0\right)}\in {R}^{n}$, compute ${r}^{\left(0\right)}=b-A{x}^{\left(0\right)}$, and let ${r}_{0}={r}^{\left(0\right)}$.
- Obtain ${\left(\right)}_{{v}_{i}}^{}$ and ${\overline{H}}_{m}$ through the Arnoldi process.
- Solve the least squares problem$$\underset{y\in {R}^{m}}{\mathrm{min}}\left(\right)open="\parallel "\; close="\parallel ">\beta {e}_{1}-{\overline{H}}_{m}y$$
- Form an iterative process ${x}^{(k+1)}={x}^{\left(k\right)}+{z}_{m}\phantom{\rule{0.166667em}{0ex}}$ or ${r}^{(k+1)}={r}^{\left(k\right)}-A{z}_{m}\phantom{\rule{0.166667em}{0ex}},\phantom{\rule{0.277778em}{0ex}}\phantom{\rule{0.277778em}{0ex}}k=0,1,2,\cdots $.
- If $\left(\right)open="\parallel "\; close="\parallel ">{r}^{(k+1)}$, then ${x}^{*}\approx {x}^{\left(\right)}$ and stop calculation. Otherwise, let ${r}_{0}={r}^{(k+1)}$, and go to 2.

## 3. VRP-GMRES(m) Iterative Algorithm and Convergence Analysis

#### 3.1. VRP-GMRES(m) Algorithm

- Give an integer $m\phantom{\rule{0.166667em}{0ex}}<<n$ and an initial value ${x}^{\left(0\right)}\in {R}^{n}$, compute ${r}^{\left(0\right)}=b-A{x}^{\left(0\right)}$, and let ${r}_{0}={r}^{\left(0\right)}$.
- Carry out the Arnoldi process and obtain ${\left(\right)}_{{v}_{i}}^{}$ and ${\overline{H}}_{m}$.
- Solve the least squares problem$$\underset{y\in {R}^{m}}{\mathrm{min}}\left(\right)open="\parallel "\; close="\parallel ">\beta {e}_{1}-{\overline{H}}_{m}y$$
- Form an iterative process by ${x}^{(k+1)}={x}^{\left(k\right)}+\phantom{\rule{0.166667em}{0ex}}{z}_{m},\phantom{\rule{0.277778em}{0ex}}\phantom{\rule{0.277778em}{0ex}}k=0,1,2,\cdots $ Compute ${r}^{(k+1)}=b-A{x}^{(k+1)}$.
- If $\left(\right)open="\parallel "\; close="\parallel ">\phantom{\rule{0.166667em}{0ex}}{r}^{(k+1)}$. Then, ${x}^{*}\approx {x}^{\left(\right)}$ and stop. If $\left(\right)open="\parallel "\; close="\parallel ">\phantom{\rule{0.166667em}{0ex}}{r}^{(k+1)}$, then let ${r}_{0}={r}^{(k+1)}$, $m=m+1$, and go to 2.

#### 3.2. Convergence Analysis

**Definition**

**1.**

**Theorem**

**3.**

**Proof of Theorem**

**3.**

**Corollary**

**1.**

**Theorem**

**4.**

**Proof of Theorem**

**4.**

**Theorem**

**5.**

**Proof of Theorem**

**5.**

## 4. Numerical Experiments

**Example**

**1.**

**Example**

**2.**

**Example**

**3.**

## 5. Conclusions

## Acknowledgments

## Conflicts of Interest

## References

- Greengard, L.; Rokhlin, V. A fast algorithm for particle simulations. J. Comput. Phys.
**2001**, 73, 325–348. [Google Scholar] [CrossRef] - Rokhlin, V. A fast algorithm for the discrete Laplace transformation. J. Complex.
**1988**, 4, 12–32. [Google Scholar] [CrossRef] - White, C.A.; Head-Gordon, M. Derivation and efficient implementation of the fast multipole method. J. Chem. Phys.
**1994**, 101, 6593–6605. [Google Scholar] [CrossRef] - White, C.A.; Johnson, B.G.; Gill, P.M.W.; Head-Gordon, M. The continuous fast multipole method. Chem. Phys. Lett.
**1994**, 230, 8–16. [Google Scholar] [CrossRef] - White, C.A.; Head-Gordon, M. Rotating around the quartic angular momentum barrier in fast multipole method calculations. J. Chem. Phys.
**1996**, 105, 5061–5067. [Google Scholar] [CrossRef] - Beatson, R.; Greengard, L. A Short Course on Fast Multipole Methods. Wavelets Multilevel Methods & Elliptic Pdes; Oxford University Press: Oxford, UK, 1997. [Google Scholar]
- Cheng, H.; Greengard, L.; Rokhlin, V. A Fast Adaptive Multipole Algorithm in Three Dimensions. J. Comput. Phys.
**1999**, 155, 468–498. [Google Scholar] [CrossRef] - Gu, Y.; Chen, W.; Gao, H.; Zhang, C. A meshless singular boundary method for three-dimensional elasticity problems. Int. J. Numer. Methods Eng.
**2016**, 107, 109–126. [Google Scholar] [CrossRef] - Wang, Z.; Gu, Y.; Chen, W. Fast-multipole accelerated regularized meshless method for large-scale isotropic heat conduction problems. Int. J. Heat Mass Transf.
**2016**, 101, 461–469. [Google Scholar] [CrossRef] - Shen, L.; Liu, Y.J. An adaptive fast multipole boundary element method for three-dimensional acoustic wave problems based on the Burton-Miller formulation. Comput. Mech.
**2007**, 12, 554–561. [Google Scholar] [CrossRef] - Wang, H.; Yao, Z. Large Scale Analysis of Mechanical Properties in 3-D Fiber-Reinforced Composites Usinga New Fast Multipole Boundary Element Method. J. Tsinghua Univ. (Sci. Technol.)
**2007**, 12, 461–472. [Google Scholar] - Wang, H.; Yao, Z. Application of a new fast multipole BEM for simulation of 2D elastic solid with large number of inclusions. Acta Mech. Sin.
**2004**, 20, 613–622. [Google Scholar] - Liu, Y. Fast Multipole Boundary Element Method: Theory and Applications in Engineering; Cambridge University Press: Cambridge, UK, 2009. [Google Scholar]
- Engheta, N.; Murphy, W.D.; Rokhlin, V.; Vassiliou, M.S. The fast multipole method (FMM) for electromagnetic scattering problems. IEEE Trans. Antennas Propag.
**1992**, 40, 634–641. [Google Scholar] [CrossRef] - Liu, Y.J.; Nishimura, N.; Yao, Z.H. A fast multipole accelerated method of fundamental solutions for potential problems. Eng. Anal. Bound. Elem.
**2005**, 29, 1016–1024. [Google Scholar] [CrossRef] - Philippeon, B.; Reichel, L. The generation of Krylov subspace bases. Appl. Numer. Math.
**2012**, 62, 1171–1186. [Google Scholar] [CrossRef] - Luo, D.M.; Chen, P.J.; Wu, X.M. Application of GMRES algorithm to hovering rotor simulation. Kongqi Donglixue Xuebao/Acta Aerodyn. Sin.
**2012**, 30, 471–476. [Google Scholar] - Dai, Y.Z.; Song, J.Z.; Ren, H.L.; Li, H. Application of GMRES to the hydroelastic analysis of large ofshore structure. Ocean Eng.
**2003**, 21, 15–22. [Google Scholar] - Pu, B.Y.; Huang, Y.Z.; Wen, C. A preconditioned and extrapolation-accelerated GMRES method for PageRank. Appl. Math. Lett.
**2014**, 37, 95–100. [Google Scholar] [CrossRef] - Saad, Y.; Schultz, M.H. GMRES a Generalized Minimal Residual Algorithm for Solving Non-symmetric Linear Systems. Siam J. Sci. Stat. Comput.
**2006**, 7, 856–869. [Google Scholar] [CrossRef] - Ayachour, E.H. A fast implementation for GMRES method. J. Comput. Appl. Math.
**2003**, 159, 269–283. [Google Scholar] [CrossRef] - Jose, E.P.; Alex, A.P.; Ricardo, P.; Carlos, P.P. Making use of BDE-GMRES methods for solving short and long-term dynamics in power systems. Int. J. Electr. Power Energy Syst.
**2013**, 45, 293–302. [Google Scholar] - Yin, J.F.; Hayami, K. Preconditione GMRES methods with incomplete Givens orthogonalization method for large sparse least-squares problems. J. Comput. Appl. Math.
**2009**, 226, 177–186. [Google Scholar] [CrossRef] - Lin, F.R.; Yang, S.W.; Jin, X.Q. Preconditioned iterative methods for fractional diffusion equation. J. Comput. Phys.
**2014**, 256, 109–117. [Google Scholar] [CrossRef] - Liang, Y.; Szularz, M.; Yang, L.T. Finite-element-wise domain decomposition iterative solvers with polynomial preconditioning. Math. Comput. Model.
**2013**, 58, 421–437. [Google Scholar] [CrossRef] - Baker, A.H. On Improving the Performance of the Linear Solver Restarted Gmres; University of Colorado at Boulder: Boulder, CO, USA, 2003. [Google Scholar]
- Baker, A.H.; Jessup, E.R.; Kolev, T.V. A simple strategy for varying the restart parameter in GMRES(m). J. Comput. Appl. Math.
**2009**, 230, 751–761. [Google Scholar] [CrossRef] - Peairs, L.; Chen, T.Y. Using reinforcement learning to vary the m in GMRES(m). Procedia Comput.
**2011**, 4, 2257–2266. [Google Scholar] [CrossRef] - Essai, A. Weighted FOM and GMRES for solving nonsymmetric linear systems. Numer. Algorithms
**1998**, 18, 227–292. [Google Scholar] [CrossRef] - Cai, D.Y.; Bai, F.S. Advanced Numerical Analysis; Tsinghua University Press: Beijing, China, 1997. [Google Scholar]

**Figure 2.**Absolute errors after three iterations. (

**a**) generalized minimal residual method (GMRES)(m) algorithm; (

**b**) Variable Restart Parameter(VRP)-GMRES(m) algorithm.

**Figure 5.**Comparison of the computational efficiency and accuracy under different meshes for the two algorithms ($m=10$). (

**a**) comparison of computational efficiency; and (

**b**) comparison of computational accuracy.

n | m | GMRES(m) | VRP-GMRES(m) |
---|---|---|---|

10 | 8 | 11 | 2 |

20 | 19 | 3 | 2 |

30 | 29 | 3 | 3 |

40 | 39 | 15 | 12 |

50 | 54 | 79 | 14 |

60 | 85 | 164 | 14 |

n | m | GMRES(m) [s] | VRP-GMRES(m) [s] |
---|---|---|---|

10 | 8 | 0.029415 | 0.018254 |

20 | 19 | 0.028982 | 0.013442 |

30 | 29 | 0.092144 | 0.086172 |

40 | 39 | 1.381825 | 0.847108 |

50 | 54 | 23.539635 | 4.683026 |

60 | 85 | 157.340531 | 14.662790 |

n | m | GMRES(m) | VRP-GMRES(m) |
---|---|---|---|

10 | 8 | 2.1069 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-9}$ | 2.9235 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-14}$ |

20 | 19 | 1.1751 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-15}$ | 1.1984 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-15}$ |

30 | 29 | 2.0093 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-12}$ | 5.4751 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-14}$ |

40 | 39 | 2.4647 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-9}$ | 2.1327e $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-10}$ |

50 | 54 | 3.3092 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-11}$ | 2.0783 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-11}$ |

60 | 85 | 2.0593 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-9}$ | 6.5913 $\times \phantom{\rule{3.33333pt}{0ex}}{10}^{-13}$ |

n | m | GMRES(m) | VRP-GMRES(m) |
---|---|---|---|

10 | 8 | stagnated | Convergent |

20 | 19 | stagnated | Convergent |

30 | 29 | stagnated | Convergent |

40 | 39 | stagnated | Convergent |

50 | 54 | stagnated | Convergent |

60 | 85 | stagnated | Convergent |

n | GMRES(m) [s] | VRP-GMRES(m) [s] |
---|---|---|

40 | 1.580847 | 0.829866 |

50 | 5.702555 | 2.445235 |

60 | 16.965306 | 2.445235 |

70 | 43.204335 | 14.072318 |

80 | 100.077638 | 27.731674 |

90 | 189.671624 | 51.908418 |

Body A | Body B | Body C | Sum | |
---|---|---|---|---|

Node number | 152 | 218 | 98 | 468 |

Element number | 150 | 216 | 96 | 462 |

Contact nodes | 36 | 49 | 25 | 110 |

Contact elements | 25 | 36 | 16 | 77 |

Degree number | 648 | 801 | 369 | 1818 |

m | 9 | 11 | 13 | 15 | 17 | 19 |
---|---|---|---|---|---|---|

GMRES(m) | 192 | 173 | 93 | 67 | 55 | 37 |

VRP-GMRES(m) | 26 | 26 | 26 | 26 | 26 | 26 |

© 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Yu, C.; Ren, C.; Bai, X.
VRP-GMRES(m) Iteration Algorithm for Fast Multipole Boundary Element Method. *Math. Comput. Appl.* **2016**, *21*, 49.
https://doi.org/10.3390/mca21040049

**AMA Style**

Yu C, Ren C, Bai X.
VRP-GMRES(m) Iteration Algorithm for Fast Multipole Boundary Element Method. *Mathematical and Computational Applications*. 2016; 21(4):49.
https://doi.org/10.3390/mca21040049

**Chicago/Turabian Style**

Yu, Chunxiao, Cuihuan Ren, and Xueting Bai.
2016. "VRP-GMRES(m) Iteration Algorithm for Fast Multipole Boundary Element Method" *Mathematical and Computational Applications* 21, no. 4: 49.
https://doi.org/10.3390/mca21040049