dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #02633
Re: [HG] merge
On Mon, May 29, 2006 at 07:54:12PM +0200, Garth N. Wells wrote:
> On Mon, 2006-05-29 at 19:47 +0200, Anders Logg wrote:
> > On Mon, May 29, 2006 at 07:40:28PM +0200, Garth N. Wells wrote:
> > > On Mon, 2006-05-29 at 19:34 +0200, Anders Logg wrote:
> > > > On Mon, May 29, 2006 at 07:29:34PM +0200, 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: 1960:a7f783f945976c24f7f54d549d3af76c45c30612
> > > > > tag: tip
> > > > > parent: 1959:189ad5b395cb410ba6a45d7a4a5f91c9865b0034
> > > > > parent: 1958:cce2724314dccaf2c426edabe3ad1d3ea1f004b1
> > > > > user: "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> > > > > date: Mon May 29 19:29:27 2006 +0200
> > > > > files:
> > > > > description:
> > > > > merge
> > > > >
> > > > >
> > > > > changeset: 1959:189ad5b395cb410ba6a45d7a4a5f91c9865b0034
> > > > > parent: 1957:e52484e9ba196d7ec4d5e66fd584c133ee020691
> > > > > user: "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> > > > > date: Mon May 29 19:27:53 2006 +0200
> > > > > files: src/kernel/function/ConstantFunction.cpp src/kernel/function/DiscreteFunction.cpp src/kernel/function/Function.cpp src/kernel/function/FunctionPointerFunction.cpp src/kernel/function/UserFunction.cpp src/kernel/function/dolfin/ConstantFunction.h src/kernel/function/dolfin/DiscreteFunction.h src/kernel/function/dolfin/Function.h src/kernel/function/dolfin/FunctionPointerFunction.h src/kernel/function/dolfin/GenericFunction.h src/kernel/function/dolfin/UserFunction.h src/kernel/la/dolfin/DenseVector.h
> > > > > description:
> > > > > Remove all PETSc ifdef's from src/kernel/function. DenseVector is
> > > > > used to store discrete values if PETSc is not enabled.
> > > >
> > > > Is there no uBlasSparseVector?
> > > >
> > >
> > > There is a uBlas sparse vector, but I don't see the point in using it as
> > > our vectors are generally not sparse. Does PETSc use sparse storage for
> > > vectors? I have the feeling that it doesn't.
> > >
> > > Garth
> >
> > I don't see a point in sparse vectors either, just thinking about how
> > to make it consistent. Now SparseMatrix may or may not work together
> > with DenseMatrix (in solve()), depending on whether we compile with PETSc.
> >
>
> We'll need to sort out a few wrinkles with the linear solvers. To be
> consistent, I might rename "DenseMatrix" "uBlasMatrix" and
> "SparseVector" "PETScVector" with appropriate typedef's.
Sounds good.
> Another thing we should start thinking about is keeping track of the
> non-zero structure of sparse matrices. For the uBlas compressed row
> storage matrix, assembly is about 10 faster if the structure is already
> set-up. At the moment, the function clear() destroys this. Not sure what
> impact this will have for PETSc matrices.
>
> Garth
This is important for PETSc matrices also (even more important I'd
guess). Is it enough with the number of nonzeros or is the exact
structure needed?
We make a crude estimate in FEM::estimateNonZeros() but we could do
much better.
/Anders
Follow ups
References