Schur system + MatShell

Matthew Knepley knepley at gmail.com
Tue Apr 22 09:37:07 CDT 2008


On 4/22/08, tribur at vision.ee.ethz.ch <tribur at vision.ee.ethz.ch> wrote:
> Dear Matt,
>
> > This does not make sense to me. You decide how PETSc partitions things (if
> > you want), And, I really do not understand what you want in parallel.
> > If you mean
> > that you solve the local Schur complements independently, then use a local
> > matrix for each one. The important thing is to work out the linear algebra
> prior
> > to coding. Then wrapping it with PETSc Mat/Vec is easy.
> >
>
> The linear algebra is completely clear. Again: I have the local Schur
> systems given (and NOT the solution of the local Schur systems), and I would
> like to solve the global Schur complement system in parallel. The global
> Schur complement system is theoretically constructed by putting and adding
> elements of the local systems in certain locations of a global matrix.
> Wrapping this with PETSc Mat/Vec, without the time-intensive assembling, is
> not easy for me as a PETSc-beginner. But I'm curious of the solution you
> propose...

Did you verify that the Schur complement matrix was properly preallocated before
assembly? This is the likely source of time. You can run with -info and search
for "malloc" in the output.

   Matt

-- 
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




More information about the petsc-users mailing list