diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..8648c2997b4f6e09462f5cff4fcf2efedd0bb187 --- /dev/null +++ b/README.md @@ -0,0 +1,58 @@ +# Dune-Vtk +File reader and writer for the VTK Format + +## Summary +Provides structured and unstructured file writers for the VTK XML File Formats +that can be opened in the popular ParaView visualization application. Additionally +a file reader is provided to import VTK files into Dune grid and data objects. + +## Requirements +For the management of the grids the `dune-grid` module is required. Additionally +for the data evaluation, the `dune-functions` module is used. + +### Optional modules +For tests and examples `dune-spgrid` and `dune-polygongrid` are suggested, that +support structured grid data or special element types. + +## Usage +The VTK writer works similar to the dune-grid `VTKWriter`. It needs to be bound +to a GridView and then data can be added to the points or cells in the grid. +Points are not necessarily grid vertices, but any coordinates places inside the +grid cells, so the data must be provided as GridViewFunction to allow the local +evaluation in arbitrary local coordinates. + +```c++ +Grid grid = ...; +VtkWriter<typename Grid::LeafGridView> vtkWriter(grid.leafGridView()); + +auto fct = makeAnalyticGridViewFunction([](auto const& x) { + return std::sin(x[0]); +}); + +vtkWriter.addPointData(fct, "u_points"); +vtkWriter.addCellData(fct, "u_cells"); + +vtkWriter.write("filename.vtu", Vtk::ASCII); +``` + +See also the `src/` directory for more examples. + +## Comparison with Dune::VTKWriter +In Dune-Grid there is a VTK writer available, that is a bit different from the +proposed one. A comparions: + +| Property | Dune-Grid | Dune-Vtk | ++-------------------+-----------+----------+ +| VTK version | 0.1 | 1.0 | +| UnstructuredGrid | x | x | +| PolyData | x | - | +| StructuredGrid | - | x | +| RectilinearGrid | - | x | +| ImageData | - | x | +| ASCII | x | x | +| BASE64 | x | - | +| APPENDED_RAW | x | x | +| APPENDED_BASE64 | x | - | +| BASE64_COMPRESSED | - | - | +| APPEDED_COMPRESSED| - | x | +| Parallel files | x | x |