<div dir="ltr">Hi, Markus!<br><div><div class="gmail_extra"><br>I have addressed some of the changes listed below. I will finish the remaining ones in the next few days. <br><br></div><div class="gmail_extra">In the last few weeks I was also working the 3ed point in the plan Oliver made:<br>

<pre>3. Implement an HDF5-based file format for psurface objects

Nobody will be able to use your stuff as long as we rely on the AmiraMesh format.
(The format itself is not a secret, but the support library is difficult to come by).

- AmiraMesh is a general-purpose file format for all kinds of visualization-related
data.  Read the file psurface/README to learn how psurface objects are stored in
AmiraMesh files.

- Familiarize yourself with HDF5 (<a href="http://www.hdfgroup.org/HDF5/">http://www.hdfgroup.org/HDF5/</a>)  Find a way to
store a psurface object in HDF5 instead of AmiraMesh.  Here it is okay to use
the HDF5 support library.

- Implement HDF5 reading and writing in psurface-convert</pre></div><div class="gmail_extra">After doing some research on hdf5, I find that both paraview and visit could not read unstructured hdf5 file directly. So I write some function that could write the xmdf file. xmdf file provide a description on the data structure while the heavy data are stored in hdf5. The paraviw could read hdf5 thought xmdf. <br>

<br></div><div class="gmail_extra">I have updated the hdf5 code (hdf5IO.cpp and hdf5test.cpp)  and the new Makefile.am into my git directory in <a href="https://gitorious.org/gcos/psurface-convert" target="_blank">https://gitorious.org/gcos/psurface-convert. </a><br>

</div><div class="gmail_extra">I have it with the sphere object, the output hdf5 file psurface.h5 and xdmf file xdmf3d.xmf  is also put to that directory. <br><br>I am sorry for the late reply. My grandma passed away last week, so I 
changed the summer plan and travelled back to China last weekend. I spent some 
time on visa application this week.  There are good internet connection at home and I will be working on this project from home. <br> <br></div><div class="gmail_extra">Best,<br></div><div class="gmail_extra">Xiaoxue<br>

</div><div class="gmail_extra"><a href="https://gitorious.org/gcos/psurface-convert" target="_blank"></a></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jul 27, 2013 at 5:08 AM, Markus Blatt <span dir="ltr"><<a href="mailto:markus@dr-blatt.de" target="_blank">markus@dr-blatt.de></a></span> wrote
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>On Fri, Jul 26, 2013 at 09:39:10PM -0400, Xiaoxue Gong wrote:<br>
> I have made a clean repository in<br>
> <a href="https://gitorious.org/gcos/psurface-convert" target="_blank">https://gitorious.org/gcos/psurface-convert</a> <br>
> Documentation on the format I used on storing psurface information into vtk<br>
> files and documentation on how to replicate my results is included in<br>
> ./doc/REARDME and ./doc/note<br>
<br>
</div>Thanks, now it looks much cleaner. Still I think there are a few<br>
things that could be changed:<br>
<br>
+ When I clone the the repository the directory tree looks like this<br>
  psurface-convert/<br>
  |<br>
   -------- dune-surface-convert<br>
            |<br>
            ---- dune<br>
            |<br>
            ---- src<br>
            ...<br>
<br>
  Personally I would have expected the files directly in the root<br>
  directory, i.e. without the additional dune-psurface-convert<br>
  directory in between.<br>
  BTW: I think this is a minor issue, and can easily be resolved (even<br>
  later).<br>
<br>
+ With your code being a dune module, I would have exspected it to<br>
   adhere to our guidlines.<br>
   - Use CamelCase for the method and class names. Method names start<br>
     with a lowercase letter, class names with an uppercase letter.<br>
    (e.g. VTKPWriter::IndexMapBack should be VTKPWriter::indexMapBack<br>
   - The root namespace should probably be Dune (you could use a<br>
     nested PSurface namespace inside it)<br></blockquote><div>I have changed the method and class names according to CamelCase.<br></div><div>The root name is changed to psurface<br><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


    + Your code is indented very inconsequently. This makes it very hard   to read for others. It is     probably due to using tabs. You should</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

 not use them for indentation! There is the possibility to enforce<br>
   not using tabs when commiting with dunecontrol. Please ask on this<br>
   list how to use this with your repository.</blockquote><div><span name="Christoph Grüninger">Christoph have given me some instruction on this. I have not figure out the details yet. I will do this during this week. </span><br>

 </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> Most probably you can<br>
   tell your favorite editor not use tabs for indentation.<br>
<br>
+ You should make use of information hiding. Currently all the<br>
   methods of VTKPWriter are declared public. You should limit public<br>
   methods to those that should be exposed to user (e.g. for<br>
   writing/reading the data). I can see why you did, as you seem to<br>
   use all methods and members in writevtk. Maybe this should be a<br>
   member functionod VTKPWriter, too?<br></blockquote><div>I have put the public function into the VtkPWriter. <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


<br>
+ Currently one can only write PSurface<2,float>. Is that intended?<br>
   Shouldn't we be able to write others like PSurface<3,double>, too?<br></blockquote><div>It could work with PSurface<2,double><br></div><div>But I am not sure whether it could work with Psurface<3,ctype>. <br>

</div><div>The function to read am file could only deal with 2d (since it have Psurface<2,ctype> as <br>input. So I could only test with 2d case. What is the difference between 2d and 3d? <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">


<br>
+ IMHO vtuIO.[hc]pp should be usable from other modules<br>
   too. Therefore I would move to an appropriate subdirectory below<br>
   dune/ (take a look at the core modules to see what might be<br>
   appropriate). If you stick with the free method writevtk then<br>
   vtuIO.cpp should be put into a library.<br>
<br>
+ Please try to document your code along (or even before) writing it<br>
   using the doxygen syntax. Most developers (me, too) are not<br>
   disciplined enough to document their code after writing it. In the<br>
   rare occasion the we are and that there is time left, we are often<br>
   having a hard time understanding it ourselves (which is a shame and<br>
   waste of time). I would recommend documenting it properly _now_.<br>
<br>
+ What is up with the weired AC_ARG_WITH clauses in <a href="http://configure.ac" target="_blank">configure.ac</a>? I do not<br>
   think that they are needed and doubt that they serve their intended<br>
   purpose.<br></blockquote><div> I will deal with these issues during this week. <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Cheers,<br>
<div><div><br>
Markus<br>
--<br>
Do you need more support with DUNE or HPC in general?<br>
<br>
Dr. Markus Blatt - HPC-Simulation-Software & Services <a href="http://www.dr-blatt.de" target="_blank">http://www.dr-blatt.de</a><br>
Hans-Bunte-Str. 8-10, 69123 Heidelberg, Germany<br>
Tel.: +49 (0) 160 97590858  Fax: +49 (0)322 1108991658<br>
<br>
_______________________________________________<br>
Dune-devel mailing list<br>
<a href="mailto:Dune-devel@dune-project.org" target="_blank">Dune-devel@dune-project.org</a><br>
<a href="http://lists.dune-project.org/mailman/listinfo/dune-devel" target="_blank">http://lists.dune-project.org/mailman/listinfo/dune-devel</a><br>
</div></div></blockquote></div><br></div></div></div>