Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
coupling.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2018 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_non_matching_coupling
17 #define dealii_non_matching_coupling
18 
19 #include <deal.II/base/config.h>
20 
21 #include <deal.II/base/quadrature.h>
22 
23 #include <deal.II/dofs/dof_handler.h>
24 
25 #include <deal.II/fe/component_mask.h>
26 #include <deal.II/fe/fe.h>
27 #include <deal.II/fe/mapping_q1.h>
28 
29 #include <deal.II/grid/grid_tools_cache.h>
30 
31 #include <deal.II/lac/affine_constraints.h>
32 
33 DEAL_II_NAMESPACE_OPEN
34 
44 namespace NonMatching
45 {
94  template <int dim0,
95  int dim1,
96  int spacedim,
97  typename Sparsity,
98  typename number = double>
99  void
101  const DoFHandler<dim0, spacedim> &space_dh,
102  const DoFHandler<dim1, spacedim> &immersed_dh,
103  const Quadrature<dim1> & quad,
104  Sparsity & sparsity,
106  const ComponentMask & space_comps = ComponentMask(),
107  const ComponentMask & immersed_comps = ComponentMask(),
108  const Mapping<dim0, spacedim> & space_mapping =
110  const Mapping<dim1, spacedim> &immersed_mapping =
112 
121  template <int dim0,
122  int dim1,
123  int spacedim,
124  typename Sparsity,
125  typename number = double>
126  void
129  const DoFHandler<dim0, spacedim> & space_dh,
130  const DoFHandler<dim1, spacedim> & immersed_dh,
131  const Quadrature<dim1> & quad,
132  Sparsity & sparsity,
134  const ComponentMask & space_comps = ComponentMask(),
135  const ComponentMask & immersed_comps = ComponentMask(),
136  const Mapping<dim1, spacedim> & immersed_mapping =
138 
139 
186  template <int dim0, int dim1, int spacedim, typename Matrix>
187  void
189  const DoFHandler<dim0, spacedim> & space_dh,
190  const DoFHandler<dim1, spacedim> & immersed_dh,
191  const Quadrature<dim1> & quad,
192  Matrix & matrix,
195  const ComponentMask & space_comps = ComponentMask(),
196  const ComponentMask & immersed_comps = ComponentMask(),
197  const Mapping<dim0, spacedim> &space_mapping =
199  const Mapping<dim1, spacedim> &immersed_mapping =
201 
210  template <int dim0, int dim1, int spacedim, typename Matrix>
211  void
213  const GridTools::Cache<dim0, spacedim> & cache,
214  const DoFHandler<dim0, spacedim> & space_dh,
215  const DoFHandler<dim1, spacedim> & immersed_dh,
216  const Quadrature<dim1> & quad,
217  Matrix & matrix,
220  const ComponentMask & space_comps = ComponentMask(),
221  const ComponentMask & immersed_comps = ComponentMask(),
222  const Mapping<dim1, spacedim> &immersed_mapping =
224 } // namespace NonMatching
225 DEAL_II_NAMESPACE_CLOSE
226 
227 #endif
void create_coupling_sparsity_pattern(const DoFHandler< dim0, spacedim > &space_dh, const DoFHandler< dim1, spacedim > &immersed_dh, const Quadrature< dim1 > &quad, Sparsity &sparsity, const AffineConstraints< number > &constraints=AffineConstraints< number >(), const ComponentMask &space_comps=ComponentMask(), const ComponentMask &immersed_comps=ComponentMask(), const Mapping< dim0, spacedim > &space_mapping=StaticMappingQ1< dim0, spacedim >::mapping, const Mapping< dim1, spacedim > &immersed_mapping=StaticMappingQ1< dim1, spacedim >::mapping)
Definition: coupling.cc:135
Abstract base class for mapping classes.
Definition: dof_tools.h:57
void create_coupling_mass_matrix(const DoFHandler< dim0, spacedim > &space_dh, const DoFHandler< dim1, spacedim > &immersed_dh, const Quadrature< dim1 > &quad, Matrix &matrix, const AffineConstraints< typename Matrix::value_type > &constraints=AffineConstraints< typename Matrix::value_type >(), const ComponentMask &space_comps=ComponentMask(), const ComponentMask &immersed_comps=ComponentMask(), const Mapping< dim0, spacedim > &space_mapping=StaticMappingQ1< dim0, spacedim >::mapping, const Mapping< dim1, spacedim > &immersed_mapping=StaticMappingQ1< dim1, spacedim >::mapping)
Definition: coupling.cc:322