← Back to team overview

dolfin team mailing list archive

Re: [HG DOLFIN] Fixes for PETSc 2.3.3 compatibility.

 

On Wednesday 04 March 2009 20:16:56 Garth N. Wells wrote:
> Johan Hake wrote:
> > On Wednesday 04 March 2009 12:46:10 DOLFIN wrote:
> >> One or more new changesets pushed to the primary dolfin repository.
> >> A short summary of the last three changesets is included below.
> >>
> >> changeset:   5791:7b24d1479dff485f4db0ba38c2e28984a0a3cf46
> >> tag:         tip
> >> user:        "Garth N. Wells <gnw20@xxxxxxxxx>"
> >> date:        Wed Mar 04 11:33:23 2009 +0000
> >> files:       dolfin/la/PETScKrylovSolver.cpp
> >> dolfin/la/PETScKrylovSolver.h dolfin/la/PETScMatrix.cpp
> >> dolfin/la/PETScMatrix.h
> >> dolfin/la/PETScPreconditioner.cpp dolfin/la/PETScPreconditioner.h
> >> description:
> >> Fixes for PETSc 2.3.3 compatibility.
> >
> > This commit broke the linear algebra test for PETSc matrices. The check
> > for the sparsity pattern is commented out, and en error is raised
> > instead. Is it not possible to check the non zero pattern for PETSc
> > matrices in 3.0?
>
> The same check doesn't work with PETSc 3.0 because of changes to MatInfo.

Ok. 

> The check is not pretty so we should find a better solution if this
> function is required. 

I think it would be nice to have it, as PETSc can do some optimalizations if 
two matrices have the same pattern.

> There is a PETSc function 
> MatGetSeqNonzeroStructure which may help, but I haven't had time to look
> at it.

Haven't looked to deep into MatGetSeqNonzeroStructure. But it sounds like it 
gives the nonzero sparsity pattern which we really are not interested in.

> Why is the function PETScMatrix::sameNonzeroPattern required? It's not
> implemented for all backends.

When I implemented the axpy function I added this test. I do check the nonzero 
pattern for EpetraMatrices too, but there I only do it once, so no extra 
function.

I think we should be able to still use the MatInfo structure, but maybe some 
guidence from the PETSc developers could help?

Johan


> Garth
>
> > Johan
> >
> >> changeset:   5790:05d6f03e87a8bb33cc5dc55add40e8de1c6ebfd0
> >> user:        "Garth N. Wells <gnw20@xxxxxxxxx>"
> >> date:        Wed Mar 04 11:21:41 2009 +0000
> >> files:       dolfin/la/PETScKrylovMatrix.cpp
> >> dolfin/la/PETScKrylovSolver.cpp dolfin/la/PETScKrylovSolver.h
> >> dolfin/la/PETScLUSolver.cpp dolfin/la/PETScMatrix.cpp
> >> dolfin/la/PETScMatrix.h dolfin/la/PETScPreconditioner.cpp
> >> dolfin/la/PETScPreconditioner.h description:
> >> PETSc 3 updates.
> >>
> >>
> >> changeset:   5789:3abcc647c6141cc4b2fd035cc417eedf80872ae7
> >> user:        "Garth N. Wells <gnw20@xxxxxxxxx>"
> >> date:        Wed Mar 04 10:45:44 2009 +0000
> >> files:       dolfin/la/PETScKrylovSolver.cpp
> >> description:
> >> Some updates for PETSc 3.
> >>
> >> ----------------------------------------------------------------------
> >> For more details, visit http://www.fenics.org/hg/dolfin
> >> _______________________________________________
> >> DOLFIN-dev mailing list
> >> DOLFIN-dev@xxxxxxxxxx
> >> http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev




Follow ups

References