Which state of ghost dofs is assumed to hold in the mean time by design:

1. consistent values,
or
2. inconsistent values?

If 1. holds the logic is that every piece of (DOLFIN or user's) code
which changes dof values calls `update_ghost_values()` before returning.

If 2. is correct then logic would be that each piece of code which
wants to read ghost dofs calls `update_ghost_values()` just right
before doing it.

I guess that PETSc never updates ghost dofs unless user explicitly 
calls `VecGhostUpdateBegin/End`. Is it correct?

Who in DOLFIN bassically reads from ghost dofs? Is it `restrict` and
`compute_vertex_values` only? I see `update` only in the latter. Then
there are some `update`s in assemblers so it seems little inconsistent
to me - like being halfway between approach 1. and 2 - so that there
is breeding ground for a bugs.

Jan
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to