<div class="gmail_extra">On Wed, Dec 5, 2012 at 6:45 AM, Anton Popov <span dir="ltr"><<a href="mailto:popov@uni-mainz.de" target="_blank">popov@uni-mainz.de</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">Of course that is correct. The only advantage of using non
defect-correction form is straightforward implementation of non-zero
Dirichlet boundary conditions. As usual, one would just remove (or
zero out) corresponding rows, multiply column coefficients with
defined values and subtract from RHS. In defect correction form one
at least needs to distinguish first iteration. </div></blockquote><div><br></div><div>There is no extra difficulty in applying this lifting procedure in defect-correction form. The basic principle is that Dirichlet boundary residuals are written as f_D = u - u_D, which manifests itself as zeroing a row of the Jacobian or Picard matrix. Then, if you overwrite the boundary points in the local state vector with the correct Dirichlet solution values, the corresponding columns of the Jacobian become zero.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">Skipping correction
of RHS in this case most likely will cause convergence problems.<br>
<br>
Picard is equal to Newton only when following conditions hold:<br>
<br>
1) F(u) = R(u) which is true residual.<br>
2) A(u) = J(u) which is true Jacobian (does not necessarily follow
from the first condition).<br>
<br>
In more likely case Picard is equal to Newton with A(u) approximate
Jacobian, or simply not applicable because residual cannot be
expressed in a form of a linear operator (as was discussed before by
you and Barry). <br>
<br>
For general problem with zero initial guess, and non-zero Dirichlet
BC I would do exactly one iteration of Picard with corrected RHS (no
difference between defect/non defect-correction forms, no matter
whether A(u) or J(u), if available), and then switch to Newton.</div></blockquote></div><br></div><div class="gmail_extra">This sounds like a terrible hack that's actually more complicated to implement.</div>