dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #23192
[Bug 733834] Re: Computing functions on boundaries gives incorrect result in parallel
** Changed in: dolfin
Milestone: 0.9.11 => 0.9.12
** Changed in: dolfin
Assignee: (unassigned) => Garth Wells (garth-wells)
--
You received this bug notification because you are a member of DOLFIN
Team, which is subscribed to DOLFIN.
https://bugs.launchpad.net/bugs/733834
Title:
Computing functions on boundaries gives incorrect result in parallel
Status in DOLFIN:
In Progress
Bug description:
The MeshFunction that stores exterior facets and which is used in
parallel, is computed when a DofMap is created. This is a problem when
assembling functionals on exterior facets and passing the mesh because
the mesh never computes the "exterior facets" MeshFunction. The below
code reproduced the error.
from dolfin import *
mesh = UnitSquare(24, 24)
f = Constant(1.0)
M = f*ds
# This is a hack to get around the bug
#if MPI.num_processes() > 1:
# cpp.MeshPartitioning.number_entities(mesh, mesh.topology().dim() - 1);
# This should print 4.0
print assemble(M, mesh=mesh)
References