Reference documentation for deal.II version GIT c1ddcf411d 2023-11-30 16:30:02+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\}}\)
vector_tools_rhs.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 1998 - 2023 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 #ifndef dealii_vector_tools_rhs_h
17 #define dealii_vector_tools_rhs_h
18 
19 #include <deal.II/base/config.h>
20 
21 #include <set>
22 
24 
25 template <typename number>
26 class AffineConstraints;
27 
28 template <int dim, int spacedim>
29 DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
30 class DoFHandler;
31 
32 template <int dim, typename Number>
33 class Function;
34 template <int dim, int spacedim>
35 class Mapping;
36 template <int dim>
37 class Quadrature;
38 namespace hp
39 {
40  template <int dim, int spacedim>
41  class MappingCollection;
42  template <int dim>
43  class QCollection;
44 } // namespace hp
45 
46 
47 namespace VectorTools
48 {
62  template <int dim, int spacedim, typename VectorType>
63  DEAL_II_CXX20_REQUIRES(concepts::is_writable_dealii_vector_type<VectorType>)
65  const Mapping<dim, spacedim> &mapping,
66  const DoFHandler<dim, spacedim> &dof,
67  const Quadrature<dim> &q,
68  const Function<spacedim, typename VectorType::value_type> &rhs,
69  VectorType &rhs_vector,
70  const AffineConstraints<typename VectorType::value_type> &constraints =
71  AffineConstraints<typename VectorType::value_type>());
72 
79  template <int dim, int spacedim, typename VectorType>
82  const DoFHandler<dim, spacedim> &dof,
83  const Quadrature<dim> &q,
84  const Function<spacedim, typename VectorType::value_type> &rhs,
85  VectorType &rhs_vector,
86  const AffineConstraints<typename VectorType::value_type> &constraints =
87  AffineConstraints<typename VectorType::value_type>());
88 
94  template <int dim, int spacedim, typename VectorType>
97  const hp::MappingCollection<dim, spacedim> &mapping,
98  const DoFHandler<dim, spacedim> &dof,
99  const hp::QCollection<dim> &q,
100  const Function<spacedim, typename VectorType::value_type> &rhs,
101  VectorType &rhs_vector,
102  const AffineConstraints<typename VectorType::value_type> &constraints =
103  AffineConstraints<typename VectorType::value_type>());
104 
110  template <int dim, int spacedim, typename VectorType>
113  const DoFHandler<dim, spacedim> &dof,
114  const hp::QCollection<dim> &q,
115  const Function<spacedim, typename VectorType::value_type> &rhs,
116  VectorType &rhs_vector,
117  const AffineConstraints<typename VectorType::value_type> &constraints =
118  AffineConstraints<typename VectorType::value_type>());
119 
131  template <int dim, int spacedim, typename VectorType>
134  const Mapping<dim, spacedim> &mapping,
135  const DoFHandler<dim, spacedim> &dof,
136  const Quadrature<dim - 1> &q,
137  const Function<spacedim, typename VectorType::value_type> &rhs,
138  VectorType &rhs_vector,
139  const std::set<types::boundary_id> &boundary_ids =
140  std::set<types::boundary_id>());
141 
151  template <int dim, int spacedim, typename VectorType>
154  const DoFHandler<dim, spacedim> &dof,
155  const Quadrature<dim - 1> &q,
156  const Function<spacedim, typename VectorType::value_type> &rhs,
157  VectorType &rhs_vector,
158  const std::set<types::boundary_id> &boundary_ids =
159  std::set<types::boundary_id>());
160 
169  template <int dim, int spacedim, typename VectorType>
172  const hp::MappingCollection<dim, spacedim> &mapping,
173  const DoFHandler<dim, spacedim> &dof,
174  const hp::QCollection<dim - 1> &q,
175  const Function<spacedim, typename VectorType::value_type> &rhs,
176  VectorType &rhs_vector,
177  const std::set<types::boundary_id> &boundary_ids =
178  std::set<types::boundary_id>());
179 
190  template <int dim, int spacedim, typename VectorType>
193  const DoFHandler<dim, spacedim> &dof,
194  const hp::QCollection<dim - 1> &q,
195  const Function<spacedim, typename VectorType::value_type> &rhs,
196  VectorType &rhs_vector,
197  const std::set<types::boundary_id> &boundary_ids =
198  std::set<types::boundary_id>());
200 } // namespace VectorTools
201 
203 
204 #endif // dealii_vector_tools_rhs_h
Abstract base class for mapping classes.
Definition: mapping.h:317
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:477
#define DEAL_II_CXX20_REQUIRES(condition)
Definition: config.h:166
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:478
__global__ void set(Number *val, const Number s, const size_type N)
void create_right_hand_side(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Quadrature< dim > &q, const Function< spacedim, typename VectorType::value_type > &rhs, VectorType &rhs_vector, const AffineConstraints< typename VectorType::value_type > &constraints=AffineConstraints< typename VectorType::value_type >())
void create_boundary_right_hand_side(const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Quadrature< dim - 1 > &q, const Function< spacedim, typename VectorType::value_type > &rhs, VectorType &rhs_vector, const std::set< types::boundary_id > &boundary_ids=std::set< types::boundary_id >())
concept is_writable_dealii_vector_type
Definition: hp.h:118
Definition: types.h:33
unsigned int boundary_id
Definition: types.h:145