]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Document new VTK extensions and restrictions. 7004/head
authorWolfgang Bangerth <bangerth@colostate.edu>
Tue, 31 Jul 2018 21:25:58 +0000 (15:25 -0600)
committerWolfgang Bangerth <bangerth@colostate.edu>
Wed, 1 Aug 2018 15:17:38 +0000 (09:17 -0600)
include/deal.II/base/data_out_base.h
include/deal.II/numerics/data_out.h

index 8ecc24f01fa0be8cd7eb3485a94ac4f6be3d4a17..d826959ed698524400e6283eb2c173f349c953e7 100644 (file)
@@ -1153,6 +1153,19 @@ namespace DataOutBase
      * or as a high-order Lagrange cell.
      *
      * Default is <tt>false</tt>.
+     *
+     * @note The ability to write data that corresponds to higher
+     *   order polynomials rather than simply linear or bilinear is a
+     *   feature that was only introduced in VTK sometime in 2017 or
+     *   2018.  You will need at least Paraview version 5.5 (released
+     *   in the spring of 2018) or a similarly recent version of Visit
+     *   for this feature to work (for example, Visit 2.13.2, released
+     *   in May 2018, does not yet support this feature). Older
+     *   versions of these programs are likely going to result in
+     *   errors when trying to read files generated with this flag set
+     *   to @p true. Experience with these programs shows that these
+     *   error messages are likely going to be rather less descriptive
+     *   and more obscure.
      */
     bool write_higher_order_cells;
 
index 3a797f4e6bcd72be83bd34f0b942576277500e2b..e0051930d491649d8eed2cb9be88cd42de90a672 100644 (file)
@@ -258,6 +258,23 @@ public:
    * In other words, using this parameter can not help you plot the solution
    * exactly, but it can get you closer if you use finite elements of higher
    * polynomial degree.
+   *
+   * @note Specifying `n_subdivisions>1` is useful when using higher order
+   *   finite elements, but in general it does not actually result in the
+   *   visualization showing higher order polynomial surfaces -- rather, you
+   *   just get a (bi-, tri-)linear interpolation of that higher order
+   *   surface on a finer mesh. However, when outputting the solution in the
+   *   VTK and VTU file formats via DataOutInterface::write_vtk() or
+   *   DataOutInterface::write_vtu() (where DataOutInterface is a base
+   *   class of the current class) as we often do in the tutorials,
+   *   you can provide a set of flags via the DataOutBase::VtkFlags
+   *   structure that includes the
+   *   DataOutBase::VtkFlags::write_higher_order_cells flag. When set, the
+   *   subdivisions produced by this function will be interpreted as
+   *   support point for a higher order polynomial that will then actually
+   *   be visualized as such. On the other hand, this requires a
+   *   sufficiently new version of one of the VTK-based visualization
+   *   programs.
    */
   virtual void
   build_patches(const unsigned int n_subdivisions = 0);

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.