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>

Reply via email to