Reference documentation for deal.II version GIT 3779fa9eb4 2023-09-28 13:00: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\}}\)
fe_dg_vector.cc
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2010 - 2020 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 
21 
22 #include <deal.II/fe/fe_dg_vector.templates.h>
23 
24 #include <memory>
25 
26 
28 
29 template <int dim, int spacedim>
31  : FE_DGVector<PolynomialsNedelec<dim>, dim, spacedim>(p, {mapping_nedelec})
32 {}
33 
34 
35 template <int dim, int spacedim>
36 std::string
38 {
39  // note that FETools::get_fe_by_name() depends on the
40  // particular format of the string
41  // this function returns, so they
42  // have to be kept in synch
43 
44  std::ostringstream namebuf;
45  namebuf << "FE_DGNedelec<" << Utilities::dim_string(dim, spacedim) << ">("
46  << this->degree - 1 << ")";
47 
48  return namebuf.str();
49 }
50 
51 
52 template <int dim, int spacedim>
54  : FE_DGVector<PolynomialsRaviartThomas<dim>, dim, spacedim>(
55  p,
57 {}
58 
59 
60 template <int dim, int spacedim>
61 std::string
63 {
64  // note that the
65  // FETools::get_fe_by_name
66  // function depends on the
67  // particular format of the string
68  // this function returns, so they
69  // have to be kept in synch
70 
71  std::ostringstream namebuf;
72  namebuf << "FE_DGRaviartThomas<" << Utilities::dim_string(dim, spacedim)
73  << ">(" << this->degree - 1 << ")";
74 
75  return namebuf.str();
76 }
77 
78 
79 template <int dim, int spacedim>
80 FE_DGBDM<dim, spacedim>::FE_DGBDM(const unsigned int p)
81  : FE_DGVector<PolynomialsBDM<dim>, dim, spacedim>(p, {mapping_bdm})
82 {}
83 
84 
85 template <int dim, int spacedim>
86 std::string
88 {
89  // note that the
90  // FETools::get_fe_by_name
91  // function depends on the
92  // particular format of the string
93  // this function returns, so they
94  // have to be kept in synch
95 
96  std::ostringstream namebuf;
97  namebuf << "FE_DGBDM<" << Utilities::dim_string(dim, spacedim) << ">("
98  << this->degree - 1 << ")";
99 
100  return namebuf.str();
101 }
102 
103 
104 #include "fe_dg_vector.inst"
105 
virtual std::string get_name() const override
Definition: fe_dg_vector.cc:87
FE_DGBDM(const unsigned int p)
Definition: fe_dg_vector.cc:80
virtual std::string get_name() const override
Definition: fe_dg_vector.cc:37
FE_DGNedelec(const unsigned int p)
Definition: fe_dg_vector.cc:30
virtual std::string get_name() const override
Definition: fe_dg_vector.cc:62
FE_DGRaviartThomas(const unsigned int p)
Definition: fe_dg_vector.cc:53
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:477
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:478
@ mapping_nedelec
Definition: mapping.h:128
@ mapping_raviart_thomas
Definition: mapping.h:133
@ mapping_bdm
Definition: mapping.h:138
std::string dim_string(const int dim, const int spacedim)
Definition: utilities.cc:556