16 #ifndef dealii_fe_function_h 17 #define dealii_fe_function_h 19 #include <deal.II/base/function.h> 20 #include <deal.II/base/point.h> 21 #include <deal.II/base/tensor.h> 22 #include <deal.II/base/thread_local_storage.h> 24 #include <deal.II/dofs/dof_accessor.h> 25 #include <deal.II/dofs/dof_handler.h> 27 #include <deal.II/fe/mapping_q1.h> 29 #include <deal.II/grid/grid_tools_cache.h> 31 #include <deal.II/lac/vector.h> 33 #include <boost/optional.hpp> 36 DEAL_II_NAMESPACE_OPEN
174 const DoFHandlerType &
dh,
185 const typename DoFHandlerType::active_cell_iterator &newcell);
224 virtual typename VectorType::value_type
225 value(
const Point<dim> &p,
const unsigned int component = 0)
const override;
244 std::vector<typename VectorType::value_type> &values,
245 const unsigned int component = 0)
const override;
266 &values)
const override;
286 &gradients)
const override;
305 const unsigned int component = 0)
const override;
324 &gradients)
const override;
343 const unsigned int component = 0)
const override;
357 virtual typename VectorType::value_type
359 const unsigned int component = 0)
const override;
391 std::vector<typename VectorType::value_type> &values,
392 const unsigned int component = 0)
const override;
408 &values)
const override;
435 std::vector<typename DoFHandlerType::active_cell_iterator> &cells,
436 std::vector<std::vector<
Point<dim>>> & qpoints,
437 std::vector<std::vector<unsigned int>> & maps)
const;
444 typename DoFHandlerType::active_cell_iterator>;
478 boost::optional<Point<dim>>
480 const typename DoFHandlerType::active_cell_iterator &cell,
485 DEAL_II_NAMESPACE_CLOSE
FEFieldFunction(const DoFHandlerType &dh, const VectorType &data_vector, const Mapping< dim > &mapping=StaticMappingQ1< dim >::mapping)
SmartPointer< const DoFHandlerType, FEFieldFunction< dim, DoFHandlerType, VectorType > > dh
virtual void value_list(const std::vector< Point< dim >> &points, std::vector< typename VectorType::value_type > &values, const unsigned int component=0) const override
virtual void vector_gradient(const Point< dim > &p, std::vector< Tensor< 1, dim, typename VectorType::value_type >> &gradients) const override
const Mapping< dim > & mapping
void set_active_cell(const typename DoFHandlerType::active_cell_iterator &newcell)
boost::optional< Point< dim > > get_reference_coordinates(const typename DoFHandlerType::active_cell_iterator &cell, const Point< dim > &point) const
virtual void vector_value(const Point< dim > &p, Vector< typename VectorType::value_type > &values) const override
static ::ExceptionBase & ExcPointNotAvailableHere()
virtual void vector_value_list(const std::vector< Point< dim >> &points, std::vector< Vector< typename VectorType::value_type >> &values) const override
virtual void vector_laplacian(const Point< dim > &p, Vector< typename VectorType::value_type > &values) const override
virtual void vector_laplacian_list(const std::vector< Point< dim >> &points, std::vector< Vector< typename VectorType::value_type >> &values) const override
virtual VectorType::value_type value(const Point< dim > &p, const unsigned int component=0) const override
const VectorType & data_vector
GridTools::Cache< dim, DoFHandlerType::space_dimension > cache
unsigned int compute_point_locations(const std::vector< Point< dim >> &points, std::vector< typename DoFHandlerType::active_cell_iterator > &cells, std::vector< std::vector< Point< dim >>> &qpoints, std::vector< std::vector< unsigned int >> &maps) const
virtual Tensor< 1, dim, typename VectorType::value_type > gradient(const Point< dim > &p, const unsigned int component=0) const override
virtual void vector_gradient_list(const std::vector< Point< dim >> &p, std::vector< std::vector< Tensor< 1, dim, typename VectorType::value_type >>> &gradients) const override
virtual void gradient_list(const std::vector< Point< dim >> &p, std::vector< Tensor< 1, dim, typename VectorType::value_type >> &gradients, const unsigned int component=0) const override
virtual void laplacian_list(const std::vector< Point< dim >> &points, std::vector< typename VectorType::value_type > &values, const unsigned int component=0) const override
virtual VectorType::value_type laplacian(const Point< dim > &p, const unsigned int component=0) const override