-
Notifications
You must be signed in to change notification settings - Fork 299
hypre AMS and ADS #4362
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: devel
Are you sure you want to change the base?
hypre AMS and ADS #4362
Conversation
Provision beyond hypre preconditioners, but simply create empty setup function if LIBMESH_HAVE_PETSC_HYPRE is not defined - so it's clear, both to us and the compiler, we currently do nothing in those cases. set_petsc_aux_data() is called in PetscNonlinearSolver::solve(). This is due to commit c10f89f in idaholab/moose#29072 which changed MOOSE to call initPetscOutputAndSomeSolverSettings() *before* petscSetOptions(). The former calls init() on PetscNonlinearSolver() which is where we used to call set_petsc_aux_data(), which in turn calls PCSetFromOptions(), at which point the options need to be set.
|
|
|
So, this only happens in that recipe because it uses our alternative PETSc 3.11.4 installation, see: Unfortunately, that version has a bug that prevents the usage of both AMS and ADS, which was only fixed in 3.12.2: We have
|
86aa5fa to
81aefae
Compare
|
Job Coverage, step Generate coverage on 5127dc9 wanted to post the following: Coverage
Warnings
This comment will be updated on new commits. |
||||||||||||||||||||||||||
With no support for field-split preconditioning for now since, if you recall from our conversation in that Starbucks in Idaho Falls, I had a nasty hack to make that (barely) work. The AMS and ADS assembly routines do still support an arbitrary variable specification but, at the moment, the user is blocked from applying these preconditioners to systems with more than one variable.