On Dec 23, 2011, at 1:24 PM, Jed Brown wrote: > On Fri, Dec 23, 2011 at 12:19, Mark F. Adams <mark.adams at columbia.edu> > wrote: > Eisenstat is not computing with zero data if there is no initial guess, > right? I'm not sure I understand you here. > > I'm thinking of, e.g. third order Cheby preconditioned by GS.
And so you would always have a zero initial guess ... this is messy to implement but it could be done. > > >> I know the theory doesn't argue for it, but G-S with Cheby sometimes wins >> over everything else I've tried. > > People damp G-S for convection etc, which is what Cheb/GS does. Do you do > this for SPD systems? > > No, I was doing it for the thermo/lid-driven cavity, for example. > > >> Is there any hope of doing nonlinear G-S where the user can provide >> something moderately simple? > > Nonlinear should be very simple actually. Just replace my hacks into > (MPI)AIJ matrices with your own operator. > > Sure, but what does the user need to provide? How much code can we reuse > between the matrix-based implementation and the nonlinear implementation? You just have to provide a method like int applyGS( Mat mat, Vec lhs, Vec rhs, IS eqs, Bool reverse) that applies G-S to the local rows in "eqs" and processes them in reverse order if "reverse" is true. Reverse is just to symmetrize the operator. Since this is probably best used for non-symetric operators we could simplify the algorithm a bit and get rid of this ... Mark -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20111223/56c7557c/attachment.html>
