13#ifndef dealii_non_matching_coupling_h
14#define dealii_non_matching_coupling_h
90 template <
int dim0,
int dim1,
int spacedim,
typename number =
double>
93 const DoFHandler<dim0, spacedim> &space_dh,
94 const DoFHandler<dim1, spacedim> &immersed_dh,
95 const Quadrature<dim1> &quad,
96 SparsityPatternBase &sparsity,
97 const AffineConstraints<number> &constraints = {},
98 const ComponentMask &space_comps = {},
99 const ComponentMask &immersed_comps = {},
100 const Mapping<dim0, spacedim> &space_mapping =
102 const Mapping<dim1, spacedim> &immersed_mapping =
104 const AffineConstraints<number> &immersed_constraints =
105 AffineConstraints<number>());
113 template <
int dim0,
int dim1,
int spacedim,
typename number =
double>
116 const GridTools::Cache<dim0, spacedim> &cache,
117 const DoFHandler<dim0, spacedim> &space_dh,
118 const DoFHandler<dim1, spacedim> &immersed_dh,
119 const Quadrature<dim1> &quad,
120 SparsityPatternBase &sparsity,
121 const AffineConstraints<number> &constraints = {},
122 const ComponentMask &space_comps = {},
123 const ComponentMask &immersed_comps = {},
124 const Mapping<dim1, spacedim> &immersed_mapping =
126 const AffineConstraints<number> &immersed_constraints =
127 AffineConstraints<number>());
174 template <
int dim0,
int dim1,
int spacedim,
typename Matrix>
177 const DoFHandler<dim0, spacedim> &space_dh,
178 const DoFHandler<dim1, spacedim> &immersed_dh,
179 const Quadrature<dim1> &quad,
181 const AffineConstraints<typename Matrix::value_type> &constraints =
182 AffineConstraints<typename Matrix::value_type>(),
183 const ComponentMask &space_comps = {},
184 const ComponentMask &immersed_comps = {},
185 const Mapping<dim0, spacedim> &space_mapping =
187 const Mapping<dim1, spacedim> &immersed_mapping =
189 const AffineConstraints<typename Matrix::value_type> &immersed_constraints =
190 AffineConstraints<typename Matrix::value_type>());
198 template <
int dim0,
int dim1,
int spacedim,
typename Matrix>
201 const GridTools::Cache<dim0, spacedim> &cache,
202 const DoFHandler<dim0, spacedim> &space_dh,
203 const DoFHandler<dim1, spacedim> &immersed_dh,
204 const Quadrature<dim1> &quad,
206 const AffineConstraints<typename Matrix::value_type> &constraints =
207 AffineConstraints<typename Matrix::value_type>(),
208 const ComponentMask &space_comps = {},
209 const ComponentMask &immersed_comps = {},
210 const Mapping<dim1, spacedim> &immersed_mapping =
212 const AffineConstraints<typename Matrix::value_type> &immersed_constraints =
213 AffineConstraints<typename Matrix::value_type>());
261 template <
int dim0,
int dim1,
int spacedim,
typename Number =
double>
264 const double &epsilon,
265 const GridTools::Cache<dim0, spacedim> &cache0,
266 const GridTools::Cache<dim1, spacedim> &cache1,
267 const DoFHandler<dim0, spacedim> &dh0,
268 const DoFHandler<dim1, spacedim> &dh1,
269 const Quadrature<dim1> &quad,
270 SparsityPatternBase &sparsity,
271 const AffineConstraints<Number> &constraints0 = AffineConstraints<Number>(),
272 const ComponentMask &comps0 = {},
273 const ComponentMask &comps1 = {});
321 template <
int dim0,
int dim1,
int spacedim,
typename Matrix>
324 Functions::CutOffFunctionBase<spacedim> &kernel,
325 const double &epsilon,
326 const GridTools::Cache<dim0, spacedim> &cache0,
327 const GridTools::Cache<dim1, spacedim> &cache1,
328 const DoFHandler<dim0, spacedim> &dh0,
329 const DoFHandler<dim1, spacedim> &dh1,
330 const Quadrature<dim0> &quadrature0,
331 const Quadrature<dim1> &quadrature1,
333 const AffineConstraints<typename Matrix::value_type> &constraints0 =
334 AffineConstraints<typename Matrix::value_type>(),
335 const ComponentMask &comps0 = {},
336 const ComponentMask &comps1 = {});
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
void create_coupling_sparsity_pattern(const DoFHandler< dim0, spacedim > &space_dh, const DoFHandler< dim1, spacedim > &immersed_dh, const Quadrature< dim1 > &quad, SparsityPatternBase &sparsity, const AffineConstraints< number > &constraints={}, const ComponentMask &space_comps={}, const ComponentMask &immersed_comps={}, const Mapping< dim0, spacedim > &space_mapping=StaticMappingQ1< dim0, spacedim >::mapping, const Mapping< dim1, spacedim > &immersed_mapping=StaticMappingQ1< dim1, spacedim >::mapping, const AffineConstraints< number > &immersed_constraints=AffineConstraints< number >())
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={}, const ComponentMask &immersed_comps={}, const Mapping< dim0, spacedim > &space_mapping=StaticMappingQ1< dim0, spacedim >::mapping, const Mapping< dim1, spacedim > &immersed_mapping=StaticMappingQ1< dim1, spacedim >::mapping, const AffineConstraints< typename Matrix::value_type > &immersed_constraints=AffineConstraints< typename Matrix::value_type >())
static MappingQ< dim, spacedim > mapping