On Fri, 6 Nov 2015, Miguel Angel Salazar de Troya wrote:

>> I found out I can use elem->id () == mesh.processor_id() instead of
>> elem->is_remote().

This is what the _local_ iterators (that John recommended, IIRC) do
for you.

>> However, there's a problem when I iterate over all the
>> elements and it's that not all processors iterate over all the elements.

Are you using SerialMesh?  If so, then your mesh has become
inconsistent.  That's not something we can protect against (we don't
do anything mesh-breaking in the library, but we can't stop you from
doing so in user code).  You'll probably have to use some of the
dbg-mode MeshTools tests (or your own code snippet) to locate the
problem.

Are you instead using ParallelMesh?  If so, then you've just
discovered the whole point of ParallelMesh: processors don't have to
store every element in the mesh, only those they own and a layer of
"ghosts" around them.
---
Roy

------------------------------------------------------------------------------
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to