Reference documentation for deal.II version Git 082d75bebd 2019-10-16 19:44:02 +0200
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
Public Attributes | List of all members
DataPostprocessorInputs::Vector< spacedim > Struct Template Reference

#include <deal.II/numerics/data_postprocessor.h>

Inheritance diagram for DataPostprocessorInputs::Vector< spacedim >:
[legend]

Public Attributes

std::vector<::Vector< double > > solution_values
 
std::vector< std::vector< Tensor< 1, spacedim > > > solution_gradients
 
std::vector< std::vector< Tensor< 2, spacedim > > > solution_hessians
 
- Public Attributes inherited from DataPostprocessorInputs::CommonInputs< spacedim >
std::vector< Tensor< 1, spacedim > > normals
 
std::vector< Point< spacedim > > evaluation_points
 

Additional Inherited Members

- Public Member Functions inherited from DataPostprocessorInputs::CommonInputs< spacedim >
template<typename DoFHandlerType >
void set_cell (const typename DoFHandlerType::cell_iterator &cell)
 
template<typename DoFHandlerType >
DoFHandlerType::cell_iterator get_cell () const
 

Detailed Description

template<int spacedim>
struct DataPostprocessorInputs::Vector< spacedim >

A structure that is used to pass information to DataPostprocessor::evaluate_vector_field(). It contains the values and (if requested) derivatives of a vector-valued solution variable at the evaluation points on a cell or face.

This class is also used if the solution vector is complex-valued (whether it is scalar- or vector-valued is immaterial in that case) since in that case, the DataOut and related classes take apart the real and imaginary parts of a solution vector. In practice, that means that if a solution vector has \(N\) vector components (i.e., there are \(N\) functions that form the solution of the PDE you are dealing with; \(N\) is not the size of the solution vector), then if the solution is real-valued the solution_values variable below will be an array with as many entries as there are evaluation points on a cell, and each entry is a vector of length \(N\) representing the \(N\) solution functions evaluated at a point. On the other hand, if the solution is complex-valued (i.e., the vector passed to DataOut::build_patches() has complex-valued entries), then the solution_values member variable of this class will have \(2N\) entries for each evaluation point. The first \(N\) of these entries represent the real parts of the solution, and the second \(N\) entries correspond to the imaginary parts of the solution evaluated at the evaluation point. The same layout is used for the solution_gradients and solution_hessians fields: First the gradients/Hessians of the real components, then all the gradients/Hessians of the imaginary components. There is more information about the subject in the documentation of the DataPostprocessor class itself.

Through the fields in the CommonInputs base class, this class also makes available access to the locations of evaluations points, normal vectors (if appropriate), and which cell data is currently being evaluated on (also if appropriate).

Author
Wolfgang Bangerth, 2016

Definition at line 315 of file data_postprocessor.h.

Member Data Documentation

◆ solution_values

template<int spacedim>
std::vector<::Vector<double> > DataPostprocessorInputs::Vector< spacedim >::solution_values

An array of values of a vector-valued solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

The outer vector runs over the evaluation points, whereas the inner vector runs over the components of the finite element field for which output will be generated.

Definition at line 326 of file data_postprocessor.h.

◆ solution_gradients

template<int spacedim>
std::vector<std::vector<Tensor<1, spacedim> > > DataPostprocessorInputs::Vector< spacedim >::solution_gradients

An array of gradients of a vector-valued solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

The outer vector runs over the evaluation points, whereas the inner vector runs over the components of the finite element field for which output will be generated.

This array is only filled if a user-derived class overloads the DataPostprocessor::get_needed_update_flags(), and the function returns (possibly among other flags) UpdateFlags::update_gradients. Alternatively, a class derived from DataPostprocessorScalar, DataPostprocessorVector, or DataPostprocessorTensor may pass this flag to the constructor of these three classes.

Definition at line 345 of file data_postprocessor.h.

◆ solution_hessians

template<int spacedim>
std::vector<std::vector<Tensor<2, spacedim> > > DataPostprocessorInputs::Vector< spacedim >::solution_hessians

An array of second derivatives of a vector-valued solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

The outer vector runs over the evaluation points, whereas the inner vector runs over the components of the finite element field for which output will be generated.

This array is only filled if a user-derived class overloads the DataPostprocessor::get_needed_update_flags(), and the function returns (possibly among other flags) UpdateFlags::update_hessians. Alternatively, a class derived from DataPostprocessorScalar, DataPostprocessorVector, or DataPostprocessorTensor may pass this flag to the constructor of these three classes.

Definition at line 364 of file data_postprocessor.h.


The documentation for this struct was generated from the following file: