[petsc-users] Matrix equation involving square-root
Matthew Knepley
knepley at gmail.com
Sat May 21 19:55:52 CDT 2016
On Sat, May 21, 2016 at 5:57 PM, Jeff Steward <jeffsteward at gmail.com> wrote:
> I have a real SPD matrix A, and I would like to find x for
>
> (A + A^{1/2})x = b
>
> where A^{1/2} is the unique matrix such that A^{1/2}A^{1/2} = A. The
> trouble is I don't have A^{1/2} (unless I compute the eigenpairs of A which
> is fairly expensive), only A.
>
> Is there a computationally efficient method in PETSc to find x in my case?
> Ideally I would like to use an iterative method and a matrix shell for A
> due to memory concerns and the fact that I don't need an exact solution.
>
There are iterative methods for the matrix square root (
https://en.wikipedia.org/wiki/Square_root_of_a_matrix), but they are
for dense matrices. I do not know of a method beyond direct factorization
that works for sparse matrices.
If you are getting this fractional power from a continuous problem (like
subdiffusion), then you
should handle it with discretization rather than matrix tools.
Thanks,
Matt
> Best wishes,
>
> Jeff
>
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160521/608aec41/attachment.html>
More information about the petsc-users
mailing list