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. 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
