<div dir="ltr"><div><div><div><div>Hello Andy<br><br></div>Ok I think I have a better understanding of what you need. You&#39;d like to pick several nodes out of a larger dataset and feed them to Paraview without having to change the node numbers, is that right? I don&#39;t think that is possible at all, unfortunately. The XDMF reader doesn&#39;t distinguish between the node&#39;s ID and the node&#39;s index in the array.<br>
<br></div>However, I was able to modify your example with an Attribute to reflect the original node numbers, while also providing connectivity that complies with the expectation of 0-offset. I loaded the result into Paraview and was able to display your original node numbers (pls see attached). <br>
<br></div>It might be easy for you to provide a little conversion code to do the node renumbering for XDMF. You&#39;d have to make an array to act as a lookup table between the original node numbers and the new, contiguous, 0-offset node numbers. Then map old to new, and store to XDMF. The Attribute element is then used to store the lookup table.<br>
<br></div><div>Here is your example with the modifications described above:<br></div><div><br>&lt;?xml version=&quot;1.0&quot;?&gt;<br>&lt;!DOCTYPE Xdmf SYSTEM &quot;Xdmf.dtd&quot;&gt;<br>&lt;Xdmf xmlns:xi=&quot;<a href="http://www.w3.org/2003/XInclude">http://www.w3.org/2003/XInclude</a>&quot; Version=&quot;2.2&quot;&gt;<br>
  &lt;Domain&gt;<br>    &lt;Grid GridType=&quot;Uniform&quot;&gt;<br>      &lt;Topology TopologyType=&quot;Quadrilateral&quot; Dimensions=&quot;1&quot;&gt;<br>        &lt;DataItem Dimensions=&quot;1 4&quot; NumberType=&quot;Int&quot; Precision=&quot;8&quot; Format=&quot;XML&quot;&gt;<br>
           0 1 3 2<br>        &lt;/DataItem&gt;<br>      &lt;/Topology&gt;<br>      &lt;Geometry GeometryType=&quot;XYZ&quot;&gt;<br>        &lt;DataItem Dimensions=&quot;4 3&quot; NumberType=&quot;Float&quot; Precision=&quot;4&quot; Format=&quot;XML&quot;&gt;<br>
          -0.5 -0.5 0  <br>          0.5 -0.5 0 <br>          -0.5 0.5 0 <br>           0.5 0.5 0 <br>        &lt;/DataItem&gt;<br>      &lt;/Geometry&gt;<br>      &lt;Attribute Name=&quot;myNodeLabel&quot; AttributeType=&quot;Scalar&quot; Center=&quot;Node&quot;&gt;<br>
         &lt;DataItem Dimensions=&quot;4&quot; NumberType=&quot;Int&quot; Precision=&quot;4&quot; Format=&quot;XML&quot;&gt;<br>            300 20 22 80<br>         &lt;/DataItem&gt;<br>      &lt;/Attribute&gt;<br>    &lt;/Grid&gt;<br>
  &lt;/Domain&gt;<br>&lt;/Xdmf&gt;<br><br></div>Cheers<br>Jason<br><div><div><br><div><br> <br></div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Nov 25, 2013 at 11:48 AM, Andrew Parker <span dir="ltr">&lt;<a href="mailto:andy.john.parker@googlemail.com" target="_blank">andy.john.parker@googlemail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Jason,<div><br></div><div>Many thanks for your reply.  In my case I&#39;m not quite sure how attributes would help me, but I may not fully understand how they work.  As I posted in the second xmf example file in my last email, given 4 nodes with 4 unique positions, I can completely define the plane topologically by writing the node numbers out in the correct order, their actual label/value/number doesn&#39;t matter (as long as it consistently refers to the correct position).  </div>


<div><br></div><div>In my example I used [300 20 22 80] as the node labels to define a 2D plane.  However, my current understanding of xdmf(2) is that I would need to supply in the geometry section (regardless of GeometryType) 301 x, y and z node positions (even if 297 are just zeros), just so that I could conform to the zero-based implicit numbering of that section.  That allows paraview to index that data and pick out (the only) 4 positions it requires to define the plane. </div>



<div><br></div><div>I&#39;m asking whether there is a way round this so that, as I gave as an example in my second xmf file, one could additionally provide an explicit node number next to each x,y,z position so that the implicit zero-based numbering could be skipped and only 4 x,y,z positions needed to be added to the file in addition to their label/value/number.</div>



<div><br></div><div>Can attributes do this?  If so could you provide a quick example, ideally just with reference to the second example file I included in my email?  Do you have a link to the xdmf(2) mail list?</div><div>


<br>Many thanks again,</div><div>Andy</div><div><div class="h5">
<div class="gmail_extra"><br><br><div class="gmail_quote">On 25 November 2013 16:13, Jason Fleming <span dir="ltr">&lt;<a href="mailto:jason.fleming@seahorsecoastal.com" target="_blank">jason.fleming@seahorsecoastal.com</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hello Andy<br><br></div><div>The XDMF2 library has the ability to assign Attributes and Information data to Geometry objects. So you wouldn&#39;t be changing the node numbers, you&#39;d just be adding a new Attribute that has different values at each node, and you&#39;d need to display this new Attribute in Paraview instead of the node numbers. <br>



</div><div><br>Since you mentioned offsets for XDMF arrays: I&#39;ve been working on an XDMF2 implementation for ADCIRC, a finite element coastal ocean model. Being a fortran code, ADCIRC uses 1-offset arrays, while the XDMF2 standard is 0-offset. <br>



<br>Its easy enough for us to subtract 1 from the node numbers in the element table when storing mesh data as XDMF2, reversing the operation upon read into ADCIRC or leaving them as-is for reading into Paraview. However, when looking at node and element number labels on ADCIRC data in Paraview, the analyst has to remember that all the displayed values are actually off by 1. <br>




<br></div><div>I emailed the XDMF mailing list and got a reply from the primary developers that they were previously unaware of the demand for 1-offset arrays, but they are now researching the possibility of adding this.<br>



<br></div><div>Your case is a little different, since it seems you are interested in arbitrary node numbering. But I thought I would mention the above background info for completeness. As I said, XDMF2 Attributes may be the solution for you. <br>



</div><div><br>Cheers<br>Jason<br><br></div><div><br></div><div><br><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div>On Mon, Nov 25, 2013 at 10:41 AM, Andrew Parker <span dir="ltr">&lt;<a href="mailto:andy.john.parker@googlemail.com" target="_blank">andy.john.parker@googlemail.com</a>&gt;</span> wrote:<br>



</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div class="gmail_quote"><div dir="ltr">All,<div><br></div><div>I thought I&#39;d forward this onto the paraview list in case somebody could think of a way to do this?  Please see my email below which I originally sent to the vtk user list.  Any help would be very much appreciated, including the fact that it just cannot be done.  I would in particular welcome thoughts from those who have helped develop the xdmf2 lib within the paraview source.</div>



<div><div>


<div><br>Many thanks again,</div><div>Andy<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>Date: 23 November 2013 17:13<br>Subject: [vtkusers] Explicit numbering of nodes for Xdmf/h5<br>To: &quot;<a href="mailto:vtkusers@vtk.org" target="_blank">vtkusers@vtk.org</a>&quot; &lt;<a href="mailto:vtkusers@vtk.org" target="_blank">vtkusers@vtk.org</a>&gt;<br>






<br><br><div dir="ltr">All,<div><br></div><div>In an effort to spark some comments I thought I&#39;d try to provide a small example for what I want to do in case my previous post (below) was unclear.  Below is a valid xdmf file that paraview understands for a plane.<br>







<div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">&lt;?xml version=&quot;1.0&quot;?&gt;</div><div class="gmail_extra">&lt;!DOCTYPE Xdmf SYSTEM &quot;Xdmf.dtd&quot;&gt;</div><div class="gmail_extra">







&lt;Xdmf xmlns:xi=&quot;<a href="http://www.w3.org/2003/XInclude" target="_blank">http://www.w3.org/2003/XInclude</a>&quot; Version=&quot;2.2&quot;&gt;</div><div class="gmail_extra">  &lt;Domain&gt;</div><div class="gmail_extra">






    &lt;Grid GridType=&quot;Uniform&quot;&gt;</div>
<div class="gmail_extra">      &lt;Topology TopologyType=&quot;Quadrilateral&quot; Dimensions=&quot;1&quot;&gt;</div><div class="gmail_extra">        &lt;DataItem Dimensions=&quot;1 4&quot; NumberType=&quot;Int&quot; Precision=&quot;8&quot; Format=&quot;XML&quot;&gt;</div>







<div class="gmail_extra">           0 1 3 2 </div><div class="gmail_extra"><span style="white-space:pre-wrap">        </span>&lt;/DataItem&gt;</div><div class="gmail_extra">      &lt;/Topology&gt;</div><div class="gmail_extra">







      &lt;Geometry GeometryType=&quot;XYZ&quot;&gt;</div><div class="gmail_extra">        &lt;DataItem Dimensions=&quot;4 3&quot; NumberType=&quot;Float&quot; Precision=&quot;4&quot; Format=&quot;XML&quot;&gt;</div><div class="gmail_extra">







<span style="white-space:pre-wrap">        </span>  -0.5 -0.5 0 </div><div class="gmail_extra"><span style="white-space:pre-wrap">        </span>  0.5 -0.5 0 </div><div class="gmail_extra"><span style="white-space:pre-wrap">        </span>  -0.5 0.5 0 </div>







<div class="gmail_extra"><span style="white-space:pre-wrap">        </span>  0.5 0.5 0 </div><div class="gmail_extra"><span style="white-space:pre-wrap">        </span>&lt;/DataItem&gt;</div><div class="gmail_extra">      &lt;/Geometry&gt;</div>







<div class="gmail_extra">    &lt;/Grid&gt;</div><div class="gmail_extra">  &lt;/Domain&gt;</div><div class="gmail_extra">&lt;/Xdmf&gt;</div><div><br></div><div>---  Now, what I want to do is to allow for the fact that the nodes defining this plane, may happen to be labelled 300, 20, 22, 80 instead of 0-&gt;3.  The key point being that there is still only 4 nodes, not 300 in the file for which I only need 4 to define the geom, but need to write out 300 to all for the 0-based implicit ordering.  Therefore, I&#39;d like a section in the geom part of the xmf file to qualify this numbering.  It doesn&#39;t bother me if they&#39;re subsequently renumbered inside paraview/vtk, only that I don&#39;t have to, as this is a simplistic version of something more complicated.  So to be verbose, it should now look like:</div>







<div><br></div><div><div>&lt;?xml version=&quot;1.0&quot;?&gt;</div><div>&lt;!DOCTYPE Xdmf SYSTEM &quot;Xdmf.dtd&quot;&gt;</div><div>&lt;Xdmf xmlns:xi=&quot;<a href="http://www.w3.org/2003/XInclude" target="_blank">http://www.w3.org/2003/XInclude</a>&quot; Version=&quot;2.2&quot;&gt;</div>







<div>  &lt;Domain&gt;</div><div>    &lt;Grid GridType=&quot;Uniform&quot;&gt;</div><div>      &lt;Topology TopologyType=&quot;Quadrilateral&quot; Dimensions=&quot;1&quot;&gt;</div><div>        &lt;DataItem Dimensions=&quot;1 4&quot; NumberType=&quot;Int&quot; Precision=&quot;8&quot; Format=&quot;XML&quot;&gt;</div>







<div>          <b> 300 20 22 80 </b></div><div><span style="white-space:pre-wrap">        </span>&lt;/DataItem&gt;</div><div>      &lt;/Topology&gt;</div><div>      &lt;Geometry GeometryType=&quot;<b>XYZ_Explicit</b>&quot;&gt;</div>







<div>        &lt;DataItem Dimensions=&quot;4 3&quot; NumberType=&quot;Float&quot; Precision=&quot;4&quot; Format=&quot;XML&quot;&gt;</div><div><b><span style="white-space:pre-wrap">        </span>  20 -0.5 -0.5 0 </b></div><div>







<b><span style="white-space:pre-wrap">        </span>  22 0.5 -0.5 0 </b></div><div><b><span style="white-space:pre-wrap">        </span>  80 -0.5 0.5 0 </b></div><div><b><span style="white-space:pre-wrap">        </span>  300 0.5 0.5 0 </b></div>







<div><span style="white-space:pre-wrap">        </span>&lt;/DataItem&gt;</div><div>      &lt;/Geometry&gt;</div><div>    &lt;/Grid&gt;</div><div>  &lt;/Domain&gt;</div><div>&lt;/Xdmf&gt;</div></div><div><br></div><div>Can this be done, or could this be done in the future?  Am I being daft and there is an easy way to do this?</div>







<div><br>Cheers again,</div><div>Andy</div><div><div class="gmail_extra"><br></div></div></div></div></div></div></div></div></div></div>
</div><br></div>
<br></div></div>_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ParaView Wiki at: <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
<br></blockquote></div><span><font color="#888888"><br><br clear="all"><br>-- <br><div dir="ltr">Dr. Jason G. Fleming<br>Chief Engineer, Seahorse Coastal Consulting<br>3103 Mandy Ln<br>Morehead City, NC 28557<br>

Tel: <a href="tel:%28252%29%20726-6323" value="+12527266323" target="_blank">(252) 726-6323</a><br>Mobile: <a href="tel:%28252%29%20269-0962" value="+12522690962" target="_blank">(252) 269-0962</a><br>
Web: <a href="http://www.seahorsecoastal.com" target="_blank">http://www.seahorsecoastal.com</a><br></div>
</font></span></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div><br><br clear="all"><br>-- <br><div dir="ltr">Dr. Jason G. Fleming<br>Chief Engineer, Seahorse Coastal Consulting<br>3103 Mandy Ln<br>Morehead City, NC 28557<br>Tel: (252) 726-6323<br>Mobile: (252) 269-0962<br>
Web: <a href="http://www.seahorsecoastal.com" target="_blank">http://www.seahorsecoastal.com</a><br></div>
</div>