← Back to team overview

dolfin team mailing list archive

Re: [HG DOLFIN] merge

 

On Wed, Sep 30, 2009 at 08:10:11AM +0100, Garth N. Wells wrote:
> 
> 
> Anders Logg wrote:
> > On Tue, Sep 29, 2009 at 10:37:51PM +0100, Garth N. Wells wrote:
> >>
> >> 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.
> >>>
> >> Will CoefficientSet come back? I was using it, but I forgot the
> >> important reason why. If I do
> >>
> >>     Form* a = new Poisson::BilinearForm(V, V);
> >>
> >> I can't do
> >>
> >>    a->g g;
> >>
> >> but I could do
> >>
> >>     Form* a = new Poisson::BilinearForm(V, V, coefficient_set);
> >>
> >> I can of course use dynamic cast and then attach functions.
> > 
> > We could easily add functionality for doing
> > 
> >   a->set_coefficient("g", g);
> > 
> > Would that be enough? 
> 
> That's half the story. The other half is cases with a lot of 
> coefficients (>10) and where the bilinear and linear forms have these 
> coefficients in common. CoefficientSet reduces by half the number of 
> lines of code. There is probably a simply approach without much extra 
> code generation but I haven't given it much thought yet.

It should not be much work to reimplement CoefficientSet directly in
DOLFIN (without any need for generating the code for it).

I'll put in on the stack.

-- 
Anders


> Garth
> 
> This would be a simple function implemented in
> > the C++ Form class. It's better if we can avoid generating code if
> > something can be implemented directly in the C++ class.
> > 
> 
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev

Attachment: signature.asc
Description: Digital signature


References