Convert Mesh Data from FEM to DOLFIN XML Format

FEM_TO_XML is a C++ program which reads FEM files of node coordinates and element connectivity, which define a mesh of a 1D, 2D, or 3D region and creates a corresponding DOLFIN XML file.

These mesh files can be used as input to DOLFIN or FENICS.


fem_to_xml prefix
where prefix is the common filename prefix:


The computer code and data files made available on this web page are distributed under the GNU LGPL license.


FEM_TO_XML is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

DOLFIN-CONVERT, a Python program which can convert mesh file from Gmsh, MEDIT, METIS or SCOTCH format to an XML format suitable for use by DOLFIN or FENICS, by Anders Logg.

FEM_TO_GMSH, a C++ program which reads FEM files definining a 1D, 2D or 3D mesh, namely a file of node coordinates and a file of elements defined by node indices, and creates a Gmsh mesh file.

FEM_TO_MEDIT, a C++ program which reads a pair of FEM files defining node coordinates and elements, and creates a corresponding MEDIT mesh file.

FEM_TO_TRIANGLE, a C++ program which reads FEM files defining a 2D mesh of triangles, namely a file of node coordinates and a file of elements defined by node indices, and creates a corresponding pair of node and element files for use by Jonathan Shewchuk's triangle program.

FENICS, programs which illustrate the use of a collection of free software with an extensive list of features for automated, efficient solution of differential equations.

MITCHELL_FENICS, examples which illustrate the implementation of the Mitchell 2D elliptic partial differential equation (PDE) test problems using FENICS.

TET_MESH, a C++ library which carries out various operations on tetrahedral meshes.

TRIANGULATION, a C++ library which performs various operations on order 3 (linear) or order 6 (quadratic) triangulations.

XML, a data directory which contains examples of XML files, a standard, general datafile format.

XML_TO_FEM, a Python program which reads an XML file created by FENICS or DOLFIN, describing a mesh in 1D, 2D, or 3D, and creates corresponding FEM files, namely, a file of node coordinates, and a file of element connectivities.


  1. Anders Logg, Kent-Andre Mardal, Garth Wells,
    Automated Solution of Differential Equations by the Finite Element Method: The FEniCS Book,
    Lecture Notes in Computational Science and Engineering,
    Springer, 2011,
    ISBN13: 978-3642230981,

Source Code:

Examples and Tests:

BATTERY is a rectangular region which was subdivided into 7 faces which were meshed together by MESHFACES.

CHANNEL/b> is a 3D region, [0,3]x[0,1]x[0,1] [-1,+1], containing 63 nodes and 144 elements.

CHEBY9 is a 1D interval, [-1,+1], containing 9 nodes and 8 elements.

CIRCLE is a 2D circular region which was meshed by MESH2D.

RECTANGLE is a rectangular region which has been divided into 3 rows and 4 columns of squares, each then split into two 3-node triangles.

List of Routines:

You can go up one level to the C++ source codes.

Last revised on 06 October 2014.