We added some time ago

   dof_map::max_local_dimension()

and perhaps we also need

   finite_element::max_local_dimension()

and

   finite_element::local_dimension(const ufc_cell& )

I have a problem for which the number of dofs an element has can grow 
during a computation. You may say that this is then a different element, 
but that would make it hard to handle in DOLFIN and hard to generate 
code for.

Here's an example of an inconsistency. In dolfin::Function, we 
initialise some scratch space for the dof map based on the element space 
dimension,

   dofs = new uint[element.space_dimension()];
   for (uint i = 0; i < element.space_dimension(); i++)
     dofs[i] = 0;

whereas is dolfin::UFC we use dof_map::max_local_dimension().

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

Reply via email to