LLNL-PRES This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore National Laboratory under contract DE-AC52-07NA Lawrence Livermore National Security, LLC
Lawrence Livermore National Laboratory LLNL-PRES ~120 readers as of Feb 2013 Application Code Formats Application Toolkit Formats General Scientific Data Formats Specialized Scientific Data Formats Visualization Formats Graphics Formats General ASCII Data Formats Special-Purpose Formats Creating BOV, VTK, Silo files This presentation describes the data file formats that are supported by VisIt, dividing them up into several categories. Very high level creation of BOV, VTK, and Silo data files is also covered.
Lawrence Livermore National Laboratory LLNL-PRES Develop new readers for VisIt in C++ Python readers supported in future Build reader against precompiled VisIt distribution Override installed plugins with private version Return metadata Return VTK data sets and data arrays Metadata Server plugins Compute Server plugins Data network connection Local Components Python Clients Java Clients Java Clients GUI CLI VisIt Viewer vtkDataSe t metadata
Lawrence Livermore National Laboratory LLNL-PRES Designed primarily for and are part of some specific application code Code that writes these files is typically part of the application itself and is not a stand-alone product of its own These formats may use some lower level library such as HDF5, or they may use raw ASCII ANSYS Cale CASTRO CCM DDCMD Dyna3D Enzo FLASH FVCOM Examples: Gadget LAMMPS NASTRAN Nek5000 OVERFLOW PATRAN Pixie S3D ZeusMP CASTRO FLASH FVCOM
Lawrence Livermore National Laboratory LLNL-PRES Similar to application code formats except they are part of a broader framework or toolkit for writing application codes Code that writes files in these formats is not a stand-alone product on its own. Instead, it is part of the associated toolkit. Adventure I/O BoxLib Chombo ITAPS OpenFOAM SAMRAI Spheral Examples: ITAPS Chombo SAMRAI
Lawrence Livermore National Laboratory LLNL-PRES Designed to be scientific interchange formats for a variety of applications, storing data for one or more computational science domains. Not specific to any application code/toolkit and typically have standalone I/O libraries. ADIOS CGNS Exodus HDF5 H5Part NETCDF PDB Silo XDMF Examples: Array Storage I/O Conventions API Common Structure Silo / Ale3d CGNS NETCDF
Lawrence Livermore National Laboratory LLNL-PRES Designed for one limited type of data, often specific to a single scientific domain such as geographic or molecular data. They often have standalone I/O libraries if they are not ASCII-based. BOW FITS GDAL MatrixMarket ProteinDataBank ESRI Shapefile XYZ Examples: DEM from GDAL Protein Data Bank
Lawrence Livermore National Laboratory LLNL-PRES Geared towards storing data for visualization tools Fields on a mesh structure of some type General enough to support a wide variety of domains and data types VTK EnSight GMV Plot3D Tecplot Vis5D Xmdv Examples:
Lawrence Livermore National Laboratory LLNL-PRES Designed for graphics uses such as digital content creation, computer aided design, or other graphics domains other than visualization Used for image-based experimental or observation data Common Graphics / Modeling Programs Photoshop Maya Blender Image (PNG, JPEG, TIFF, BMP, etc.) RAW STL Wavefront OBJ Examples: Carina Nebula
Lawrence Livermore National Laboratory LLNL-PRES Allow for easy importing of simple ASCII data of various styles Curve2D Lines PlainText Point3D Examples:
Lawrence Livermore National Laboratory LLNL-PRES These formats are typically accessed in conjunction with another reader or specific features in VisIt, and are not intended to be used directly. SimV1 SimV2 ZipWrapper Examples: Simulation libsim Data Access Code SimV2 reader VisIt runtime
Lawrence Livermore National Laboratory LLNL-PRES
Lawrence Livermore National Laboratory LLNL-PRES The following brief examples are excerpts from programs that come with the VisIt source code distribution. Look in src/tools/DataManualExamples/CreatingCompatible Or in VisIt’s anonymous svn: Compatible/
Lawrence Livermore National Laboratory LLNL-PRES BOV can represent 3D rectilinear meshes 1 scalar 1 data file 1 header file that describes data Domain decomposition supported
Lawrence Livermore National Laboratory LLNL-PRES
Lawrence Livermore National Laboratory LLNL-PRES Several ways of creating VTK files VisIt provided a visit_writer library for C or Python that simplifies writing valid VTK files
Lawrence Livermore National Laboratory LLNL-PRES Silo is scientific data storage library callable from C,C++, FORTRAN, Python Silo supports all of the mesh types that VisIt can process Excellent Reference Manual
Lawrence Livermore National Laboratory LLNL-PRES
Lawrence Livermore National Laboratory LLNL-PRES Variables exist on a mesh Variables can be zone-centered or node-centered