Pylith output files

Hello CIG Team,
Currently, I am using Pylith to create earthquake scenarios. I read the manual and website but still have some questions about the output files since I need more details about some of them.
In the next step, I would like to take the deformation results (e.g. in XYZ Cartesian Coordinates) on top of the earthquake model and run a landscape evolution process on the obtained data to see topography evolve with respect to each individual earthquake.

I know outputs are stored in H5 and XML files and their names give some clues, but I need specific information about each of these files and their internal structure to find my favorable data. I would be happy if you could help me to find how and where the displacement coordinates of the model surface (rupture ground) is stored and what is the format and structure. Then I can translate the plinth output into a landscape evolution program, and observe the results.
Thank you in advance.
Best,
Mehran

You can use standard HDF5 tools to inspect and access the h5 files. For example, you can use h5dump or h5ls. If you need to translate the output to a different format, you can Python scripts and h5py to read the data and write the information to other files.

For examples/reverse-2d/step05_onefault, we can run the example and view the layout of the HDF5 file for the top boundary using

pylith step05_onefault.cfg
h5dump -n output/step05_onefault-boundary.h5
HDF5 "output/step05_onefault-boundary.h5" {
FILE_CONTENTS {
 group      /
 group      /geometry
 dataset    /geometry/vertices
 dataset    /time
 group      /vertex_fields
 dataset    /vertex_fields/displacement
 group      /viz
 group      /viz/topology
 dataset    /viz/topology/cells
 }
}

If you drop the -n command line argument, h5dump will show the entire contents of the file. We do not recommend using h5dump to translate the information to another format. That is much easier to do using Python scripts and h5py.

1 Like

Thank you I will look over them.

Thank you for the explanations. I looked over the file contents along with the explanations in the manual. I am wondering if there are sources from which I can get more information about the content and format of file content groups. For example, what is the data format of displacement and topology (sometimes there are 2, 3, or 4 columns in the topology section) columns? In other words, what are these different columns showing, and in what format?
Thank you in advance.

The topology dataset describes how the vertices are connected into cells. There are 2 vertices for edges, 3 vertices for triangles, 4 vertices for quadrilaterals, 4 vertices for tetrahedra, and 8 vertices for hexahedra. The values are the indices in the vertices dataset. Refer to FIgures 7 and 8 in Finite-Element Mesh — PyLith 4.0.0 documentation for some diagrams of how vertices are connected into cells.

The displacement dataset is simply the displacement vector at each point. For vertex_fields, the displacements are at the vertices. For cell_fields, the displacements are at the centroids of the cells.

Thank you.