How do you solve linear systems whose solutions decay exponentially? - MathOverflow most recent 30 from http://mathoverflow.net 2013-06-20T10:39:40Z http://mathoverflow.net/feeds/question/79524 http://www.creativecommons.org/licenses/by-nc/2.5/rdf http://mathoverflow.net/questions/79524/how-do-you-solve-linear-systems-whose-solutions-decay-exponentially How do you solve linear systems whose solutions decay exponentially? fuzzytron 2011-10-30T15:01:28Z 2011-11-03T08:38:38Z <p>Consider the heat equation</p> <p>$$\dot{u} = \Delta u$$</p> <p>with initial conditions</p> <p>$$u_0 = \delta(x)$$</p> <p>for some point $x$ in the domain $\Omega$ of the problem. If $\Omega$ is $\mathbb{R}^n$, then this problem has a closed-form solution given by the Euclidean heat kernel</p> <p>$$k_t(x,y) = \frac{1}{(4\pi t)^{n/2}}e^{-|x-y|^2/4t};$$</p> <p>in general solutions to this problem will exhibit this same type of behavior: the magnitude of $u$ decays roughly exponentially as you travel away from the "source" $x$.</p> <p>Now consider solving this problem numerically by constructing a finite-dimensional linear system whose solution approximates the solution of the original PDE (e.g., using a Galerkin method). Typical numerical linear algebra systems (which work with fixed-precision floating-point arithmetic) guarantee that the maximum error in any component of the solution will be no larger than some small fraction $\epsilon > 0$ of the largest element of the right-hand side.</p> <p>For instance, in the problem outlined above the right-hand side will look like a Kronecker delta, so the absolute error will be no worse than $\epsilon$. Unfortunately, since the magnitude of the solution decays exponentially, the error $\epsilon$ may be much larger than the smallest entry of the true solution.</p> <p><strong>Question:</strong> using floating-point computations only, can one obtain a solution to a linear system that obtains a desired accuracy relative to the magnitude of each element of the <em>solution vector</em>, rather than the right hand side?</p> <p>The fundamental problem in achieving better accuracy seems to stem from cancellation effects, i.e., if you add two numbers of very different magnitude in floating point, the smaller one is essentially ignored. I am aware of algorithms that use alternative numerical representations (e.g,. Dixon's method and so on), but this kind of answer is not particularly interesting to me due to considerations of efficiency.</p> http://mathoverflow.net/questions/79524/how-do-you-solve-linear-systems-whose-solutions-decay-exponentially/79526#79526 Answer by Brian Borchers for How do you solve linear systems whose solutions decay exponentially? Brian Borchers 2011-10-30T15:47:30Z 2011-10-30T15:47:30Z <p>I assume that you're interested in solving the boundary value problem in a situation where the boundaries are far away from the source, so that the solution is close to the analytical solution on an unbounded domain. </p> <p>One option here would be to write the solution to your problem as the sum of analytical solution to the problem on an unbounded domain plus a correction term. That is, </p> <p>$ u(x,y,t)=k_{t}(x,y)+v(x,y,t) $</p> <p>Since the PDE is linear, your correction term $v(x,y,t)$ would also have to satisfy the heat equation. You could easily derive boundary conditions for $v$ in terms of the boundary conditions for $u$ and the values of $k_{t}(x,y)$ at the boundaries. </p> http://mathoverflow.net/questions/79524/how-do-you-solve-linear-systems-whose-solutions-decay-exponentially/79547#79547 Answer by Federico Poloni for How do you solve linear systems whose solutions decay exponentially? Federico Poloni 2011-10-30T21:03:01Z 2011-11-03T08:38:38Z <p>This subject has been studied in literature --- it turns out that for some class of matrices (such as <a href="http://en.wikipedia.org/wiki/M-matrix" rel="nofollow">M-matrices</a>) you can obtain componentwise accurate solutions. A good starting point is the section on "accurate floating point computation" on <a href="http://www.cs.berkeley.edu/~demmel/" rel="nofollow">Jim Demmel's home page</a>; other good search terms are "accurate linear algebra" and "componentwise error analysis". Recent literature has focused more on accurate eigenvalue computation rather than linear systems, but there are results also for them.</p> <p>EDIT: And let me add that discretizing $\Delta$ with the usual finite-difference scheme results in an M-matrix.</p>