It's got a bit of a learning curve, but have you thought about trying to integrate HDF5 into your code?  It supports a whole heck of alot of datatypes, and has built-in compression.  Couple it with Xdmf from ARL (Write an HDF5 file & a simple ascii Metadata file) or Xmdf from ERDC (Just write the HDF5 stuff into specially named fields) and it's pretty nice to work with.
<br><br><div><span class="gmail_quote">On 1/31/06, <b class="gmail_sendername">Dominik Szczerba</b> &lt;<a href="mailto:domi@vision.ee.ethz.ch">domi@vision.ee.ethz.ch</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I see the point. And yes, I want to stay far away from ASCII. So what<br>format would you recommend to STORE my results in a COMPRESSED way<br>maintaining readability with Paraview? Any binary legacy file I produce<br>takes gigabytes - crunched with gzip a fraction of it, but paraview
<br>won't read it. ASCII is simply prohibitive, base64'ed with<br>zlibcompressor not much better. At the moment I store my results in my<br>own gzipped format, and convert them to VTK format on demand - but that<br>is pretty annoying.
<br>regards,<br>--dsz<br><br>Berk Geveci wrote:<br>&gt; Base64 encoding is only necessary if you want your XML file to be<br>&gt; ASCII. This is necessary if you want the file to conform to XML so<br>&gt; that the file can be opened in XML viewers (like a browser). Also,
<br>&gt; some people prefer transferring ASCII files instead of binary files.<br>&gt; If you are not interested in either of these, there is no need to have<br>&gt; base64 encoding. I would recommend not using it in fact. One of these
<br>&gt; days I will change the default in paraview so that it does not write<br>&gt; base64 encoded files.<br>&gt;<br>&gt;<br>&gt; On 1/31/06, Dominik Szczerba &lt;<a href="mailto:domi@vision.ee.ethz.ch">domi@vision.ee.ethz.ch
</a>&gt; wrote:<br>&gt;<br>&gt; Sorry to interupt your discussion but nobody ever explained me this: why<br>&gt; use base64 encoding at all? Isint it a step back to huge ASCII files??<br>&gt; E.g. I see no significant compression with the VTK's zlib compressor
<br>&gt; when using XML data files because the compressed stream is converted to<br>&gt; ASCII. Will someone kindly explain me this paradox?<br>&gt; Thanks<br>&gt; Dominik<br>&gt;<br>&gt; Thierry Dubuis wrote:<br>&gt;<br>
&gt;&gt;There are lot of encoding Base 64 program on the web but only in C, Java<br>&gt;&gt;or Visual Basic.<br>&gt;<br>&gt;&gt;If you can use C/C++ compiler, I thing the best way for you is to use<br>&gt;&gt;the Brad King's fortran code example (see my last email).
<br>&gt;&gt;To convert a data array to a string in C we use the memory copy in<br>&gt;&gt;fortran I don't know.<br>&gt;&gt;Could you use pointer? 2 pointer on the same memory adress<br>&gt;&gt;1. the fist with the real*8 type
<br>&gt;&gt;2. the second with a character type<br>&gt;<br>&gt;&gt;Try in this way.<br>&gt;<br>&gt;&gt;Best regards,<br>&gt;&gt;Thierry Dubuis<br>&gt;<br>&gt;&gt;Stéphane Montésino wrote:<br>&gt;<br>&gt;<br>&gt;&gt;&gt;Thanks for all tese answers, but I 'm still like an an homosexual with
<br>&gt;&gt;&gt;a wonderfull girl. I don't know how to use it (sorry her).<br>&gt;<br>&gt;&gt;&gt;In fact, I would like to directly write this type of file that I can<br>&gt;&gt;&gt;obtain when I save my data with Paraview:
<br>&gt;<br>&gt;&gt;&gt;&lt;?xml version=&quot;1.0&quot;?&gt;<br>&gt;&gt;&gt;&lt;VTKFile type=&quot;RectilinearGrid&quot; version=&quot;0.1&quot;<br>&gt;&gt;&gt;byte_order=&quot;LittleEndian&quot; compressor=&quot;vtkZLibDataCompressor&quot;&gt;
<br>&gt;&gt;&gt; &lt;RectilinearGrid WholeExtent=&quot;1 8 1 4 1 16&quot;&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp; &lt;Piece Extent=&quot;1 8 1 4 1 16&quot;&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;PointData&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;DataArray type=&quot;Float32&quot; Name=&quot;pressure&quot; format=&quot;appended&quot;
<br>&gt;&gt;&gt;offset=&quot;0&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/PointData&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;CellData&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/CellData&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Coordinates&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;DataArray type=&quot;Float32&quot; Name=&quot;X_COORDINATES&quot;
<br>&gt;&gt;&gt;format=&quot;appended&quot; offset=&quot;956&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;DataArray type=&quot;Float32&quot; Name=&quot;Y_COORDINATES&quot;<br>&gt;&gt;&gt;format=&quot;appended&quot; offset=&quot;1036&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/&gt;
<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;DataArray type=&quot;Float32&quot; Name=&quot;Z_COORDINATES&quot;<br>&gt;&gt;&gt;format=&quot;appended&quot; offset=&quot;1092&quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Coordinates&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp; &lt;/Piece&gt;
<br>&gt;&gt;&gt; &lt;/RectilinearGrid&gt;<br>&gt;&gt;&gt; &lt;AppendedData encoding=&quot;base64&quot;&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;_AQAAAACAAAAACAAAuQIAAA==eJwVy8fvoFMUx+HDdIkyWOiG/0Bvmzfm&nbsp;&nbsp; etc.....<br>&gt;&gt;&gt; &lt;/AppendedData&gt;
<br>&gt;&gt;&gt;&lt;/VTKFile&gt;<br>&gt;<br>&gt;&gt;&gt;My knowledge are only reduces to Fluid mechanics.<br>&gt;<br>&gt;<br>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;Encode in Base 64 ? More details please...How to ?
<br>&gt;<br>&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;<br>&gt;<br>&gt;&gt;&gt;Link properly to vtkIO ? More details please.<br>&gt;<br>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;Does it mean that VTK IO library should be installed on
<br>&gt;<br>&gt;&gt;&gt;the Computer where my CFD code run ?.<br>&gt;&gt;&gt;I don't run my code on my own computer. It runs in Computing center<br>&gt;&gt;&gt;where I can't install what I want.<br>&gt;<br>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;So I would like to obtain some fortran routine I could link
<br>&gt;<br>&gt;&gt;&gt;myself&nbsp;&nbsp;to my&nbsp;&nbsp;CFD code&nbsp;&nbsp;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;<br>&gt;<br>&gt;&gt;&gt;When I try&nbsp;&nbsp;to write binary data in a formatted file:<br>&gt;&gt;&gt;run-time error F6204: WRITE(
pressure.vtr)<br>&gt;&gt;&gt;- unformatted I/O not consistent with OPEN options<br>&gt;<br>&gt;&gt;&gt;When I try&nbsp;&nbsp;to write formatted string in an unformatted file:<br>&gt;&gt;&gt;run-time error F6200: WRITE(pressure.vtr)
<br>&gt;&gt;&gt;- formatted I/O not consistent with OPEN options<br>&gt;<br>&gt;<br>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;How to convert my data to a string ?<br>&gt;<br>&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;
<br>&gt;<br>&gt;<br>&gt;&gt;&gt;The format for raw appended binary data should be<br>&gt;<br>&gt;&gt;&gt;&lt;AppendedData encoding=&quot;raw&quot;&gt;<br>&gt;&gt;&gt; _NNNN...........................<br>&gt;&gt;&gt;&lt;/AppendedData&gt;
<br>&gt;<br>&gt;&gt;&gt;Where the underscore is literal (as you already have) and the NNNN is a<br>&gt;&gt;&gt;four-byte block containing an unsigned 32-bit count of the number of<br>&gt;&gt;&gt;&quot;words&quot; in the array.&nbsp;&nbsp;A word is one value of the type of the array, so
<br>&gt;&gt;&gt;in your case the NNNN would have the number of float values.&nbsp;&nbsp;Then the<br>&gt;&gt;&gt;number of bytes of binary data to follow should be NNNN*sizeof(float).<br>&gt;<br>&gt;&gt;&gt;If you have another appended data array in the same file then start it
<br>&gt;&gt;&gt;immediately after the end of the first array (with no newline or any<br>&gt;&gt;&gt;other character.&nbsp;&nbsp;Then specify in the offset=&quot;...&quot; attribute for the<br>&gt;&gt;&gt;corresponding DataArray the number of bytes beyond the underscore where
<br>&gt;&gt;&gt;the second array begins.<br>&gt;<br>&gt;&gt;&gt;-Brad<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;&gt;&gt;Thierry Dubuis wrote:<br>&gt;<br>&gt;<br>&gt;&gt;&gt;&gt;Hello Stéphane,<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;perhaps this email can help you ?
<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;Else if you want code directly your program in fortran :<br>&gt;&gt;&gt;&gt;1. You must encode all you data in Base64<br>&gt;&gt;&gt;&gt;2. And write them like a string.<br>&gt;&gt;&gt;&gt;3. don't forget to add the size of your data block (integer*4)
<br>&gt;&gt;&gt;&gt;encoded in base64 before you block.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;Best regards,<br>&gt;&gt;&gt;&gt;Thierry Dubuis<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;-------- Original Message --------<br>&gt;&gt;&gt;&gt;Subject:&nbsp;&nbsp;&nbsp;&nbsp; Re: [Paraview] Writing binary files: C/Fortran interface
<br>&gt;&gt;&gt;&gt;to VTK XML files.<br>&gt;&gt;&gt;&gt;Date:&nbsp;&nbsp;&nbsp;&nbsp; Tue, 07 Jun 2005 10:06:51 -0400<br>&gt;&gt;&gt;&gt;From:&nbsp;&nbsp;&nbsp;&nbsp; Brad King &lt;<a href="mailto:brad.king@kitware.com">brad.king@kitware.com</a>&gt;<br>&gt;&gt;&gt;&gt;To:&nbsp;&nbsp;&nbsp;&nbsp; SamuelKey &lt;
<a href="mailto:samuelkey@comcast.net">samuelkey@comcast.net</a>&gt;<br>&gt;&gt;&gt;&gt;CC:&nbsp;&nbsp;&nbsp;&nbsp; paraview &lt;<a href="mailto:paraview@paraview.org">paraview@paraview.org</a>&gt;, &quot;Wylie, Brian&quot;<br>&gt;&gt;&gt;&gt;&lt;
<a href="mailto:bnwylie@sandia.gov">bnwylie@sandia.gov</a>&gt;<br>&gt;&gt;&gt;&gt;References:<br>&gt;&gt;&gt;&gt;&lt;<a href="mailto:200506030152.j531quWp005650@rrcs-mta-04.hrndva.rr.com">200506030152.j531quWp005650@rrcs-mta-04.hrndva.rr.com
</a>&gt;<br>&gt;&gt;&gt;&gt;&lt;<a href="mailto:42A05837.3010206@kitware.com">42A05837.3010206@kitware.com</a>&gt; &lt;000a01c5684c$1d1a6740$6e01a8c0@last&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;SamuelKey wrote:<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;Needing to have a C-compiler is not a problem for me; I have one.<br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;Let me try to work with what you commit next week and see if I have
<br>&gt;&gt;&gt;&gt;&gt;any ideas. I will be gone all next week, so you won't hear from me<br>&gt;&gt;&gt;&gt;&gt;until week after next. With luck you may hear from someone else<br>&gt;&gt;&gt;&gt;&gt;that will help keep you busy, though I suspect &quot;busy&quot; is not a
<br>&gt;&gt;&gt;&gt;&gt;problem for you.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;Okay, the C/Fortran interface is now available.&nbsp;&nbsp;A C program can do<br>&gt;&gt;&gt;&gt;
<br>&gt;&gt;&gt;&gt;#include &quot;vtkXMLWriterC.h&quot;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;and link to vtkIO.&nbsp;&nbsp;A Fortran program can use the interface (see the<br>&gt;&gt;&gt;&gt;example code below) but will need to compile one extra .c file to
<br>&gt;&gt;&gt;&gt;link properly to vtkIO.&nbsp;&nbsp;See VTK/IO/vtkXMLWriterF.h for instructions.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;-Brad<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; PROGRAM Hello<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER writer
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER success<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER*8 numpoints/8/<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER*8 numcells/1/<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER*8 cellsSize/9/<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*4 pdata(8)/0,0,0,0,1,1,1,1/
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*4 points(24)/0,0,0, 1,0,0, 1,1,0, 0,1,0,<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0,0,1, 1,0,1, 1,1,1, 0,1,1/<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER*8 cells(9)/8,0,1,2,3,4,5,6,7/<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_New(writer)
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_SetDataObjectType(writer, 4)<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_SetFileName(writer, 'test1.vtu')<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_SetPoints(writer, 10, points, numpoints)
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_SetCellsWithType(writer, 12, numcells, cells,<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cellsSize)<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_SetPointData(writer, 'example data', 10, pdata,
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;numpoints, 1, 'SCALARS')<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_Write(writer, success)<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; call vtkXMLWriterF_Delete(writer)<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; PRINT *, 'success =', success
<br>&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; END PROGRAM Hello<br>&gt;&gt;&gt;&gt;_______________________________________________<br>&gt;&gt;&gt;&gt;ParaView mailing list<br>&gt;&gt;&gt;&gt;<a href="mailto:ParaView@paraview.org">ParaView@paraview.org
</a><br>&gt;&gt;&gt;&gt;<a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;Stéphane Montésino wrote:<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;With Asci, all is OK except the size of my file.<br>&gt;&gt;&gt;&gt;&gt;So how to write my data array in binary with my fortran code.
<br>&gt;&gt;&gt;&gt;&gt;Does anyone have some details ?<br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;******************************************************************************<br>&gt;&gt;&gt;&gt;&gt;
<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; subrout<br>&gt;&gt;&gt;&gt;&gt;paraview_scalar&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;****<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;******************************************************************************
<br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;Export 3D scalar data upon a Non uniform rectilinear Grid<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;n1m,n2m,n3m: size of the data and the grid<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;y1,y2,y3: coordinates
<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;scal_data: data to write<br>&gt;&gt;&gt;&gt;&gt;!&nbsp;&nbsp;&nbsp;&nbsp;name: name of the data<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; subroutine paraview_3d_scalar(n1m,n2m,n3m,y1,y2,y3,scal_data,name)
<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; implicit none<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; INTEGER&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;,INTENT(IN)::n1m,n2m,n3m<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*8,DIMENSION(n1m)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;,INTENT(IN)::y1
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*8,DIMENSION(n2m)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;,INTENT(IN)::y2<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*8,DIMENSION(n3m)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;,INTENT(IN)::y3<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; REAL*8,DIMENSION(n1m,n2m,n3m),INTENT(IN)::scal_data
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; CHARACTER(LEN=10)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;,INTENT(IN)::name<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; integer::i,j,k,nfil<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; nfil=41<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; open(nfil,file=trim(name)//'.vtr')
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&lt;VTKFile type=&quot;RectilinearGrid&quot; version=&quot;0.1&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' byte_order=&quot;LittleEndian&quot;&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&lt;RectilinearGrid WholeExtent=',
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'&quot;1 ',n1m,' 1 ',n2m,' 1 ',n3m,'&quot;&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&lt;Piece Extent=',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'&quot;1 ',n1m,' 1 ',n2m,' 1 ',n3m,'&quot;&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Coordinates&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;DataArray type=&quot;Float32&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' Name=&quot;X_COORDINATES&quot;',
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' NumberOfComponents=&quot;1&quot;&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*) (y1(i),i=1,n1m)<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/DataArray&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;DataArray type=&quot;Float32&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' Name=&quot;Y_COORDINATES&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' NumberOfComponents=&quot;1&quot;&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*) (y2(j),j=1,n2m)<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/DataArray&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;DataArray type=&quot;Float32&quot;',<br>
&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' Name=&quot;Z_COORDINATES&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' NumberOfComponents=&quot;1&quot;&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*) (y3(k),k=1,n3m)
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/DataArray&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Coordinates&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;PointData Scalars=&quot;scalar&quot;&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;DataArray Name=&quot;'//trim(name)//'&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' type=&quot;Float32&quot;',<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' NumberOfComponents=&quot;1&quot;',
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' format=&quot;ascii&quot;&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*) (((scal_data(i,j,k),i=1,n1m),j=1,n2m),k=1,n3m)<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/DataArray&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/PointData&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Piece&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&nbsp;&nbsp;&lt;/RectilinearGrid&gt;'<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; write(nfil,*)'&lt;/VTKFile&gt;'
<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; close(nfil)<br>&gt;&gt;&gt;&gt;&gt;!<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; return<br>&gt;&gt;&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; end<br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;_______________________________________________
<br>&gt;&gt;&gt;&gt;&gt;ParaView mailing list<br>&gt;&gt;&gt;&gt;&gt;<a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a><br>&gt;&gt;&gt;&gt;&gt;<a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview
</a><br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt;<br>&gt;<br>&gt;<br>&gt; --<br>&gt; Dominik Szczerba, Dr.<br>&gt; Computer Vision Lab CH-8092 Zurich<br>&gt; <a href="http://www.vision.ee.ethz.ch/~domi">
http://www.vision.ee.ethz.ch/~domi</a><br>_______________________________________________<br>ParaView mailing list<br><a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a><br><a href="http://www.paraview.org/mailman/listinfo/paraview">
http://www.paraview.org/mailman/listinfo/paraview</a><br><br>--<br>Dominik Szczerba, Dr.<br>Computer Vision Lab CH-8092 Zurich<br><a href="http://www.vision.ee.ethz.ch/~domi">http://www.vision.ee.ethz.ch/~domi</a><br>_______________________________________________
<br>ParaView mailing list<br><a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a><br><a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><br></blockquote>
</div><br><br clear="all"><br>-- <br>Randall Hand<br>Visualization Scientist, <br>ERDC-MSRC Vicksburg, MS<br>Homepage: <a href="http://www.yeraze.com">http://www.yeraze.com</a>