On Thu, Feb 17, 2011 at 8:08 AM, Juha Jäykkä <span dir="ltr">&lt;<a href="mailto:juhaj@iki.fi">juhaj@iki.fi</a>&gt;</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 class="im">&gt; &gt; [0]PETSC ERROR: Zero pivot row 1 value 1.90611e-13 tolerance 1e-12!<br>
&gt; You have a singular Jacobian, which leads me to believe that your boundary<br>
&gt; conditions are incorrect.<br>
<br>
</div>Thanks for the tip. I also found the following in the -info output:<br>
<br>
[0] SNESLSCheckResidual_Private(): ||J^T(F-Ax)||/||F-AX|| 27.9594 near zero<br>
implies inconsistent rhs<br>
<br>
which is strange at first sight: my RHS is my equation, how can that be<br>
inconsistent? It is what defines the problem. BUT your comment about the<br>
boundary conditions led me to look into them in more detail.<br>
<br>
It seems one of them may be trivially satisfied, leaving me with an infinite<br>
number of solutions satisfying the other one too. Could this be the reason for<br>
my problems? If so, I need to start thinking of another boundary condition...<br>
not nice, since the problem I am solving does not really give them! =(<br>
<br>
Take an example:<br>
<br>
r f&#39;&#39;/f - r (f&#39;/f)^2 + f&#39;/f = 0.<br>
<br>
This has the general solution<br>
<br>
f(r) = a r^b,<br>
<br>
but if the boundary conditions are f(0)=0 and f(1)=1 (like I had in my real<br>
problem), we have (if b&gt;0):<br>
<br>
a*0 = 0<br>
a*1 = 1<br>
<br>
and b is left undetermined or (if b&lt;0):<br>
<br>
lim(a*r^b) = 0 as r-&gt;0 =&gt; a=0<br>
0*1^b = 1 =&gt; no solution.<br>
<br>
I am unsure how to interpret b=0 since then we have 0^0 at the boundary. But<br>
even disregarding the undefined value at the boundary, there cannot be a<br>
continuous solution with b=0 since then f(r&gt;0)=1, but f(0)=0. Looks like<br>
Heaviside step to me.<br>
<br>
In summary, I cannot even solve this simpler problem with SNES, but I think I<br>
understand the reason now: I have not specified boundary conditions which<br>
would give a unique solution - they probably do not even give a finite number<br>
of solutions, but an inifinite (quite likely uncountable, like in my example)<br>
number of solutions.<br>
<br>
Any thoughts on this? Is there any sense in my analysis? If so, I will need to<br>
go think about Neumann boundaries...</blockquote><div><br></div><div>Yes, if your BC do not give at least a locally unique solution, then your Jacobian will</div><div>be rank deficient and Newton breaks down. You can still try Picard, but I recommend</div>
<div>understanding what you mean by a solution first.</div><div><br></div><div>   Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div class="h5">

Cheers,<br>
Juha<br>
<br>
--<br>
                 -----------------------------------------------<br>
                | Juha Jäykkä, <a href="mailto:juhaj@iki.fi">juhaj@iki.fi</a>                     |<br>
                | <a href="http://www.maths.leeds.ac.uk/~juhaj" target="_blank">http://www.maths.leeds.ac.uk/~juhaj</a>           |<br>
                 -----------------------------------------------<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>