← Back to team overview

dolfin team mailing list archive

Re: [HG dolfin] merge.

 



Anders Logg wrote:
On Sat, Mar 24, 2007 at 04:49:15PM +0100, 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:   2781:9abd9fe6941eba84f35a647a90a72931247d2f19
tag:         tip
parent:      2780:5cac4057403b78d443554190dddd4c8f33119489
parent:      2778:bf8c741d97f0c0ef3a46102c5f4fe5ab54082dc1
user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
date:        Sat Mar 24 16:48:47 2007 +0100
files: description:
merge.


changeset:   2780:5cac4057403b78d443554190dddd4c8f33119489
user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
date:        Sat Mar 24 16:41:19 2007 +0100
files:       src/kernel/fem/BoundaryCondition.cpp src/sandbox/assembly/main.cpp
description:
Small clean-up.


changeset:   2779:7903177af9628644db3c52d806fda0b0861732cf
parent:      2776:a12ef0274893cbce4db94abee4e16e8aa03b4e83
user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
date:        Sat Mar 24 16:36:05 2007 +0100
files:       src/kernel/fem/BoundaryCondition.cpp src/kernel/fem/dolfin/BoundaryCondition.h src/sandbox/assembly/main.cpp
description:
Small clean-up in BoundaryCondition.

To put everything in place, waiting on FFC to generate the necessary
UFC functions and the see what the UFC/DOLFIN Function interface looks
like.

Will look just as it does today, with "::" --> "" on the DOLFIN side.

With the following form in FFC (in say Poisson.form),

   f = Function()
   L = v*f*dx

you will be able to do

   Function f;
   PoissonLinearForm L(f);

in DOLFIN. Same as before, but PoissonLinearForm instead of Poisson::LinearForm.


I was thinking more along the lines of how to work with ufc::function in order to call the function

  virtual double evaluate_dof(unsigned int i, const ufc::function& f,
                              const ufc::cell& c) const

Garth


It remains to modify the Assembler interface to

  void assemble(GenericTensor& A, const ufc::form& form, Mesh& mesh,
                Array<Function*> coefficients);

and add a function

  void assemble(GenericTensor& A, const NewForm& form, Mesh& mesh);

that calls the first one. (The class NewForm has a member coefficients.)

It also remains for the assembler to take the array of coefficient
functions and interpolate the values into the double** w array that
goes into tabulate_tensor().

I should be able finish this next week, modulo some bugs.

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





Follow ups

References