/PAMG.jl

Plain Aggregation algebraic MultiGrid solver

Primary LanguageJuliaMIT LicenseMIT

PAMG.jl

Dev Build Status Coverage

PAMG (Plain Aggregation algebraic MultiGrid solver) is a implementation of PA-AMG presented by Notay[1].

About PA-AMG

Multigrid methods are algorithms to solve large systems of linear equations faster than conventional iterative algorithms (Gauss-Seidel, Conjugate Gradient, etc.) utilizing coarse and fine grids, which can be classified as geometric multigrid and algebraic multigrid (AMG). Geometric multigrid uses geometric information from discretized problems to set up coarse grids. Geometric multigrid is available only for structured gird. However, An unstructured grid, in which we cannot utilize geometric multigrid methods, is widely used for many numerical methods to express complicated geometries. Algebraic multigrid methods, which set up coarse grids from the information of coefficient matrices, are suitable for not only unstructured grids but also structured grids. PA-AMG uses pairwise matching to set up the aggregation of unknowns to construct coarse grids. PA-AMG ensures relatively lower setup computational cost and memory usage.

Requirements

This package requires Julia 1.7 and later.

References

  1. Notay, Yvan. "An aggregation-based algebraic multigrid method." Electronic transactions on numerical analysis 37.6 (2010): 123-146. (pdf)
  2. Matsunaga, Takuya et al. "Solution of pressure Poisson equation in particle method using algebraic multigrid method." Transactions of JSCES, 20160012 (2016) in Japanese. (pdf)