← Back to team overview

dolfin team mailing list archive

Re: Adding factory functions in UFC

 

Den 28.01.11 00.30, skrev Anders Logg:
On Thu, Jan 27, 2011 at 11:10:08PM +0100, Anders Logg wrote:
I would like to add factory functions in UFC, in particular

   finite_element* finite_element::create() const;
   dof_map* dof_map::create() const;

Are there any objections to this? It would be easy to add and easy to
implement in FFC.

I need it to implement refinement of FunctionSpaces in DOLFIN where
fresh copies of ufc::finite_element and ufc::dof_map are needed given
a ufc::finite_element or ufc::dof_map.

An alternative is to hack create_sub_foo so that it returns a copy of
the element/dofmap itself if the component argument 'i' is>= the
number of sub elements/dofmaps.

I suggest we add this to UFC 1.6 and make a release next week together
with DOLFIN 0.9.10, FFC 0.9.5 + other packages that need release. The
sooner the better: there will be time to make bug fix releases and
things will be tested before 1.0 in March.

If there are any other things we want to add to UFC, now's a good
time.

What about the tabulate_tensor function taking arguments for runtime quadrature rules, as we discussed a while ago? ATM I hacked UFC and my generated form files having an additional function

virtual void tabulate_tensor(double* A,
                             const double * const * w,
                             const ufc::cell& c,
			     dolfin::uint num_quad_points,
			     const double * const * coordinates,
			     const double * weights) const

Such an interface would add a flexible layer for those who wants to have some type of runtime quadrature.

General opinons about that?

Cheers,
Andre




--
Anders

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


--
André Massing       		email: massing@xxxxxxxxx
Ph.D. student			mobile: +47 469 57 401
Simula Research Laboratory
NO-1367 Fornebu, Norway




Follow ups

References