<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 16, 2016 at 7:23 AM, gouarin <span dir="ltr"><<a href="mailto:loic.gouarin@math.u-psud.fr" target="_blank">loic.gouarin@math.u-psud.fr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi,<br>
<br>
I try to use PETSc to solve BEM problem so I need to construct a surface with 3D coordinates. First of all, I would like to plot the mesh and I think that the output of the viewer is completely wrong.<br>
<br>
Here is a Python example<br>
<br>
import sys, petsc4py<br>
petsc4py.init(sys.argv)<br>
import numpy as np<br>
import petsc4py.PETSc as petsc<br>
<br>
<br>
coords = np.array([[0, 0, 0],<br>
                   [1, 0, 0],<br>
                   [0, 1, 0],<br>
                   [1, 1, 0],<br>
                   [0, 0, 1],<br>
                   [1, 0, 1],<br>
                   [0, 1, 1],<br>
                   [1, 1, 1],<br>
                  ], dtype=np.double)<br>
<br>
cells = np.array([[0, 1, 3, 2],<br>
                  [1, 5, 7, 3],<br>
                  [0, 4, 6, 2],<br>
                  [2, 3, 6, 7],<br></blockquote><div><br></div><div>This quad is mis-specified, since 3-6 is a diagonal.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
                  [0, 1, 5, 4],<br>
                  [4, 5, 7, 6],<br>
                 ], dtype=np.int32)<br>
<br>
dm = petsc.DMPlex().createFromCellList(2, cells, coords, interpolate=False, comm=petsc.COMM_WORLD)<br>
<br>
viewer = petsc.Viewer().createHDF5('cube.h5', 'w')<br>
dm.view(viewer)<br>
<br>
If you look at the cells in the cube.h5, the numbering of the points is wrong.<br></blockquote><div><br></div><div>I rewrote this in C, and I can visualize the surface. I then run it using</div><div><br></div><div>  ./ex18 -dm_view hdf5:dm.h5</div><div><br></div><div>and process that file</div><div><br></div><div>  ./bin/petsc_gen_xdmf.py dm.h5</div><div><br></div><div>This won't quite work when you have interpolate = PETSC_FALSE, because then I do not force the 'viz' output,</div><div>however it can be forced with a viewer format.</div><div><br></div><div>  Thanks,</div><div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Thanks,<br>
Loic<span class=""><font color="#888888"><br>
-- <br>
Loic Gouarin<br>
Laboratoire de Mathématiques<br>
Université Paris-Sud<br>
Bâtiment 425<br>
91405 Orsay Cedex<br>
France<br>
Tel: <a href="tel:%28%2B33%29%201%2069%2015%2060%2014" value="+33169156014" target="_blank">(+33) 1 69 15 60 14</a><br>
Fax: <a href="tel:%28%2B33%29%201%2069%2015%2067%2018" value="+33169156718" target="_blank">(+33) 1 69 15 67 18</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div>
</div></div>