Skip to content

WIP: Algebraic multigrid with filtering (AMGF) preconditioner for contact linear systems#1542

Open
thartland wants to merge 14 commits intodevelopfrom
hartland1/feature/amgf
Open

WIP: Algebraic multigrid with filtering (AMGF) preconditioner for contact linear systems#1542
thartland wants to merge 14 commits intodevelopfrom
hartland1/feature/amgf

Conversation

@thartland
Copy link
Contributor

@thartland thartland commented Feb 16, 2026

This PR adds the capability of using AMGF (algebraic multigrid with filtering arXiv preprint)-preconditioned Krylov-subspace linear solvers for the Newton linear solves that arise in outer loop solves of contact problems.

  • Obtain list of contact dofs via ContactData::addContactInteraction calls.
  • Create a boundary_dof --> subspace transfer operator (mfem::HypreParMatrix) call. Much of this infastructure is in the utilities of continuationsolvers but a version most suitable for usage in smith would be best for less complex code.
  • Obtain subspace transfer (displacement dofs --> contact dofs) operator via the list of contact dofs in appropriate place for passing the subspace transfer operator to the preconditioner provided that said linear solver preconditioner is AMGF.
  • Resolve usage errors conflating print_level and preconditioner_print_level from linear solver options in the buildPreconditioner method.
  • Include test.

For future PR(s)
(1) Alter smith::LinearSolver::Strumpack solver, so that it is robust to the case where there are no rows owned by one or more processors, something that occurs. This will ensure that AMGF preconditioned Krylov-subspace is robust with respect to the number of MPI processes used.
(2) Make AMGF robust to indefiniteness issues stemming from using exact Hessians in Newton solves.
(3) More careful consideration for setting outer/inner tolerances (as well as norms used) for Newton-Krylov.

@thartland thartland added the WIP Work in progress label Feb 16, 2026
@thartland thartland changed the title WIP: AMGF WIP: Algebraic multigrid with filtering (AMGF) preconditioner for contact linear systems Feb 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

WIP Work in progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant