deal.II version GIT relicensing-2167-g9622207b8f 2024-11-21 12:40: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
mapping_related_data.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2022 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_fe_mapping_related_data_h
16#define dealii_fe_mapping_related_data_h
17
18#include <deal.II/base/config.h>
19
21#include <deal.II/base/point.h>
22#include <deal.II/base/tensor.h>
23
25
26#include <vector>
27
28
30
34namespace internal
35{
36 namespace FEValuesImplementation
37 {
50 template <int dim, int spacedim = dim>
52 {
53 public:
57 void
58 initialize(const unsigned int n_quadrature_points,
59 const UpdateFlags flags);
60
65 std::size_t
66 memory_consumption() const;
67
81 std::vector<double> JxW_values;
82
86 std::vector<DerivativeForm<1, dim, spacedim>> jacobians;
87
92 std::vector<DerivativeForm<2, dim, spacedim>> jacobian_grads;
93
97 std::vector<DerivativeForm<1, spacedim, dim>> inverse_jacobians;
98
103 std::vector<Tensor<3, spacedim>> jacobian_pushed_forward_grads;
104
109 std::vector<DerivativeForm<3, dim, spacedim>> jacobian_2nd_derivatives;
110
115 std::vector<Tensor<4, spacedim>> jacobian_pushed_forward_2nd_derivatives;
116
121 std::vector<DerivativeForm<4, dim, spacedim>> jacobian_3rd_derivatives;
122
127 std::vector<Tensor<5, spacedim>> jacobian_pushed_forward_3rd_derivatives;
128
134 std::vector<Point<spacedim>> quadrature_points;
135
139 std::vector<Tensor<1, spacedim>> normal_vectors;
140
144 std::vector<Tensor<1, spacedim>> boundary_forms;
145 };
146 } // namespace FEValuesImplementation
147} // namespace internal
148
149
155
156#endif
std::vector< DerivativeForm< 1, spacedim, dim > > inverse_jacobians
void initialize(const unsigned int n_quadrature_points, const UpdateFlags flags)
std::vector< Tensor< 5, spacedim > > jacobian_pushed_forward_3rd_derivatives
std::vector< DerivativeForm< 4, dim, spacedim > > jacobian_3rd_derivatives
std::vector< DerivativeForm< 3, dim, spacedim > > jacobian_2nd_derivatives
std::vector< Tensor< 4, spacedim > > jacobian_pushed_forward_2nd_derivatives
std::vector< Tensor< 3, spacedim > > jacobian_pushed_forward_grads
std::vector< DerivativeForm< 2, dim, spacedim > > jacobian_grads
std::vector< DerivativeForm< 1, dim, spacedim > > jacobians
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:498
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:499
UpdateFlags