← Back to team overview

dolfin team mailing list archive

Function file io

 

After a long absence, Function i/o to file has made a come back. It
was particularly necessary to support running code in parallel that
reads in data for Functions (such as the advection-diffusion demo). We
have more demos running in parallel now, and it's now possible to
restart parallel computations reliably (and even on a different number
of processes).

When sending a Function to an XML file, there is an entry for each
vector (dof) entry, e.g.

    <dof global_index="2" value="0" cell_index="3" local_dof_index="0" />

'global_index' is the vector index, 'value' is the entry value,
'cell_index' is a cell that the dof belongs to and 'local_dof_index'
is the local dof number relative to the given cell. With this
information, it's possible to read in and use function data
independently of the new dof map. If anyone has suggestions or
objections to this format, speak up now.

When reading in a Function, the Function must have a FunctionSpace,
and the vector must already have been sized (since the partitioning of
the vector in parallel will depend on the mesh partition).

Garth


Follow ups