  We present a simple yet general and efficient approach to representation of
computational meshes. Meshes are represented as sets of mesh entities of
different topological dimensions and their incidence relations. We discuss a
straightforward and efficient storage scheme for such mesh representations and
efficient algorithms for computation of arbitrary incidence relations from a
given initial and minimal set of incidence relations. The general
representation may harbor a wide range of computational meshes, and may also be
specialized to provide simple user interfaces for particular meshes, including
simplicial meshes in one, two and three space dimensions where the mesh
entities correspond to vertices, edges, faces and cells. It is elaborated on
how the proposed concepts and data structures may be used for assembly of
variational forms in parallel over distributed finite element meshes.
Benchmarks are presented to demonstrate efficiency in terms of CPU time and
memory usage.
