← Back to team overview

dolfin team mailing list archive

Re: [HG DOLFIN] Merge.

 

Garth N. Wells wrote:


Johan Jansson wrote:
Anders Logg wrote:
On Mon, Dec 03, 2007 at 01:05:51AM +0100, DOLFIN wrote:

changeset:   3430:4fa0790a4fc34d3abac3079644368813a252ac61
parent:      3428:7967082310c3ab03df9d812a6f471dcf988e7b4e
user:        "Johan Jansson <jjan@xxxxxxxxxx>"
date:        Sun Dec 02 20:17:50 2007 +0100
files: src/kernel/ode/MonoAdaptiveJacobian.cpp src/kernel/ode/MonoAdaptiveNewtonSolver.cpp src/kernel/ode/ODE.cpp src/kernel/ode/TimeSlabJacobian.cpp src/kernel/ode/dolfin/MonoAdaptiveJacobian.h src/kernel/ode/dolfin/MonoAdaptiveNewtonSolver.h src/kernel/ode/dolfin/ODE.h src/kernel/ode/dolfin/TimeSlabJacobian.h src/kernel/parameter/dolfin/DefaultParameters.h
description:
ODE:

Added support for computing the Jacobian as a sparse matrix (only for
mono-adaptive dG(0) and cG(1) so far, and only for PETSc).
Why PETSc? The ODE solvers are tied to uBlas so the vectors won't be
parallel.

How and when should this be used? Does it change anything in the
computation that the ODE solver does, or is it just a utility function
for computing the Jacobian that a user can call?
Ideally the ODE solver should support both uBlas and PETSc, I think the plan should be to transition to a general implementation if we start to use it more for PDE. PETSc has a higher priority than uBlas though, since that's what we use for large computations (due to efficiency and robustness), and since it's parallel while uBlas is not.


Why don't you try to implement it through the common interface? We'll soon have more linear algebra back-ends (e.g. Trilinos).

Garth
Yes, rewriting the ODE solver with the general linear algebra interface is on my todo-list. If the ODE interface is used more, then the incentive to do this will increase more (since otherwise we cannot use it in parallel for instance).

However, right now updating and releasing the things we already have working has top priority.

 Johan



Follow ups

References