Hi, I agree with Barry that since this will not mean any interface changes, it can be done with patch releases.
Sounds like a plan
I still can’t figure out how to deal with cell sets of different types (say
quads and tri).
I have not tried this. I had been focusing getting higher order (Q2) and either
quads or tris to work. This
all seems to be working correctly now. I have been using it to
visualize/restart a magma dynamics app
with 3 fields all with different discretizations.
Nice.
All cell and vertex sets seem to be contained in the hdf5 file, but not in a
way that is usable by post processing tools (visit, paraview, ensight).
For restarting, mixed meshes should work fine. They are stored in
/topology/cells
/cones
/order
/orientation
and the field values are in
/fields/<name>
For visualization and most post-processing, there are separate arrays
/viz/topology
/geometry
which are exactly what I needed to make Paraview understand the xdmf. The fields
sampled down to cells and vertices are in
/vertex_fields/<name>
/cell_fields/<name>
I saw that. Does it mean that all heavy data is duplicated in the hdf5 file,
i.e. that /fields contains values that petsc understands and /viz is for
visualization?
The xdmf generation script bin/pythonscripts/petsc_gen_xdmf.py is quite fragile.
I have not had it fail for me, but would be happy to look at the failure you
are getting.
Cool.
I am attaching a very simple code that reads an exo file and saves it, and two
simple exodus meshes.
The xmf generation script fails on it, most likely because I don’t have a /time
section in the file. My workaround is to replace l. 209 with time = [0,1].
When I read the xmf file in visit, I see only one cell set. In paraview, I see
two blocks “domain” and “domain[1]", both of which contain the entire mesh.
If I do not interpolate the mesh in DMPlexCreateExodusFromFile,
petsc_gen_xdmf.py fails.
DMView fails in parallel. I must be doing something wrong.
[0]PETSC ERROR: --------------------- Error Message
--------------------------------------------------------------
[0]PETSC ERROR: Argument out of range
[0]PETSC ERROR: Point 8 has 0 constraints > -3 dof
[0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for
trouble shooting.
[0]PETSC ERROR: Petsc Development GIT revision: v3.4.4-4444-g8c25fe2 GIT Date:
2014-06-07 16:01:56 -0500
[0]PETSC ERROR: ./testHDF5Plex on a Darwin-intel14.0-g named iMac.local by
blaise Mon Jun 9 22:14:29 2014
[0]PETSC ERROR: Configure options CFLAGS= CXXFLAGS= LDFLAGS=-Wl,-no_pie
--download-chaco=1 --download-exodusii=1 --download-hdf5=1 --download-metis=1
--download-netcdf=1 --download-parmetis=1 --download-sowing=1
--download-triangle=1 --download-yaml=1
--with-blas-lapack-dir=/opt/intel/composerxe/mkl --with-cmake=cmake
--with-debugging=1 --with-mpi-dir=/opt/HPC/mpich-3.0.4-intel14.0 --with-pic
--with-shared-libraries=1 --with-vendor-compilers=intel --with-x11=1
[0]PETSC ERROR: #1 DMCreateDefaultSF() line 3065 in
/opt/HPC/petsc-dev/src/dm/interface/dm.c
[0]PETSC ERROR: #2 DMGetDefaultSF() line 2985 in
/opt/HPC/petsc-dev/src/dm/interface/dm.c
[0]PETSC ERROR: #3 DMLocalToGlobalBegin() line 1737 in
/opt/HPC/petsc-dev/src/dm/interface/dm.c
[0]PETSC ERROR: #4 VecView_Plex_Local_HDF5() line 122 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plexhdf5.c
[0]PETSC ERROR: #5 VecView_Plex_Local() line 86 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plex.c
[0]PETSC ERROR: #6 VecView() line 601 in
/opt/HPC/petsc-dev/src/vec/vec/interface/vector.c
[0]PETSC ERROR: #7 DMPlexWriteCoordinates_HDF5_Static() line 396 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plexhdf5.c
[0]PETSC ERROR: #8 DMPlexView_HDF5() line 485 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plexhdf5.c
[0]PETSC ERROR: #9 DMView_Plex() line 450 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plex.c
[0]PETSC ERROR: #10 DMView() line 648 in
/opt/HPC/petsc-dev/src/dm/interface/dm.c
[0]PETSC ERROR: #11 main() line 79 in
/Users/blaise/Development/DMComplex/testHDF5Plex.c
[0]PETSC ERROR: ----------------End of Error Message -------send entire error
message to [email protected]<mailto:[email protected]>----------
Finally, DMView fails with the mixed element type mesh with the following error
message:
Writing to TwoSquaresMixed_seq.h5
[0]PETSC ERROR: --------------------- Error Message
--------------------------------------------------------------
[0]PETSC ERROR: No support for this operation for this object type
[0]PETSC ERROR: Visualization topology currently only supports identical cell
shapes
[0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for
trouble shooting.
[0]PETSC ERROR: Petsc Development GIT revision: v3.4.4-4444-g8c25fe2 GIT Date:
2014-06-07 16:01:56 -0500
[0]PETSC ERROR: ./testHDF5Plex on a Darwin-intel14.0-g named iMac.local by
blaise Mon Jun 9 22:11:48 2014
[0]PETSC ERROR: Configure options CFLAGS= CXXFLAGS= LDFLAGS=-Wl,-no_pie
--download-chaco=1 --download-exodusii=1 --download-hdf5=1 --download-metis=1
--download-netcdf=1 --download-parmetis=1 --download-sowing=1
--download-triangle=1 --download-yaml=1
--with-blas-lapack-dir=/opt/intel/composerxe/mkl --with-cmake=cmake
--with-debugging=1 --with-mpi-dir=/opt/HPC/mpich-3.0.4-intel14.0 --with-pic
--with-shared-libraries=1 --with-vendor-compilers=intel --with-x11=1
[0]PETSC ERROR: #1 DMPlexWriteTopology_Vertices_HDF5_Static() line 322 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plexhdf5.c
[0]PETSC ERROR: #2 DMPlexView_HDF5() line 488 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plexhdf5.c
[0]PETSC ERROR: #3 DMView_Plex() line 450 in
/opt/HPC/petsc-dev/src/dm/impls/plex/plex.c
[0]PETSC ERROR: #4 main() line 59 in
/Users/blaise/Development/DMComplex/testHDF5Plex.c
[0]PETSC ERROR: ----------------End of Error Message -------send entire error
message to [email protected]<mailto:[email protected]>----------
testHDF5Plex.c
Description: testHDF5Plex.c
TwoSquares.gen
Description: TwoSquares.gen
TwoSquaresMixed.gen
Description: TwoSquaresMixed.gen
Blaise -- Department of Mathematics and Center for Computation & Technology Louisiana State University, Baton Rouge, LA 70803, USA Tel. +1 (225) 578 1612, Fax +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin |
