← Back to team overview

dolfin team mailing list archive

Re: [HG DOLFIN] merge

 



Anders Logg wrote:
On Tue, Sep 29, 2009 at 08:55:03PM +0100, Garth N. Wells wrote:
I'm looking forward to seeing the new code. Is all the old functionality
still in place?

Yes and no. Everything except the generated CoefficientSet stuff
should still work in the C++ interface, but the Python interface won't
work until the corresponding changes have been made on the Python side.

Here's some more information about the changes:

1. Subclassing Function and overloading eval() has been replaced by
the Expression subclass which works in the same way with eval().

2. All the old functionality/logic of the Function class is still in
place but it can now be cleaned up and simplified.

3. A Function will now *always* have a FunctionSpace and *always* have
a vector.

4. An Expression *never* has a FunctionSpace and *never* has a vector.

5. FunctionSpaces are not attached to coefficients when doing a.f = f.

6. The DOLFIN wrappers have been simplified and now rely on the
new very simple CoefficientAssigner class.

7. The assembler works through the common base class Coefficient, in
particular the restrict() function for restricting to a local element.

8. Some checks have been removed in Assembler since a Coefficient does
not (if it is an Expression) have a FunctionSpace so we can't check
value_rank etc.

Things that need to be done now:

1. Clean up Function.


Should we have the functions

  void Function::interpolate(const Expression& expression)
  const Function& Function::operator= (const Expression& expression)

to interpolate an expression in a FE space?

Garth


2. Use the Expression class in demos where appropriate (just need to
change the class name, everything else is the same).

3. Fix Python interface.

I won't be touching it until tomorrow afternoon so feel free to poke
around.

--
Anders


------------------------------------------------------------------------

_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev




Follow ups

References