← Back to team overview

fenics team mailing list archive

Merge of ufc-geometry branch

 

The ufc-geometry branches of UFC, FFC and DOLFIN have been merged into
trunk. In addition, the FFC branch merges in Martin's addition of the
new uflacs compiler backend to FFC. (Martin can comment on the status
of the uflacs backend.)

The changes in ufc-geometry were motivated by a cleanup of the
codesnippets in FFC and a simplification (?) of the UFC interface.
Some changes:

- Introduce header ufc_geometry.h in UFC to replace codesnippets.
  Quite a few codesnippets remain and should be migrated to the same
  header file.

- Use flattened arrays for all data structures. See comment on top of
  ufc_geometry.h for some remarks on the efficiency vs nested arrays
  and flattened/nested std::vector.

- Remove ufc::cell as a common data structure holding a bunch of data
  that may not be needed and therefore should not need to be updated.
  Instead, all data should be passed by primitive C data types.

Some of these are work in progress and more work needs to be
done. Before this, I'm going to merge UFC into FFC (if there are no
objections) to simplify the continued work as it involves changes on
both ends.

All tests in FFC and DOLFIN pass, but since quite a few things needed
to be changed (including some tedious and error-prone translation of
nested arrays for Jacobians and such into flattened arrays) there may
be bugs so watch out...

--
Anders



Follow ups