deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Private Attributes | List of all members
DataPostprocessorInputs::Scalar< spacedim > Struct Template Reference

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

Inheritance diagram for DataPostprocessorInputs::Scalar< spacedim >:
Inheritance graph
[legend]

Public Member Functions

template<int dim>
void set_cell (const typename DoFHandler< dim, spacedim >::cell_iterator &cell)
 
template<int dim>
void set_cell_and_face (const typename DoFHandler< dim, spacedim >::cell_iterator &cell, const unsigned int face_number)
 
template<int dim>
DoFHandler< dim, spacedim >::cell_iterator get_cell () const
 
unsigned int get_face_number () const
 

Public Attributes

std::vector< double > solution_values
 
std::vector< Tensor< 1, spacedim > > solution_gradients
 
std::vector< Tensor< 2, spacedim > > solution_hessians
 
std::vector< Tensor< 1, spacedim > > normals
 
std::vector< Point< spacedim > > evaluation_points
 

Private Attributes

std::any cell
 
unsigned int face_number
 

Detailed Description

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

A structure that is used to pass information to DataPostprocessor::evaluate_scalar_field(). It contains the values and (if requested) derivatives of a scalar solution variable at the evaluation points on a cell or face. (This class is not used if a scalar solution is complex-valued, however, since in that case the real and imaginary parts are treated separately – resulting in vector-valued inputs to data postprocessors, which are then passed to DataPostprocessor::evaluate_vector_field() instead.)

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).

Definition at line 321 of file data_postprocessor.h.

Member Function Documentation

◆ set_cell()

template<int spacedim>
template<int dim>
void DataPostprocessorInputs::CommonInputs< spacedim >::set_cell ( const typename DoFHandler< dim, spacedim >::cell_iterator &  cell)
inherited

Set the cell that is currently being used in evaluating the data for which the DataPostprocessor object is being called.

This function is not usually called from user space, but is instead called by DataOut and similar classes when creating the object that is then passed to DataPostprocessor.

◆ set_cell_and_face()

template<int spacedim>
template<int dim>
void DataPostprocessorInputs::CommonInputs< spacedim >::set_cell_and_face ( const typename DoFHandler< dim, spacedim >::cell_iterator &  cell,
const unsigned int  face_number 
)
inherited

Set the cell and face number that is currently being used in evaluating the data for which the DataPostprocessor object is being called. Given that a face is required, this function is meant to be called by a class such as DataOutFaces.

This function is not usually called from user space, but is instead called by DataOutFaces and similar classes when creating the object that is then passed to DataPostprocessor.

◆ get_cell()

template<int spacedim>
template<int dim>
DoFHandler< dim, spacedim >::cell_iterator DataPostprocessorInputs::CommonInputs< spacedim >::get_cell ( ) const
inherited

Query the cell on which we currently produce graphical output. See the documentation of the current class for an example on how to use this function.

◆ get_face_number()

template<int spacedim>
unsigned int DataPostprocessorInputs::CommonInputs< spacedim >::get_face_number ( ) const
inherited

Query the face number on which we currently produce graphical output. See the documentation of the current class for an example on how to use the related get_cell() function that is meant to query the cell currently being worked on.

This function is intended for use when producing graphical output on faces, for example through the DataOutFaces class.

Definition at line 32 of file data_postprocessor.cc.

Member Data Documentation

◆ solution_values

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

An array of values of the (scalar) solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

Definition at line 328 of file data_postprocessor.h.

◆ solution_gradients

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

An array of gradients of the (scalar) solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

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 343 of file data_postprocessor.h.

◆ solution_hessians

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

An array of second derivatives of the (scalar) solution at each of the evaluation points used to create graphical output from one cell, face, or other object.

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 358 of file data_postprocessor.h.

◆ normals

template<int spacedim>
std::vector<Tensor<1, spacedim> > DataPostprocessorInputs::CommonInputs< spacedim >::normals
inherited

An array of vectors normal to the faces of cells, evaluated at the points at which we are generating graphical output. This array is only used by the DataOutFaces class, and is left empty by all other classes for which the DataPostprocessor framework can be used. In the case of DataOutFaces, the array contains the outward normal vectors to the face, seen from the interior of the cell.

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_normal_vectors. Alternatively, a class derived from DataPostprocessorScalar, DataPostprocessorVector, or DataPostprocessorTensor may pass this flag to the constructor of these three classes.

Definition at line 214 of file data_postprocessor.h.

◆ evaluation_points

template<int spacedim>
std::vector<Point<spacedim> > DataPostprocessorInputs::CommonInputs< spacedim >::evaluation_points
inherited

An array of coordinates corresponding to the locations at which we are generating graphical output on one cell.

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_quadrature_points. Alternatively, a class derived from DataPostprocessorScalar, DataPostprocessorVector, or DataPostprocessorTensor may pass this flag to the constructor of these three classes.

Note
In the current context, the flag UpdateFlags::update_quadrature_points is misnamed because we are not actually performing any quadrature. Rather, we are evaluating the solution at specific evaluation points, but these points are unrelated to quadrature (i.e., to computing integrals) and will, in general, not be located at Gauss points or the quadrature points of any of the typical quadrature rules.)

Definition at line 236 of file data_postprocessor.h.

◆ cell

template<int spacedim>
std::any DataPostprocessorInputs::CommonInputs< spacedim >::cell
privateinherited

The place where set_cell() stores the cell. Since the actual data type of the cell iterator can be many different things, the interface uses std::any here. This makes assignment in set_cell() simple, but requires knowing the data type of the stored object in get_cell().

Definition at line 295 of file data_postprocessor.h.

◆ face_number

template<int spacedim>
unsigned int DataPostprocessorInputs::CommonInputs< spacedim >::face_number
privateinherited

The place where set_cell_and_face() stores the number of the face being worked on.

Definition at line 301 of file data_postprocessor.h.


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