Loading [MathJax]/extensions/TeX/newcommand.js
 deal.II version GIT relicensing-2848-g5241f990fb 2025-03-16 19: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\}}
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
vector_tools_point_gradient.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2020 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15#ifndef dealii_vector_tools_point_gradient_h
16#define dealii_vector_tools_point_gradient_h
17
18
19#include <deal.II/base/config.h>
20
22
23#include <vector>
24
25
27
28template <int dim, int spacedim>
30class DoFHandler;
31
32template <int dim, typename Number>
33class Function;
34template <int dim, int spacedim>
35class Mapping;
36
37template <int dim, typename Number>
39class Point;
40
41template <int rank_, int dim, typename Number>
42class Tensor;
43template <typename Number>
44class Vector;
45namespace hp
46{
47 template <int dim, int spacedim>
48 class MappingCollection;
49} // namespace hp
50
51namespace VectorTools
52{
92 template <int dim, typename VectorType, int spacedim>
95 const DoFHandler<dim, spacedim> &dof,
96 const VectorType &fe_function,
97 const Point<spacedim, double> &point,
98 std::vector<Tensor<1, spacedim, typename VectorType::value_type>> &value);
99
118 template <int dim, typename VectorType, int spacedim>
119 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
120 void point_gradient(
121 const DoFHandler<dim, spacedim> &dof,
122 const VectorType &fe_function,
123 const Point<spacedim, double> &point,
124 std::vector<Tensor<1, spacedim, typename VectorType::value_type>> &value);
125
160 template <int dim, typename VectorType, int spacedim>
161 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
162 Tensor<1, spacedim, typename VectorType::value_type> point_gradient(
163 const DoFHandler<dim, spacedim> &dof,
164 const VectorType &fe_function,
165 const Point<spacedim, double> &point);
166
185 template <int dim, typename VectorType, int spacedim>
186 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
187 Tensor<1, spacedim, typename VectorType::value_type> point_gradient(
188 const DoFHandler<dim, spacedim> &dof,
189 const VectorType &fe_function,
190 const Point<spacedim, double> &point);
191
226 template <int dim, typename VectorType, int spacedim>
227 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
229 const Mapping<dim, spacedim> &mapping,
230 const DoFHandler<dim, spacedim> &dof,
231 const VectorType &fe_function,
232 const Point<spacedim, double> &point,
233 std::vector<Tensor<1, spacedim, typename VectorType::value_type>> &value);
234
253 template <int dim, typename VectorType, int spacedim>
254 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
256 const hp::MappingCollection<dim, spacedim> &mapping,
257 const DoFHandler<dim, spacedim> &dof,
258 const VectorType &fe_function,
259 const Point<spacedim, double> &point,
260 std::vector<Tensor<1, spacedim, typename VectorType::value_type>> &value);
261
296 template <int dim, typename VectorType, int spacedim>
297 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
298 Tensor<1, spacedim, typename VectorType::value_type> point_gradient(
299 const Mapping<dim, spacedim> &mapping,
300 const DoFHandler<dim, spacedim> &dof,
301 const VectorType &fe_function,
302 const Point<spacedim, double> &point);
303
322 template <int dim, typename VectorType, int spacedim>
323 DEAL_II_CXX20_REQUIRES(concepts::is_dealii_vector_type<VectorType>)
324 Tensor<1, spacedim, typename VectorType::value_type> point_gradient(
325 const hp::MappingCollection<dim, spacedim> &mapping,
326 const DoFHandler<dim, spacedim> &dof,
327 const VectorType &fe_function,
328 const Point<spacedim, double> &point);
329
331} // namespace VectorTools
332
334
335#endif // dealii_vector_tools_point_gradient_h
Abstract base class for mapping classes.
Definition mapping.h:320
Definition point.h:113
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:40
#define DEAL_II_CXX20_REQUIRES(condition)
Definition config.h:245
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:41
void point_gradient(const DoFHandler< dim, spacedim > &dof, const VectorType &fe_function, const Point< spacedim, double > &point, std::vector< Tensor< 1, spacedim, typename VectorType::value_type > > &value)
Definition hp.h:117
STL namespace.