When solving $A*x=b$ using preconditioned conjugate gradient methods one has to solve $z=K^{-1}*r$ for the preconditioning where $K$ is the preconditioner of $A$ and $r$ is the residual vector. Instead of performing classical preconditioning like incomplete Cholesky or ILU one can also perform one V-cycle of algebraic multigrid method(AMG).

Does this mean that the V-cycle is applied to the equation $z=A^{-1}*r$ to get $z$?

I have implemented for first testing a Ruge Stuben based AMG algorithm as a preconditioner for BiCGStab method. But I do not really see improvements in convergency compared to the classical preconditioners.

  • $\begingroup$ Yes, what you describe appears correct. More details are available in the following paper: hpcs.cs.tsukuba.ac.jp/~tatebe/research/paper/CM93-tatebe.pdf $\endgroup$ – Will P. Nov 13 '18 at 23:42
  • $\begingroup$ To analyze why your problem is not achieving the improvements in convergence, you would need to provide more information on the matrix and its properties and based on that you can reason why Multigrid was not better in your case. It might also be important to check your restriction, prolongation operators as well. $\endgroup$ – Mathnoob Nov 18 '18 at 17:41
  • $\begingroup$ The matrix is from a FE problem where an elastic cube was discretized with hex8 elements. The matrix is symmetric and positive definite and good conditioned. The restriction and prolongation operator is based on direct interpolation. $\endgroup$ – vydesaster Nov 21 '18 at 12:54

The main problem why the AMG preconditioner does not show much improvements in convergence is the structure of the system matrix. The scalar AMG approach is not suitable for the used matrices. Another approach might show better results.


Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.