Updated Notes on visualizing high order output (markdown)
authorAlexander Grayver <agrayver@erdw.ethz.ch>
Fri, 6 Dec 2019 11:33:12 +0000 (12:33 +0100)
committerAlexander Grayver <agrayver@erdw.ethz.ch>
Fri, 6 Dec 2019 11:33:12 +0000 (12:33 +0100)
Notes-on-visualizing-high-order-output.md

index 35780e1..a6f9be5 100644 (file)
@@ -6,7 +6,9 @@ This page provides instructions on how these high-order meshes can be visualized
 
 ### Creating high-order output
 
-First, we produced 2D and 3D VTU output of a spherical shell mesh. Internally, the mesh was generated using the `GridGenerator::hyper_shell` function, which attaches a `SphericalManifold` to all cells. Subsequently, the mesh was attached to a `DoFHandler` object with a `FE_Q` element of the order four. A trigonometric function was interpolated to the underlying finite-element space using the `MappingQGeneric` mapping of order four. Finally, we write the mesh along with the finite-element representation of the function to a VTU file using `DataOut::write_vtu` with high-order curved cells enabled.
+First, we produced 2D and 3D VTU output of a spherical shell mesh using the program provided below. Specifically, the mesh was generated using the `GridGenerator::hyper_shell` function, which attaches a `SphericalManifold` manifold to all cells. Subsequently, the mesh was attached to a `DoFHandler` object with a `FE_Q` element of the order four. A trigonometric function was interpolated to the underlying discrete high-order finite-element space using the `MappingQGeneric` mapping of order four. 
+
+Finally, we write the mesh along with the finite-element representation of the function to a VTU file using `DataOut::write_vtu` with high-order Lagrange cells of 4-th order. Note that the cell order in this context relates to both the description of a cell shape and all quantities (e.g., vector and scalar fields) attached to it. Since we used the 4-th order finite element in this example to represent a function on our mesh, writing the result using cells of orders higher than four will not really give us much in terms of representating the function more accurately (unless your basis functions behave very differently compared to Lagrange polynomials used by VTK, which is not the case here since we used `FE_Q`). However, our mesh represents a spherical shell, which, strictly speaking, cannot be described by a polynomial precisely. Therefore, increasing the cell order will allow one to store and visualize the shape more accurately. Note that for this to produce an effect, you will have to increase the order of the `MappingQGeneric` mapping accordingly. All this, of course, comes at an additional computational and memory. Thus, it requires finding a compromise for a problem you are solving. 
 
 ### Visualization
 

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.