Reference documentation for deal.II version GIT 29f9da0a34 2023-12-07 10:00:01+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\}}\)
fe_immersed_values.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2021 - 2022 by the deal.II authors
4 //
5 // This file is part of the deal.II library.
6 //
7 // The deal.II library is free software; you can use it, redistribute
8 // it, and/or modify it under the terms of the GNU Lesser General
9 // Public License as published by the Free Software Foundation; either
10 // version 2.1 of the License, or (at your option) any later version.
11 // The full text of the license can be found in the file LICENSE.md at
12 // the top level directory of deal.II.
13 //
14 // ---------------------------------------------------------------------
15 
16 
17 #ifndef dealii_non_matching_fe_immersed_values_h
18 #define dealii_non_matching_fe_immersed_values_h
19 
20 #include <deal.II/base/config.h>
21 
23 
24 #include <deal.II/fe/fe.h>
26 #include <deal.II/fe/fe_values.h>
27 #include <deal.II/fe/mapping.h>
28 
30 
32 
34 namespace NonMatching
35 {
55  template <int dim>
56  class FEImmersedSurfaceValues : public FEValuesBase<dim, dim>
57  {
58  public:
67  const FiniteElement<dim> &element,
70 
75  void
76  reinit(const typename Triangulation<dim>::cell_iterator &cell);
77 
83  template <bool level_dof_access>
84  void
85  reinit(
87 
100  shape_surface_grad(const unsigned int function_no,
101  const unsigned int quadrature_point) const;
102 
118  shape_surface_grad_component(const unsigned int function_no,
119  const unsigned int quadrature_point,
120  const unsigned int component) const;
121 
127  get_quadrature() const;
128 
129  protected:
133  void
135 
142  void
143  do_reinit();
144 
149  };
150 
151 } // namespace NonMatching
153 
154 #endif /* dealii_non_matching_fe_immersed_values_h */
const Point< spacedim > & quadrature_point(const unsigned int q_point) const
const SmartPointer< const Mapping< dim, spacedim >, FEValuesBase< dim, spacedim > > mapping
Abstract base class for mapping classes.
Definition: mapping.h:317
void reinit(const typename Triangulation< dim >::cell_iterator &cell)
void initialize(const UpdateFlags update_flags)
Tensor< 1, dim > shape_surface_grad_component(const unsigned int function_no, const unsigned int quadrature_point, const unsigned int component) const
Tensor< 1, dim > shape_surface_grad(const unsigned int function_no, const unsigned int quadrature_point) const
const NonMatching::ImmersedSurfaceQuadrature< dim > & get_quadrature() const
FEImmersedSurfaceValues(const Mapping< dim > &mapping, const FiniteElement< dim > &element, const ImmersedSurfaceQuadrature< dim > &quadrature, const UpdateFlags update_flags)
const ImmersedSurfaceQuadrature< dim > quadrature
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:477
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:478
UpdateFlags