PCNN#
Balancing Neumann-Neumann for scalar elliptic PDEs.
Options Database Keys#
-pc_nn_turn_off_first_balancing - do not balance the residual before solving the local Neumann problems (this skips the first coarse grid solve in the preconditioner)
-pc_nn_turn_off_second_balancing - do not balance the solution solving the local Neumann problems (this skips the second coarse grid solve in the preconditioner)
-pc_is_damp_fixed
- -pc_is_remove_nullspace_fixed -
-pc_is_set_damping_factor_floating
- -pc_is_not_damp_floating -
-pc_is_not_remove_nullspace_floating -
Options Database prefixes for the subsolvers this preconditioner uses#
-nn_coarse_pc_ - for the coarse grid preconditioner
-is_localD_pc_ - for the Dirichlet subproblem preconditioner
-is_localN_pc_ - for the Neumann subproblem preconditioner
Notes#
The matrix used with this preconditioner must be of type MATIS
Unlike more ‘conventional’ Neumann-Neumann preconditioners this iterates over ALL the degrees of freedom, NOT just those on the interface (this allows the use of approximate solvers on the subdomains; though in our experience using approximate solvers is slower.).
Contributed by Paulo Goldfeld
See Also#
KSP: Linear System Solvers, PCCreate()
, PCSetType()
, PCType
, PC
, MATIS
, PCBDDC
Level#
intermediate
Location#
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages