Consider this integro-differential heat equation taken from SciPy documentation page:

$ \nabla^2 P = \alpha \left(\iint_\Omega \cosh(P)dx dy \right)^2 $

which was found in this question.

In the considered python code the Newton-Krylov iterations are applied and perform quite nice for $\alpha=10$. However this method fails when $\alpha$ is changed from 10 to 15 or more. What might be the reason for this behaviour and is it possible to improve the situation?

Any references are appreciated, thank you.

EDIT: in the first part of the question I asked about possible physical background behind this problem. Several days after I decided to address to scipy-dev newsgroup and almost immediately received a reply from Pauli Virtanen:

This is just some random equation. There's no physical or otherwise background for it.

This information makes further discussion of the problem much less interesting, so I's rather close this question.

  • $\begingroup$ Can you explain what you mean by "fails"? Does the solution not meet the convergence criteria? Or does the solution blow up? I imagine that @SparseSolverCodes is onto something about the change in condition number. If put into the form Ax=b, you'll probably see that the condition number of A is much larger in the case of $\alpha = 15$ or more compared to $\alpha = 10$. $\endgroup$
    – Charles
    Commented Apr 18, 2016 at 1:14
  • $\begingroup$ @Charlie By 'fails' I mean very slow convergence. I don't know how you put this problem to $Ax=b$, but when I looked at finite difference approximation to Jacobian at x0 I observed no significant changes in eigenvalues between $\alpha=10$ and $\alpha=15$. $\endgroup$
    – faleichik
    Commented Apr 19, 2016 at 7:25
  • $\begingroup$ Maybe it's a mathematical issue and not so much convergence (as @SparseSolverCodes and I thought). I posted a suggested answer below. The difference between my post and a case where the condition number increases due to, e.g. discontinuous material properties, is that there is a solution to handle discontinuous material properties (using a preconditioner, e.g.). $\endgroup$
    – Charles
    Commented Apr 19, 2016 at 18:51

2 Answers 2


I'm not sure if this is the answer, but consider the case as $\alpha \rightarrow \infty$. In this case you're trying to solve

$\iint_{\Omega} \cosh(P) dxdy = 0$

And since cosh looks like this:

You can see that integrating it over any domain will never give you zero. If the diffusion of $P$ ($\nabla^2 P$) is not large enough to counteract this limit then you'll likely have problems.


Generally speaking, poor convergence (or no convergence at all) of an iterative method that is solving a system of linear algebraic equations is attributed to the fact that the corresponding matrix is ill-conditioned. In mechanical problems, that may be observed if the model is "loose" (no sufficient boundary conditions applied, or if the model consists of materials with very different elastic properties, like, say, steel and foam). For heat transfer problems, that would probably correspond to cases when the physical model consists of different materials with vastly different heat transfer coefficients.

  • $\begingroup$ It can also be due to initialization right? $\endgroup$ Commented Apr 17, 2016 at 16:44
  • $\begingroup$ What do you mean exactly under that term ? Initialization of what ? $\endgroup$ Commented Apr 17, 2016 at 23:30

Not the answer you're looking for? Browse other questions tagged or ask your own question.