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.

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.
> 
> --
> Anders
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> DOLFIN-dev mailing list
> [email protected]
> http://www.fenics.org/mailman/listinfo/dolfin-dev

_______________________________________________
DOLFIN-dev mailing list
[email protected]
http://www.fenics.org/mailman/listinfo/dolfin-dev

Reply via email to