Paraview plugin to visualize high order data

Description

Postprocessing visualization applications such as Paraview are often designed to represent low order data, either constant or linear per element. I wrote a plugin to represent high order fields with Paraview. It is inspired from what is done in Gmsh: when the relative error of representation is too high, the element is recursively split into smaller elements until the provided maximum error is attained. Both element coordinates and field data are computed at the new nodes using the high order shape functions corresponding to the considered element.

Gaussian bell with fifth order elements
Gaussian bell represented by fifth order elements on two-dimensional and three-dimensional domains, using the plugin with 0 and 3 levels of refinement to increase the resolution where needed.

Current state (most recent changes in bold)

Downloading and using the plugin

The sources of the plugin, released under the 3-clause BSD license, can be downloaded here. Read the Paraview documentation to compile them. I have versions precompiled on Linux 64 bits for Paraview 4.0.1 and Paraview 4.1.0 (they may not work on your machine, then recompile the sources). The vtk file must be written according to the following rules, in order for the plugin to read it:

A sample vtk file is available here (do not click, use right-click then save as). The header of the file can be read using a text editor to figure out which is its structure. If the instructions are not clear enough, contact me. The plugin is not polished and far from perfect; any comment is welcome.

Plugin fork

The plugin has been forked by the Zenotech simulation software company. For those interested in the modified version, it has been made available on GitHub.