Reference documentation for deal.II version 8.5.0
Namespaces | Classes | Enumerations
Graphical output
Collaboration diagram for Graphical output:

Namespaces

 DataOutBase
 
 GridOutFlags
 

Classes

struct  DataOutBase::Patch< dim, 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 >
 
class  DataOutReader< 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  DoFPrintSolverStep< dim, SolverType, VectorType >
 

Enumerations

enum  DataOutBase::EpsFlags::SizeType { DataOutBase::EpsFlags::width, DataOutBase::EpsFlags::height }
 
enum  DataOutBase::VtkFlags::ZlibCompressionLevel { DataOutBase::VtkFlags::no_compression, DataOutBase::VtkFlags::best_speed, DataOutBase::VtkFlags::best_compression, DataOutBase::VtkFlags::default_compression }
 
enum  DataOutBase::OutputFormat {
  DataOutBase::default_format, DataOutBase::none, DataOutBase::dx, DataOutBase::ucd,
  DataOutBase::gnuplot, DataOutBase::povray, DataOutBase::eps, DataOutBase::gmv,
  DataOutBase::tecplot, DataOutBase::tecplot_binary, DataOutBase::vtk, DataOutBase::vtu,
  DataOutBase::svg, DataOutBase::deal_II_intermediate, DataOutBase::hdf5
}
 
enum  GridOutFlags::EpsFlagsBase::SizeType { GridOutFlags::EpsFlagsBase::width, GridOutFlags::EpsFlagsBase::height }
 
enum  GridOutFlags::XFig::Coloring { GridOutFlags::XFig::material_id, GridOutFlags::XFig::level_number, GridOutFlags::XFig::subdomain_id, GridOutFlags::XFig::level_subdomain_id }
 
enum  GridOutFlags::Svg::Background { GridOutFlags::Svg::transparent, GridOutFlags::Svg::white, GridOutFlags::Svg::dealii }
 
enum  GridOutFlags::Svg::Coloring {
  GridOutFlags::Svg::none, GridOutFlags::Svg::material_id, GridOutFlags::Svg::level_number, GridOutFlags::Svg::subdomain_id,
  GridOutFlags::Svg::level_subdomain_id
}
 
enum  GridOut::OutputFormat {
  GridOut::none, GridOut::dx, GridOut::gnuplot, GridOut::eps,
  GridOut::ucd, GridOut::xfig, GridOut::msh, GridOut::svg,
  GridOut::mathgl, GridOut::vtk, GridOut::vtu
}
 
enum  DataOut< dim, DoFHandlerType >::CurvedCellRegion { DataOut< dim, DoFHandlerType >::no_curved_cells, DataOut< dim, DoFHandlerType >::curved_boundary, DataOut< dim, DoFHandlerType >::curved_inner_cells }
 
enum  DataOut_DoFData< DoFHandlerType, patch_dim, patch_space_dim >::DataVectorType { DataOut_DoFData< DoFHandlerType, patch_dim, patch_space_dim >::type_dof_data, DataOut_DoFData< DoFHandlerType, patch_dim, patch_space_dim >::type_cell_data, DataOut_DoFData< DoFHandlerType, patch_dim, patch_space_dim >::type_automatic }
 
enum  DataOutStack< dim, spacedim, DoFHandlerType >::VectorType { DataOutStack< dim, spacedim, DoFHandlerType >::cell_vector, DataOutStack< dim, spacedim, DoFHandlerType >::dof_vector }
 

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 650 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 953 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.

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 1307 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 286 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 524 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 628 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 653 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 

write() calls write_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 

write() calls write_mathgl()

vtk 

write() calls write_vtk()

vtu 

write() calls write_vtu()

Definition at line 845 of file grid_out.h.

template<int dim, typename DoFHandlerType = DoFHandler<dim>>
enum DataOut::CurvedCellRegion

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 181 of file data_out.h.

template<typename DoFHandlerType, int patch_dim, int patch_space_dim = patch_dim>
enum DataOut_DoFData::DataVectorType

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 528 of file data_out_dof_data.h.

template<int dim, int spacedim = dim, typename DoFHandlerType = DoFHandler<dim,spacedim>>
enum DataOutStack::VectorType

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 116 of file data_out_stack.h.