← Back to team overview

dolfin team mailing list archive

Re: Python Form

 

On Thursday June 30 2011 16:55:46 Marie E. Rognes wrote:
> On 07/01/11 01:05, Johan Hake wrote:
> > On Jun 30, 2011, at 12:41, "Marie E. Rognes"<meg@xxxxxxxxx>  wrote:
> >> On 06/05/11 21:47, Marie E. Rognes wrote:
> >>> On 06/01/2011 05:45 PM, Johan Hake wrote:
> >>>> On Wednesday June 1 2011 05:31:35 Anders Logg wrote:
> >>>>> On Wed, Jun 01, 2011 at 01:29:20PM +0200, Marie E. Rognes wrote:
> >>>>>> I'm for some strange reason loooking at dolfin.fem.Form and
> >>>>>> 
> >>>>>> dolfin.fem.assemble:
> >>>>>>      The form can be either an FFC form or a precompiled UFC form.
> >>>>>>      If a precompiled or 'pure' FFC form is given, then
> >>>>>>      coefficients and function_spaces have to be provided too. The
> >>>>>>      coefficient functions
> >>>>>> 
> >>>>>> Where and in what cases is the above used?
> >>>>> 
> >>>>> I think this is something Martin and possibly Kent have requested
> >>>>> before. It's not used anywhere I know.
> >>>> 
> >>>> They were added so one could use dolfin to assemble a "pure"
> >>>> ufc::form. This is a nice feature for people who come with their own
> >>>> form compiler, which is not fully integrated with all the PyDOLFIN
> >>>> magic we have.
> >>>> 
> >>>> The statement:
> >>>>    "dolfin can assemble any ufc complaint code"
> >>>> 
> >>>> becomes a little more true with that possibility.
> >>> 
> >>> Ok, thanks :-)
> >> 
> >> Late follow-up: so is the logic in dolfin.fem.form regarding given
> >> function_spaces and coefficients versus those in form_data mainly
> >> designed around this?
> > 
> > Not sure I understand your question...
> 
> Sorry, I was unacceptably unclear.
> 
> What I meant to ask was this: if assemble did not handle both a "FFC
> form" and a "precompiled form"(*), but rather just a "FFC form" would it
> be sufficient to have a dolfin.fem.Form class that only had  form,
> form_compiler_parameters and common_cell as input to __init__?
> 
> (*) Side note: I'm using the terminology of the docstring of
> dolfin.fem.assembling here, but I find it a bit confusing, because it
> refers to a "precompiled or pure FFC form" as the same thing -- should
> it be "precompiled or pure UFC form"?

Yes, I guess you are right. But that is just wrong anyway. A dolfin.Form can 
be created from a pure ufc form if it is provided with FunctionSpace and 
Coefficient. One cannot just pass a pure ufc form to assemble.

The docstrings need to be updated, and we probably need a unit test for this 
too. In the meantime I think we can remove using pure ufc forms and ad it back 
if someone needs it ;) 

Recently we have stripped dolfin of nice but unused functionality, and this 
would be in line with that I guess.

Johan

> 
> :-)
> 
> --
> Marie
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~dolfin
> Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dolfin
> More help   : https://help.launchpad.net/ListHelp


Follow ups

References