NonoverlappingBlockPreconditioner: apply behaves different than its templated counterpart
In the templated apply
version of NonoverlappingBlockPreconditioner in line 339 of novlpschwarz.hh copyOwnerToAll
is called, while in non-templated virtual apply
method in line 332 of novlpschwarz.hh addOwnerCopyToOwnerCopy
is used.
Might that by a copy-paste bug, while it was copied from the BlockPreconditioner
in schwarz.hh.
My understanding of the templated apply
method is, that apply<true>
does the same as apply
and apply<false>
applies the transposed version of the preconditioner (e.g. to make the AMG symmetric by calling the one for presmoothing and the other for postsmoothing, like in smoother.hh line 548 and line 554.