<div dir="ltr">Thanks Tim!<div><br></div><div>I've fixed a small index bug and it appear to work now.</div><div><br></div><div>Cheers,</div><div>Nico</div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, Nov 1, 2015 at 8:52 PM Timothy Tautges <<a href="mailto:timothy.tautges@cd-adapco.com">timothy.tautges@cd-adapco.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">Call get_adjacencies with the book flag true, requesting all faces from elements then all edge's from elems. There's an equivalent itaps call to request a full mesh but I forget what it is. </p>
<div class="gmail_quote">On Nov 1, 2015 1:09 PM, "Nico Schlömer" <<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I'm writing a little conversion tool from VT*/Exodus to h5m, and I'm having some trouble with the edges/faces. For example, I can read node and element info from a VTK file; I can also write it out to a h5m file, see [1].<div><br></div><div>This file gets read alright by the HelloMOAB example, and reports</div><div>```</div><div><div>Number of vertices is 21218</div><div>Number of edges is 0</div><div>Number of faces is 0</div><div>Number of elements is 91215</div></div><div>```</div><div>All good.</div><div><br></div><div>Now, I would like have edges and faces. Can I create those entities at all? Or is there a MOAB tool to enrich a given h5m file [1] with edges and faces?</div><div><br></div><div>Cheers,</div><div>Nico</div><div><br></div><div>[1] <a href="http://chunk.io/f/836dc0de673947b8ac72ad0181f57862" target="_blank">http://chunk.io/f/836dc0de673947b8ac72ad0181f57862</a></div></div><br><div class="gmail_quote"><div dir="ltr">On Sat, Oct 31, 2015 at 5:34 PM Nico Schlömer <<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Sounds interesting!</div><div dir="ltr"><br><br>> As I said, we use Visit or Paraview (with plugins for moab h5m file)<br><br></div><div dir="ltr">This is the only thing I'm worried about. I mean, I myself could easily do that, but I can't possibly demand this from my users. I already see them failing to set up their viewers.<div><br></div><div>A tool that can convert between h5m, vtk, vtu, exodus etc. would certainly help. I already have a tool in place for all of the rest [1]. Perhaps it's an easy addition with [2].</div><div><span style="line-height:1.5">Ideal, as Timothy suggests, would be if MOAB supported (parallel) I/O with Exodus or VTU.</span><br></div><div><br></div><div>Cheers,</div><div>Nico</div><div><br></div><div>[1] <a href="https://github.com/nschloe/pygmsh/blob/master/tools/pygmsh-convert" target="_blank">https://github.com/nschloe/pygmsh/blob/master/tools/pygmsh-convert</a><br><div>[2] <a href="http://www.h5py.org/" target="_blank">http://www.h5py.org/</a></div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Sat, Oct 31, 2015 at 4:56 PM Grindeanu, Iulian R. <<a href="mailto:iulian@mcs.anl.gov" target="_blank">iulian@mcs.anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">Hi Nico,<br>
<br>
As I said, we use Visit or Paraview (with plugins for moab h5m file)<br>
we partition with mbpart (backend is zoltan or metis, directly)<br>
an msh file for gmsh can be partitioned with <br>
 mbpart 10 -z RCB screw.msh  screw.h5m<br>
<br>
<br>
partition means we add sets to our h5m file, that can be interpreted by visit plugin<br>
<br>
<img><br>
<br>
the file can be read in parallel/processed by moab application<br>
<br>
output is another h5m file (with new tags for new solution variables, which can be usually read by visit plugin directly from the file)<br>
<br>
<br>
If the file is too big, we can "extract" with some tools a portion only<br>
<br>
One issue is mbpart does not work in parallel now, but we will add that in the next release<br>
<br>
<br>
As long as you can read the file (  it was generated by one task), mbpart can partition it<br>
<br>
Iulian<br>
<br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><b>From:</b> Nico Schlömer [<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>]<br>
<b>Sent:</b> Saturday, October 31, 2015 10:25 AM</font></div></div></div></div><div><div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt"><div style="font-family:Times New Roman;color:#000000;font-size:16px"><div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><br>
<b>To:</b> Grindeanu, Iulian R.; <a href="mailto:moab-dev@mcs.anl.gov" target="_blank">moab-dev@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [MOAB-dev] MOAB insights?<br>
</font></div></div></div></div><div><div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt"><div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div></div>
<div>
<div dir="ltr">
<div>> what "standard" do you need ? Do you have an example ?<br>
<br>
Something that can be consumed by VTK/ParaView or for which there is a sufficiently broad user base (e.g., XDMF).<br>
</div>
<div><br>
</div>
The typical workflow right now:<br>
<br>
* Use Gmsh [1]/PyGmsh [2] to generate a mesh<br>
* use PyGmsh [2]/VTK [3] to translate the file into Exodus (.e)<br>
* use decomp from SEACAS [4] to split it into a set (e.g., .e.10.*)<br>
* Feed those files in parallel into the code, using STK/SEACAS.<br>
* run the code, get the output in split Exodus files<br>
* use ejoin from SEACAS to put them back together to one single Exodus file<br>
* visualize with Paraview.<br>
<br>
A crucial part here is the decomp which hooks up to Zoltan to generate a partition. I'm not tied to this, and if there is a tool that, for example, splits VTU files into PVTU, I'd be happy to use that.<br>
<br>
(Side note: Parallel Exodus is sometimes known as Nemesis, I believe.)<br>
<br>
What's the typical MOAB workflow? How do you visualize the data?
<div><br>
</div>
<div>Cheers,</div>
<div>Nico<br>
<br>
[1] <a href="http://geuz.org/gmsh/" target="_blank">http://geuz.org/gmsh/</a><br>
[2] <a href="https://pypi.python.org/pypi/pygmsh" target="_blank">https://pypi.python.org/pypi/pygmsh</a><br>
[3] <a href="http://www.vtk.org/" target="_blank">http://www.vtk.org/</a><br>
[4] <a href="https://launchpad.net/~nschloe/+archive/ubuntu/seacas-nightly" target="_blank">
https://launchpad.net/~nschloe/+archive/ubuntu/seacas-nightly</a><br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr">On Sat, Oct 31, 2015 at 3:57 PM Grindeanu, Iulian R. <<a href="mailto:iulian@mcs.anl.gov" target="_blank">iulian@mcs.anl.gov</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">Hi Nico,<br>
maybe you can describe your tool set a little<br>
exodus is supported by moab; what is parallel exodus? <br>
<br>
If your model is described in a series of files, we also have parallel merge tool, that can be used to stitch models in parallel
<br>
(in short, each task loads a file in serial, which is a part in a partition, then parallel merge can be used to have a global view / access, identify shared entities and enable ghosting; this assumes that the parts are "conforming" and not overlapping, as a
 geometric tolerance is used to identify common vertices)<br>
<br>
what  "standard" do you need ? Do you have an example ?<br>
<br>
Best Regards,<br>
Iulian<br>
<br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><b>From:</b> Nico Schlömer [<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>]<br>
<b>Sent:</b> Saturday, October 31, 2015 9:08 AM</font></div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><br>
<b>To:</b> Grindeanu, Iulian R.; <a href="mailto:moab-dev@mcs.anl.gov" target="_blank">
moab-dev@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [MOAB-dev] MOAB insights?<br>
</font></div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div></div>
<div>
<div dir="ltr">Thanks everyone!
<div><br>
</div>
<div>I believe that right now, I cannot efficiently use MOAB yet. We really need to be able to read from standardized file formats like XDMF, VTU, Exodus. This is what the tool set is composed around, and it'd probably much work to get it right for MOAB's custom
 HDF5-thing.</div>
<div><br>
</div>
<div>That said, I'd be happy to help out with extending MOAB in these directions. Perhaps after the release, we can arrange a plan.</div>
<div><br>
</div>
<div>Cheers,</div>
<div>Nico</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr">On Fri, Oct 30, 2015 at 12:40 AM Grindeanu, Iulian R. <<a href="mailto:iulian@mcs.anl.gov" target="_blank">iulian@mcs.anl.gov</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">Hi Nico,<br>
Sorry I missed your message<br>
I modified one of the examples to construct all edges and faces, and output them in some files<br>
<br>
after compiling it, you can launch it with <br>
<br>
./HelloMOAB<br>
<br>
or <br>
./HelloMOAB <other_file> <br>
<br>
other_file can be any file that can be loaded in MOAB, in serial (for example, a gmsh file)<br>
<br>
for parallel IO, you can look at HelloParMOAB example, or tests in test/parallel<br>
<br>
<br>
There is a list of examples on doxygen page, with more links on how is data accessed.<br>
<a href="http://ftp.mcs.anl.gov/pub/fathom/moab-docs/examples.html" target="_blank">http://ftp.mcs.anl.gov/pub/fathom/moab-docs/examples.html</a><br>
<br>
<br>
<br>
Iulian<br>
<br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><b>From:</b> Nico Schlömer [<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>]<br>
<b>Sent:</b> Thursday, October 29, 2015 3:37 PM</font></div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><br>
<b>To:</b> Grindeanu, Iulian R.; <a href="mailto:moab-dev@mcs.anl.gov" target="_blank">
moab-dev@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [MOAB-dev] MOAB insights?<br>
</font></div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div></div>
<div>
<div dir="ltr">Absolutely!
<div><br>
</div>
<div>I'm interested to see</div>
<div> * how I/O works,</div>
<div> * how edges/faces arecreated,</div>
<div> * how relationships are queried (Which cells does this face border on? Which nodes does this cell have? etc)</div>
<div><br>
</div>
<div>If there's an example in the sources, I'd be more than happy to look at that, too, of course.</div>
<div><br>
</div>
<div>Cheers,</div>
<div>Nico</div>
<div><br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr">On Thu, Oct 29, 2015 at 9:19 PM Grindeanu, Iulian R. <<a href="mailto:iulian@mcs.anl.gov" target="_blank">iulian@mcs.anl.gov</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt"><br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><b>From:</b> Nico Schlömer [<a href="mailto:nico.schloemer@gmail.com" target="_blank">nico.schloemer@gmail.com</a>]<br>
<b>Sent:</b> Thursday, October 29, 2015 12:45 PM<br>
<b>To:</b> Grindeanu, Iulian R.; <a href="mailto:moab-dev@mcs.anl.gov" target="_blank">
moab-dev@mcs.anl.gov</a><br>
<b>Subject:</b> Re: [MOAB-dev] MOAB insights?<br>
</font><br>
</div>
<div></div>
<div>
<div dir="ltr"></div>
</div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div>
<div dir="ltr">> what means long for you, and what is the size of the mesh on one 
<div>> rank? what is a cell for you? a polyhedra or a </div>
<div>> tet/hex/prism/quad/triangle?</div>
<div><br>
</div>
<div>For me, long means (much) longer than the actual (linear) solver in the end. On a test cube [1] of 140k tets and 27k nodes, creating edges takes about one minutes, faces about two (on one core that is). The linear solver in the end takes about seven seconds.</div>
<br>
</div>
</div>
</div>
</div>
</div>
<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<div>
<div dir="ltr">hmmm, that is too long, indeed.<br>
<br>
For moab, creating the edges and/or faces for that size of a mesh is on the order  of seconds, on a laptop<br>
<br>
I will write a small example if you are interested <br>
<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div></div></div></blockquote></div></blockquote></div>
</blockquote></div>
</blockquote></div>