Reference documentation for deal.II version Git 10f3285 2019-01-18 22:14:04 -0700
Graphical output
Collaboration diagram for Graphical output:


This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.

DataOutBase

GridOutFlags

## Classes

struct  DataOutBase::Patch< dim, spacedim >

struct  DataOutBase::Patch< 0, spacedim >

struct  DataOutBase::OutputFlagsBase< FlagsType >

struct  DataOutBase::DXFlags

struct  DataOutBase::UcdFlags

struct  DataOutBase::GnuplotFlags

struct  DataOutBase::PovrayFlags

struct  DataOutBase::EpsFlags::RgbValues

struct  DataOutBase::EpsFlags

struct  DataOutBase::GmvFlags

struct  DataOutBase::TecplotFlags

struct  DataOutBase::VtkFlags

struct  DataOutBase::SvgFlags

struct  DataOutBase::Deal_II_IntermediateFlags

struct  DataOutBase::DataOutFilterFlags

struct  DataOutBase::DataOutFilter::Point3Comp

class  DataOutBase::DataOutFilter

class  DataOutInterface< dim, spacedim >

struct  GridOutFlags::DX

struct  GridOutFlags::Msh

struct  GridOutFlags::Ucd

struct  GridOutFlags::Gnuplot

struct  GridOutFlags::EpsFlagsBase

struct  GridOutFlags::Eps< dim >

struct  GridOutFlags::Eps< 1 >

struct  GridOutFlags::Eps< 2 >

struct  GridOutFlags::Eps< 3 >

struct  GridOutFlags::XFig

struct  GridOutFlags::Svg

struct  GridOutFlags::MathGL

struct  GridOutFlags::Vtk

struct  GridOutFlags::Vtu

class  GridOut

class  MatrixOut

struct  MatrixOut::Options

class  DataOut< dim, DoFHandlerType >

class  DataOut_DoFData< DoFHandlerType, patch_dim, patch_space_dim >

class  DataOutFaces< dim, DoFHandlerType >

class  DataOutRotation< dim, DoFHandlerType >

class  DataOutStack< dim, spacedim, DoFHandlerType >

struct  DataOutStack< dim, spacedim, DoFHandlerType >::DataVector

class  DataPostprocessor< dim >

class  DataPostprocessorScalar< dim >

class  DataPostprocessorVector< dim >

class  DataPostprocessorTensor< dim >

class  DoFPrintSolverStep< dim, SolverType, VectorType >

## Detailed Description

deal.II generates three types of output: it can write triangulations/meshes in formats understood by several mesh readers (including those of deal.II itself), and it can create output used for visualization of data. Finally, it can output matrices in a graphical format.

### Visualization of data

deal.II supports, through the DataOutBase class, a large number of popular visualization formats, such as those used by the OpenDX, gmv, or gnuplot programs. A complete list of supported formats is listed in the documentation of the DataOutBase class.

The DataOutBase class is only responsible for actually writing some intermediate format in a number of different visualization formats. This intermediate format is generated by classes derived, directly or indirectly, from DataOutBase. For example, the DataOut class is most often used to generate this intermediate format from a triangulation, a DoFHandler object (that associates a particular finite element class with the triangulation), and one or more data vectors. The DataOut class creates intermediate data from each cell, which is subsequently written by the DataOutBase class in some final format. Almost all example programs, starting with step-3, make use of this method of generating output.

The DataOutFaces class is another way to create intermediate format from simulation data. However, instead of creating visualization data from each cell of the triangulation, it only creates information for all faces of cells that are located on the surface (though the class has a way to override the choice for which faces output should be generated). While this may not be particularly interesting in 2d (the faces would only be line segments) it is often helpful in 3d if what one really wants to know is the shape of the domain or the value of one variable on the surface. Using the DataOutFaces class then saves the effort of generating and storing data for all interior cells, which can be very expensive for large 3d simulations.

A third class, the DataOutRotation class, allows to take a two-dimensional simulation and generate three-dimensional data from it by rotating the two-dimensional domain around a given axis. This is mostly useful for the visualization of simulations that use the rotational symmetry of, for example, a cylinder.

Finally, the DataOutStack class allows to visualize data from time dependent simulations in the space-time domain: it collects the results from each time step and at the end outputs all of this information at once as a space-time file.

### Grid output

Meshes, without any data vectors associated with it, can be written in a number of formats as well. This is done through the GridOut class, and the documentation of that class lists the supported formats.

Several of the tutorial programs, notably step-1, step-6, step-9, step-10, step-12, and step-14 demonstrate the use of the GridOut class.

### Matrix output

Through the MatrixOut class, deal.II can also give a graphical visualization of matrices, in the form of color or skyline plots. The MatrixOut class uses the DataOutBase for output. Therefore, matrices can be visualized in all formats supported by the latter class.

## Enumeration Type Documentation

Enum denoting the possibilities whether the scaling should be done such that the given size equals the width or the height of the resulting picture.

Enumerator
width

Scale to given width.

height

Scale to given height.

Definition at line 816 of file data_out_base.h.

A data type providing the different possible zlib compression levels. These map directly to constants defined by zlib.

Enumerator
no_compression

Do not use any compression.

best_speed

Use the fastest available compression algorithm.

best_compression

Use the algorithm which results in the smallest compressed files. This is the default flag.

default_compression

Use the default compression algorithm. This is a compromise between speed and file size.

Definition at line 1129 of file data_out_base.h.

Provide a data type specifying the presently supported output formats.

Enumerator
default_format

Use the format already stored in the object.

none

Do not write any output.

dx

Output for OpenDX.

ucd

Output in the UCD format for AVS.

gnuplot

Output for the Gnuplot tool.

povray

Output for the Povray raytracer.

eps

Output in encapsulated PostScript.

gmv

Output for GMV.

tecplot

Output for Tecplot in text format.

tecplot_binary

Output for Tecplot in binary format. Faster and smaller than text format.

Deprecated:
Using Tecplot binary output is deprecated.
vtk

Output in VTK format.

vtu

Output in VTK format.

svg

Output in SVG format.

deal_II_intermediate

Output in deal.II intermediate format.

hdf5

Output in HDF5 format.

Definition at line 1543 of file data_out_base.h.

Enum denoting the possibilities whether the scaling should be done such that the given size equals the width or the height of the resulting picture.

Enumerator
width

Scale with the width.

height

Scale with the height.

Definition at line 335 of file grid_out.h.

An enum used for deciding which field is used for coloring the cells.

Enumerator
material_id

Convert the material id into the cell color.

level_number

Convert the level into the cell color.

subdomain_id

Convert the global subdomain id into the cell color.

level_subdomain_id

Convert the level subdomain id into the cell color.

Definition at line 581 of file grid_out.h.

Background style.

Enumerator
transparent

Use transparent value of SVG.

white

Use white background.

dealii

Use a gradient from white (top) to steelblue (bottom), and add date and time plus a deal.II logo. Automatically draws a margin.

Definition at line 689 of file grid_out.h.

Cell coloring.

Enumerator
none

No cell coloring.

material_id

Convert the material id into the cell color (default)

level_number

Convert the level number into the cell color.

subdomain_id

Convert the subdomain id into the cell color.

level_subdomain_id

Convert the level subdomain id into the cell color.

Definition at line 716 of file grid_out.h.

Declaration of a name for each of the different output formats. These are used by the generic output function write() to determine the actual output format.

Enumerator
none

Do nothing in write()

dx

write() calls write_dx()

gnuplot
eps

write() calls write_eps()

ucd

write() calls write_ucd()

xfig

write() calls write_xfig()

msh

write() calls write_msh()

svg

write() calls write_svg()

mathgl
vtk

write() calls write_vtk()

vtu

write() calls write_vtu()

Definition at line 915 of file grid_out.h.

template<int dim, typename DoFHandlerType = DoFHandler<dim>>

Enumeration describing the part of the domain in which cells should be written with curved boundaries. In reality, no file format we are aware of really supports curved boundaries, but this can be emulated by plotting edges as a sequence of straight lines (and faces in 3d as a collection of bilinear patches) if DataOut::build_patches() is called with a number of subdivisions greater than 1.

The elements of this enumeration then describe for which cells DataOut::build_patches() will query the manifold or boundary description for curved geometries.

Enumerator
no_curved_cells

The geometry or boundary description will never be queried for curved geometries. This means that even if you have more than one subdivision per cell (see DataOut::build_patches() for what exactly this means) and even if the geometry really is curved, each cell will still be subdivided as if it was just a bi- or trilinear cell.

curved_boundary

The geometry or boundary description will be queried for curved geometries for cells located at the boundary, i.e., for cells that have at least one face at the boundary. This is sufficient if you have not attached a manifold description to the interiors of cells but only to faces at the boundary.

curved_inner_cells

The geometry description will be queried for all cells and all faces, whether they are at the boundary or not. This option is appropriate if you have attached a manifold object to cells (not only to faces).

Definition at line 191 of file data_out.h.

template<typename DoFHandlerType, int patch_dim, int patch_space_dim = patch_dim>

Type describing what the vector given to add_data_vector() is: a vector that has one entry per degree of freedom in a DoFHandler object (such as solution vectors), or one entry per cell in the triangulation underlying the DoFHandler object (such as error per cell data). The value type_automatic tells add_data_vector() to find out itself (see the documentation of add_data_vector() for the method used).

Enumerator
type_dof_data

Data vector entries are associated to degrees of freedom

type_cell_data

Data vector entries are one per grid cell

type_automatic

Find out automatically

Definition at line 620 of file data_out_dof_data.h.

template<int dim, int spacedim = dim, typename DoFHandlerType = DoFHandler<dim, spacedim>>

Data type declaring the two types of vectors which are used in this class.

Enumerator
cell_vector

The data describes one value for each cell.

dof_vector

The data describes one value for each DoF.

Definition at line 122 of file data_out_stack.h.