← Back to team overview

dolfin team mailing list archive

Re: Version 0.6.0?

 

On Mon, Feb 13, 2006 at 02:46:04PM +0100, Johan Jansson wrote:

> I think two remaining features to implement are:
> 
> 1. Loading Functions (DiscreteFunction) from file.

ok, which format do we want to do initially? DOLFIN XML?

Maybe we should also consider some binary format that is quicker to
write and parse? Could be useful mostly during computations (and less
useful for storing solutions for future reference) for example when
solving the dual problem and linearizing around a previously computed
solution (or time sequence of solutions) that doesn't fit in memory.

> 2. An interface for projecting/interpolating between Functions. The
> main example which requires some manual work in solvers is defining
> the initial values by a UserFunction and wanting to represent that as
> a DiscreteFunction.

I'm not sure what you mean. I thought I solved this with the new
functionality I added to the Function class last week. You can define
a Function for the initial value by overloading eval(), or even by

Function u = 0.0;

and then u can change from being a user-defined Function to a discrete
Function. See new convection-diffusion demo.

You can also do

Function u(x, mesh, element);
u = f;

to interpolate f to u.

But there is currently no way to project between two discrete
Functions without going through FFC and defining the projection.

We could add some functionality for this by predefining the
projections between function spaces for a reasonably small set of
spaces and precompile the forms if we want, say between P^q and P^p
for p, q <= 5.

> We've discussed both of these before, and I think we're pretty clear
> on what needs to be done. I think we should at least try to get these
> in before 0.6.0 since they are quite fundamental features.

I have limited time to work on new features before Geilo, but I can
probably fit something in if I get some help.

/Anders



Follow ups

References