 |
Reference documentation for deal.II version 9.1.1
|
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
16 #ifndef dealii_data_postprocessor_h
17 #define dealii_data_postprocessor_h
21 #include <deal.II/base/point.h>
22 #include <deal.II/base/subscriptor.h>
23 #include <deal.II/base/tensor.h>
25 #include <deal.II/fe/fe_update_flags.h>
27 #include <deal.II/lac/vector.h>
29 #include <deal.II/numerics/data_component_interpretation.h>
31 #include <boost/any.hpp>
36 DEAL_II_NAMESPACE_OPEN
150 template <
int spacedim>
193 template <
typename DoFHandlerType>
195 set_cell(
const typename DoFHandlerType::cell_iterator &
cell);
202 template <
typename DoFHandlerType>
203 typename DoFHandlerType::cell_iterator
230 template <
int spacedim>
286 template <
int spacedim>
475 virtual std::vector<std::string>
500 virtual std::vector<DataComponentInterpretation::DataComponentInterpretation>
555 const UpdateFlags update_flags);
562 virtual std::vector<std::string>
572 virtual std::vector<DataComponentInterpretation::DataComponentInterpretation>
588 const UpdateFlags update_flags;
794 const UpdateFlags update_flags);
801 virtual std::vector<std::string>
811 virtual std::vector<DataComponentInterpretation::DataComponentInterpretation>
827 const UpdateFlags update_flags;
1039 const UpdateFlags update_flags);
1046 virtual std::vector<std::string>
1056 virtual std::vector<DataComponentInterpretation::DataComponentInterpretation>
1072 const UpdateFlags update_flags;
1082 template <
int spacedim>
1083 template <
typename DoFHandlerType>
1086 const typename DoFHandlerType::cell_iterator &new_cell)
1091 if (
typename DoFHandlerType::cell_iterator *storage_location =
1092 boost::any_cast<typename DoFHandlerType::cell_iterator>(&cell))
1093 *storage_location = new_cell;
1102 template <
int spacedim>
1103 template <
typename DoFHandlerType>
1104 typename DoFHandlerType::cell_iterator
1107 Assert(cell.empty() ==
false,
1109 "You are trying to access the cell associated with a "
1110 "DataPostprocessorInputs::Scalar object for which no cell has "
1112 Assert(boost::any_cast<typename DoFHandlerType::cell_iterator>(&cell) !=
1115 "You are trying to access the cell associated with a "
1116 "DataPostprocessorInputs::Scalar with a DoFHandler type that "
1117 "is different from the type with which it has been set. For "
1118 "example, if the cell for which output is currently being "
1119 "generated belongs to a hp::DoFHandler<2,3> object, then you can "
1120 "only call the current function with a template argument "
1121 "equal to hp::DoFHandler<2,3>, but not with any other class "
1122 "type or dimension template argument."));
1123 return boost::any_cast<typename DoFHandlerType::cell_iterator>(cell);
1129 DEAL_II_NAMESPACE_CLOSE
virtual std::vector< std::string > get_names() const override
virtual UpdateFlags get_needed_update_flags() const override
virtual UpdateFlags get_needed_update_flags() const override
virtual std::vector< std::string > get_names() const override
DataPostprocessorTensor(const std::string &name, const UpdateFlags update_flags)
DataPostprocessorScalar(const std::string &name, const UpdateFlags update_flags)
virtual std::vector< DataComponentInterpretation::DataComponentInterpretation > get_data_component_interpretation() const override
DoFHandlerType::cell_iterator get_cell() const
std::vector< std::vector< Tensor< 2, spacedim > > > solution_hessians
virtual void evaluate_vector_field(const DataPostprocessorInputs::Vector< dim > &input_data, std::vector< Vector< double >> &computed_quantities) const
std::vector<::Vector< double > > solution_values
static ::ExceptionBase & ExcMessage(std::string arg1)
std::vector< Tensor< 2, spacedim > > solution_hessians
virtual std::vector< DataComponentInterpretation::DataComponentInterpretation > get_data_component_interpretation() const override
virtual std::vector< DataComponentInterpretation::DataComponentInterpretation > get_data_component_interpretation() const override
std::vector< Point< spacedim > > evaluation_points
std::vector< Tensor< 1, spacedim > > solution_gradients
#define Assert(cond, exc)
std::vector< Tensor< 1, spacedim > > normals
void set_cell(const typename DoFHandlerType::cell_iterator &cell)
std::vector< double > solution_values
virtual ~DataPostprocessor() override=default
virtual UpdateFlags get_needed_update_flags() const =0
virtual std::vector< std::string > get_names() const =0
virtual void evaluate_scalar_field(const DataPostprocessorInputs::Scalar< dim > &input_data, std::vector< Vector< double >> &computed_quantities) const
DataPostprocessorVector(const std::string &name, const UpdateFlags update_flags)
std::vector< std::vector< Tensor< 1, spacedim > > > solution_gradients
virtual UpdateFlags get_needed_update_flags() const override
virtual std::vector< DataComponentInterpretation::DataComponentInterpretation > get_data_component_interpretation() const
virtual std::vector< std::string > get_names() const override