<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px;">
<div style="font-family: Calibri, sans-serif;">Hi all, </div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">I hope someone can help me with the following:</div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">I’m having some problems when exporting a distributed DMPlex – the cells (+cell types) seems to be duplicated.</div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">When I’m running the code on a non-distributed system it works as expected, but when I run it on multiple processors (2 in my case) the output is invalid.</div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">I have attached a simple example and the output for np=1 and np=2.</div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">Abbreviated the code essentially does the following:</div>
<div style="font-family: Calibri, sans-serif;">'</div>
<div>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px;">
<div><font face="Courier">PetscInt       dim         = 3;</font></div>
<div><font face="Courier">PetscInt       cells[]     = {1, 1, 2};</font></div>
<div><font face="Courier">PetscInt       overlap     = 1;</font></div>
<div><font face="Courier">PetscInitialize(&argc, &argv, NULL, help);</font></div>
<div><font face="Courier">DMPlexCreateHexBoxMesh(PETSC_COMM_WORLD, dim, cells, DM_BOUNDARY_NONE, DM_BOUNDARY_NONE, DM_BOUNDARY_NONE, &dm);</font></div>
<div><font face="Courier">DMPlexDistribute(dm, overlap, NULL, &dist);</font></div>
<div><font face="Courier">dm   = dist;</font></div>
<div><font face="Courier">SetupDOFs(dm);</font></div>
<div><font face="Courier">Vec V;</font></div>
<div><font face="Courier">DMCreateGlobalVector(dm, &V);</font></div>
<div><font face="Courier">AssignSomeValues(V);</font></div>
<div><font face="Courier">PetscViewer viewer;</font></div>
<div><font face="Courier">const char* fn = "output.vtk";</font></div>
<div><font face="Courier">PetscViewerVTKOpen(PETSC_COMM_WORLD,fn,FILE_MODE_WRITE,&viewer);</font></div>
<div><font face="Courier">VecView(V,viewer);</font></div>
<div><font face="Courier">PetscViewerDestroy(&viewer);</font></div>
</blockquote>
</div>
<div style="font-family: Calibri, sans-serif;"><br>
</div>
<div style="font-family: Calibri, sans-serif;">Kind regards,</div>
<div style="font-family: Calibri, sans-serif;">Morten</div>
</body>
</html>