matrix inversion

Hong Zhang hzhang at mcs.anl.gov
Fri Sep 21 10:22:30 CDT 2007



On Fri, 21 Sep 2007, Randall Mackie wrote:

> Matt,
>
> I suspect it is my collegue who asked the earlier questions about
> matrix inverses this week, although I didn't realize that until
> after I sent my original message.
>
> I also suggested he just get the LU factorizations, but he insists
> he needs the actual values to embed in another larger system
> he'll solve.
Yes.
In my previous email
MatSolve(LU,A(:,j),Ainv(:,j));
should be
MatSolve(LU,bj,Ainv(:,j)) where bj is a vector with zeros and a 1 in the
j-th place.

Hong

>
> I suppose that with the LU factorizations, you can just do
> successive solves with a vector with zeros and a 1 in the appropriate
> place to generate the elements you need, no?
>
> I've asked him for more clarification on what he needs exactly.
>
> Thanks, Randy
>
>
> Matthew Knepley wrote:
> > On 9/21/07, Randall Mackie <randy at geosystem.us> wrote:
> >> Matt,
> >>
> >> There may be very valid reasons why one would want a matrix inverse,
> >> say in the context of solving optimizations where you need the
> >> inverse of the covariance matrix, and you need those values to
> >> embed in another system.
> >
> > I do not agree. What are you going to do with the inverse that cannot be
> > done with LU? Backsolves against a matrix are commonplace.
> >
> >   Matt
> >
> >> In this case, just getting the action of the inverse times a vector
> >> is not what is needed.
> >>
> >> Randy
> >>
> >>
> >> Matthew Knepley wrote:
> >>> On 9/21/07, Randall Mackie <randy at geosystem.us> wrote:
> >>>> I have a collegue who is considering to use PETSc for programming
> >>>> his problem. He would like to know if you can get the actual
> >>>> inverse of a matrix, because this inverse is embedded in another
> >>>> larger system that is then solved.
> >>>>
> >>>> I suppose that if you solve the system directly, say with SuperLU
> >>>> or MUMPS, you could get the actual inverse? I looked briefly through
> >>>> the manual and documentation, but it didn't jump out at me.
> >>> This makes several time this week people have asked for inverses. Never
> >>> never never use the inverse. Its not stable. The storage blows up. That is
> >>> why factorizations were invented. Numerical analysis courses have failed
> >>> the country entirely. Just use a KSP and tell it -ksp_type preonly -pc_type lu
> >>> and then you can customize the matrix type for different solvers. KSPSolve()
> >>> will apply the matrix. If you want to get the action on an entire matrix, this
> >>> is dense and we would have to put in the BLAS3 triangular solve calls.
> >>>
> >>>   Matt
> >>>
> >>>> Any advice here?
> >>>>
> >>>> Thanks, Randy
> >>>>
> >>>> --
> >>>> Randall Mackie
> >>>> GSY-USA, Inc.
> >>>> PMB# 643
> >>>> 2261 Market St.,
> >>>> San Francisco, CA 94114-1600
> >>>> Tel (415) 469-8649
> >>>> Fax (415) 469-5044
> >>>>
> >>>> California Registered Geophysicist
> >>>> License No. GP 1034
> >>>>
> >>>>
> >>>
> >> --
> >> Randall Mackie
> >> GSY-USA, Inc.
> >> PMB# 643
> >> 2261 Market St.,
> >> San Francisco, CA 94114-1600
> >> Tel (415) 469-8649
> >> Fax (415) 469-5044
> >>
> >> California Registered Geophysicist
> >> License No. GP 1034
> >>
> >>
> >
> >
>
> --
> Randall Mackie
> GSY-USA, Inc.
> PMB# 643
> 2261 Market St.,
> San Francisco, CA 94114-1600
> Tel (415) 469-8649
> Fax (415) 469-5044
>
> California Registered Geophysicist
> License No. GP 1034
>
>




More information about the petsc-users mailing list