On Thu, Jan 23, 2014 at 02:18:30PM +0100, Jan Blechta wrote: > On Thu, 23 Jan 2014 12:24:11 +0000 > "Garth N. Wells" <[email protected]> wrote: > > > If someone would like to condense this thread, it would make a very > > nice 'question' on the Q&A page which could then be answered by > > whoever posts the question. > > I'll do it.
Great. It would be even more useful with a documented demo that explains all these issues in detail if you feel up to it. -- Anders > Jan > > > > > Garth > > > > > > On 2014-01-22 19:23, Nico Schlömer wrote: > > >> As far as I can tell, I'm trying to solve the extended system, and > > >> it has no nullspace. > > > > > > There are two separate approaches discussed here: > > > > > > * extending the system such that the nullspace is trivial > > > (Langrange) > > > * using the Krylov solver on the original system with the > > > nontrivial nullspace, paying a little attention to the details. > > > > > > --Nico > > > > > > > > > On Wed, Jan 22, 2014 at 8:17 PM, Nikolaus Rath > > > <[email protected]> wrote: > > >> On 01/22/2014 11:08 AM, Nico Schlömer wrote: > > >>>>>>> As Garth was mentioning, this problem is delicate for > > >>>>>>> iterative solver, not only because > > >>>>>>> its indefiniteness, but because the Lagrangian constraint > > >>>>>>> you're imposing yields > > >>>>>>> a column (the last one) of the full matrix that belongs to the > > >>>>>>> kernel of the top-left block. > > >>>>>>> > > >>>>>>> Since the nullspace is at hands, I would provide it to the > > >>>>>>> solver and then use CG+AMG, > > >>>>>>> with Jacobi relaxation at coarser scale instead Gauss > > >>>>>>> elimination (at least with petsc boomeramg). > > >>>>>> > > >>>>>> > > >>>>>> Why is there a nullspace? Doesn't the \int u = 0 constraint > > >>>>>> remove the > > >>>>>> remaining degree of freedom resulting from the pure Neumann > > >>>>>> boundary > > >>>>>> conditions? > > >>>>> > > >>>>> It does not remove any DOF. It adds just one DOF - the Lagrange > > >>>>> multiplier and an equation which makes the system regular. > > >>>> > > >>>> I'm probably just using different terminology, but how can the > > >>>> system be > > >>>> regular if it has a nullspace? If there is u such that A.u = 0, > > >>>> I would > > >>>> say that A is singular, not regular. > > >>> > > >>> The original problem is singular indeed. What Jan did is add a > > >>> row and > > >>> a column (Lagrange multiplier) such that the new extended system > > >>> is regular. > > >> > > >> > > >> This is what I thought - the extended system does *not* have a > > >> nullspace. But the extended system is the system we're trying to > > >> solve. > > >> So I'm not sure how to understand Simone's suggestion above: > > >> > > >>>>>>> Since the nullspace is at hands, I would provide it to the > > >>>>>>> solver and then use CG+AMG, > > >>>>>>> with Jacobi relaxation at coarser scale instead Gauss > > >>>>>>> elimination (at least with petsc boomeramg). > > >> > > >> As far as I can tell, I'm trying to solve the extended system, and > > >> it has no nullspace. > > >> > > >> > > >> Best, > > >> Nikolaus > > >> > > > _______________________________________________ > > > fenics mailing list > > > [email protected] > > > http://fenicsproject.org/mailman/listinfo/fenics > > _______________________________________________ > > fenics mailing list > > [email protected] > > http://fenicsproject.org/mailman/listinfo/fenics > > _______________________________________________ > fenics mailing list > [email protected] > http://fenicsproject.org/mailman/listinfo/fenics _______________________________________________ fenics mailing list [email protected] http://fenicsproject.org/mailman/listinfo/fenics
