← Back to team overview

dolfin team mailing list archive

Re: Cleanup of linear algebra

 



Anders Logg wrote:
On Tue, Aug 08, 2006 at 09:30:52AM +0200, Johan Hoffman wrote:

I would be happy to help out, for example with renaming or updating the
manual.

I think Garth is done with the renaming. We just need to agree on
DenseVector I think. After that, I'll take a look at it again and
update the class diagram.


Just need to sort out uBlasLinearSolver. This is related to how preconditioners should handled and the fact that uBlasSparseMatrix is derived from uBlasKrylovMatrix (leads to an issue with uBlasLUSolver).

It would be great if we could all look over the design and agree on it
so we can finalize it and finish the manual.

In particular, we should look closely on GenericMatrix and
GenericVector. Are we completely happy with the current interface?
Should we remove something? Or add something? There are some functions
like zero(), ident() and nzmax() that we need for assembly but that
seem to be very special.

Another thing is the design of preconditioners which is not the same
for uBlas and PETSc. Can we fix this?


I'll have a crack at this today. I prefer the way it's done for PETScKrylovSolver in which the preconditioner is set when declaring a Krylov solver,

   PETScKrylovSolver petsc_solver(PETScPreconditioner pc);
   petsc_solver.solve(A, x ,b);	

rather than

   UblasKrylovSolver ublas_solver;
   ublas_solver.solve(A, x ,b, pc);	

The second case can be problematic for functions which may use either a direct or Krylov solver.

We should also try to make better use of the bugzilla system for
assigning tasks. Let's throw everything in there. There are currently
4 open bugs that we need to take care of but there are plenty more
we need to fix before the next release.


Would be nice if I knew how to use it :)

Although, I seem to have some problems compiling the current dolfin hg
version. Anyone who recognize this? Is there a bug, or do I have some
problem with my linking?

You seem to have an old version of ublas. Try upgrading to the latest
version.


It would be nice to test for the Boost version, but it's a horrible task with autoconf. We should update the dependencies file.

Garth

/Anders



Follow ups

References