On 01. sep. 2014 16:15, Matthew Knepley wrote:
> On Mon, Sep 1, 2014 at 9:02 AM, Åsmund Ervik <asmund.er...@ntnu.no> wrote:
> 
>> On 01. sep. 2014 14:02, Matthew Knepley wrote:
>>> On Mon, Sep 1, 2014 at 6:57 AM, Åsmund Ervik <asmund.er...@ntnu.no>
>> wrote:
>>>
>>>>
>>>> No, I am not able to, that is why I switched to "--with-hdf5-dir=". Like
>>>> I said in the first email, the version of HDF5 (1.8.10) that ships with
>>>> PETSc 3.5.1 does not compile on my machine. This is apparently a known
>>>> bug that was fixed upstream, cf.
>>>>
>>>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=711777
>>>>
>>>> This is the reason why I asked whether I can somehow tell
>>>> "--download-hdf5" to download a more recent version. 1.8.11 should do
>> it.
>>>
>>>
>>> People who leave commented out code in there should be tarred, feathered,
>>> and run out of town on a rail. You can just go in and delete that line,
>> and
>>> then
>>> reconfigure. It will use the source that is already downloaded.
>>
>> Okay, I also had to do the same for two lines in
>> h5dump/h5dump_ddl.c:1344 and then I was able to configure with
>> "--download-hdf5". I am now able to run vec/ex10.c using HDF5 with success!
>>
>> Thanks a lot :) (and double on the tar and feathers for people who use
>> C++ comments in C code).
>>
>> After some tinkering I am now able to produce 3D plots of scalar fields
>> from my code, and this looks good in Visit and in Tec360 Ex. However, it
>> only works for scalars where only a single DOF is associated to a DMDA.
>> Vector valued fields don't work either. But I am able to save two
>> separate scalar fields to the same HDF5 file, as long as both are the
>> single DOF associated to a DMDA.
>>
> 
> It seems like these programs expect a different organization than we use for
> multiple DOF. Do you know what they want?

The Tec360 Manual says the following:
"The HDF5 loader add-on allows you to import general HDF5 files into
Tecplot 360. The loader provides a mechanism for importing generic data
from multiple HDF5 datasets or groups. The HDF5 loader will load
datasets within user selected groups, load one or more user selected
datasets to one zone, load multiple user selected datasets to multiple
zones, execute macros after data has been loaded, create implicit X, Y,
and Z grid vectors as needed, sub-sample loaded data, and reference user
selected vectors for X, Y, and Z grids. Datasets must be ordered data.
The HDF5 library used is version 1.8.5."

This did not leave me any wiser, but perhaps it means something to you.
FYI, the error I get when trying to import vectors or multiple scalars
is "rank N data not supported" where N >= 4.

> 
> 
>> Also, if I call PetscViewerHDF5IncrementTimestep() the resulting HDF5
>> files can no longer be visualized even for the scalars, both Tec360 and
>> Visit give error messages.
>>
> 
> HDF5 is a generic format, and programs like Visit and Tec360 assume some
> organization inside. For time we just add an array dimension, but they
> might do
> something else. I recommend looking at bin/pythonscripts/petsc_ge_xdmf.py,
> which creates .xdmf to describe our HDF5 organization.

Xdmf seems handy, and I would like to use this feature, but I'm not
really sure how to. I tried running "petsc_ge_xdmf.py Myfile.h5" but I
get the error below. Am I using the script wrong? Or perhaps it is
assuming that the data is from a DMplex? I'm using DMDA.

Traceback (most recent call last):
  File "./petsc_gen_xdmf.py", line 220, in <module>
    generateXdmf(sys.argv[1])
  File "./petsc_gen_xdmf.py", line 194, in generateXdmf
    geom      = h5['geometry']
  File "/usr/lib/python2.7/site-packages/h5py/_hl/group.py", line 153,
in __getitem__
    oid = h5o.open(self.id, self._e(name), lapl=self._lapl)
  File "h5o.pyx", line 183, in h5py.h5o.open (h5py/h5o.c:3844)
KeyError: "Unable to open object (Object 'geometry' doesn't exist)"


Åsmund

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to