Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
deal.II
fe
mapping_c1.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2001 - 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_mapping_c1_h
17
#define dealii_mapping_c1_h
18
19
20
#include <deal.II/base/config.h>
21
22
#include <deal.II/fe/mapping_q.h>
23
24
DEAL_II_NAMESPACE_OPEN
25
28
39
template
<
int
dim,
int
spacedim = dim>
40
class
MappingC1
:
public
MappingQ
<dim, spacedim>
41
{
42
public
:
47
MappingC1
();
48
53
virtual
std::unique_ptr<Mapping<dim, spacedim>>
54
clone
()
const override
;
55
56
protected
:
62
class
MappingC1Generic
:
public
MappingQGeneric
<dim, spacedim>
63
{
64
public
:
68
MappingC1Generic
();
69
79
virtual
void
80
add_line_support_points
(
81
const
typename
Triangulation<dim>::cell_iterator
&cell,
82
std::vector<
Point<dim>
> & a)
const override
;
83
93
virtual
void
94
add_quad_support_points
(
95
const
typename
Triangulation<dim>::cell_iterator
&cell,
96
std::vector<
Point<dim>
> & a)
const override
;
97
};
98
};
99
102
/* -------------- declaration of explicit specializations ------------- */
103
104
#ifndef DOXYGEN
105
106
template
<>
107
void
108
MappingC1<1>::MappingC1Generic::add_line_support_points
(
109
const
Triangulation<1>::cell_iterator
&,
110
std::vector<
Point<1>
> &)
const
;
111
template
<>
112
void
113
MappingC1<2>::MappingC1Generic::add_line_support_points
(
114
const
Triangulation<2>::cell_iterator
&cell,
115
std::vector<
Point<2>
> & a)
const
;
116
117
template
<>
118
void
119
MappingC1<1>::MappingC1Generic::add_quad_support_points
(
120
const
Triangulation<1>::cell_iterator
&,
121
std::vector<
Point<1>
> &)
const
;
122
template
<>
123
void
124
MappingC1<2>::MappingC1Generic::add_quad_support_points
(
125
const
Triangulation<2>::cell_iterator
&,
126
std::vector<
Point<2>
> &)
const
;
127
128
129
#endif // DOXYGEN
130
131
DEAL_II_NAMESPACE_CLOSE
132
133
#endif
MappingC1::clone
virtual std::unique_ptr< Mapping< dim, spacedim > > clone() const override
Definition:
mapping_c1.cc:223
MappingC1
Definition:
mapping_c1.h:40
Point< dim >
MappingQGeneric
Definition:
mapping_q_generic.h:133
MappingC1::MappingC1Generic::add_quad_support_points
virtual void add_quad_support_points(const typename Triangulation< dim >::cell_iterator &cell, std::vector< Point< dim >> &a) const override
Definition:
mapping_c1.cc:212
Triangulation
Definition:
dof_handler.h:50
MappingQ
Definition:
fe_dgq.h:29
MappingC1::MappingC1Generic
Definition:
mapping_c1.h:62
MappingC1::MappingC1
MappingC1()
Definition:
mapping_c1.cc:38
MappingC1::MappingC1Generic::add_line_support_points
virtual void add_line_support_points(const typename Triangulation< dim >::cell_iterator &cell, std::vector< Point< dim >> &a) const override
Definition:
mapping_c1.cc:175
MappingC1::MappingC1Generic::MappingC1Generic
MappingC1Generic()
Definition:
mapping_c1.cc:31
TriaIterator
Definition:
dof_iterator_selector.h:35
Generated by
1.8.14