Intrepid2
Intrepid2_NodalBasisFamily.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Intrepid2 Package
4//
5// Copyright 2007 NTESS and the Intrepid2 contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
15#ifndef Intrepid2_NodalBasisFamily_h
16#define Intrepid2_NodalBasisFamily_h
17
19
22
27
32
37
42
43namespace Intrepid2 {
44
45 // the following defines a family of nodal basis functions for the reference Triangle
46 template<typename ExecutionSpace,
47 typename OutputScalar = double,
48 typename PointScalar = double,
49 bool defineVertexFunctions = true>
58
59 // the following defines a family of nodal basis functions for the reference Tetrahedron
60 template<typename ExecutionSpace,
61 typename OutputScalar = double,
62 typename PointScalar = double,
63 bool defineVertexFunctions = true>
72
73
74 // the following defines a family of nodal basis functions, derived from a the standard high-order Intrepid2 bases on the line
75 // note that because the standard H(curl) basis uses a lower-order H(grad) basis in place of the H(vol) that is arguably more natural,
76 // the following will *not* match the standard nodal basis declared below. (Similarly for H(div).)
77
85 template<typename ExecutionSpace,
86 typename OutputScalar = double,
87 typename PointScalar = double>
92
98 template<typename ExecSpace,
99 typename OutputScalar = double,
100 typename PointScalar = double>
102 {
103 public:
105 using OutputValueType = OutputScalar;
106 using PointValueType = PointScalar;
107
109 using BasisPtr = Teuchos::RCP<BasisType>;
110
111 // line bases
114
115 // quadrilateral bases
120
121 // triangle bases
126
127 // hexahedron bases
132
133 // tetrahedron bases
138
139 };
140}
141
142#endif /* Intrepid2_NodalBasisFamily_h */
Stateless class representing a family of basis functions, templated on H(vol) and H(grad) on the line...
Header file for the Intrepid2::Basis_HCURL_HEX_In_FEM class.
Header file for the Intrepid2::Basis_HCURL_QUAD_In_FEM class.
Header file for the Intrepid2::Basis_HCURL_TET_In_FEM class.
Header file for the Intrepid2::Basis_HCURL_TRI_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_HEX_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_QUAD_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_TET_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_TRI_In_FEM class.
Header file for the Intrepid2::Basis_HGRAD_HEX_Cn_FEM class.
Header file for the Intrepid2::Basis_HGRAD_LINE_Cn_FEM class.
Header file for the Intrepid2::Basis_HGRAD_QUAD_Cn_FEM class.
Header file for the Intrepid2::Basis_HGRAD_TET_Cn_FEM class.
Header file for the Intrepid2::Basis_HGRAD_TRI_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_HEX_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_LINE_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_QUAD_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_TET_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_TRI_Cn_FEM class.
Implementation of the default H(curl)-compatible FEM basis on Hexahedron cell.
Implementation of the default H(curl)-compatible FEM basis on Quadrilateral cell.
Implementation of the default H(curl)-compatible Nedelec (first kind) basis of arbitrary degree on Te...
Implementation of the default H(curl)-compatible Nedelec (first kind) basis of arbitrary degree on Tr...
Implementation of the default H(div)-compatible FEM basis on Hexahedron cell.
Implementation of the default H(div)-compatible FEM basis on Quadrilateral cell
Implementation of the default H(div)-compatible Raviart-Thomas basis of arbitrary degree on Tetrahedr...
Implementation of the default H(div)-compatible Raviart-Thomas basis of arbitrary degree on Triangle ...
Implementation of the default H(grad)-compatible FEM basis of degree 2 on Hexahedron cell.
Implementation of the locally H(grad)-compatible FEM basis of variable order on the [-1,...
Implementation of the default H(grad)-compatible FEM basis of degree n on Quadrilateral cell Implemen...
Implementation of the default H(grad)-compatible Lagrange basis of arbitrary degree on Tetrahedron ce...
Implementation of the default H(grad)-compatible Lagrange basis of arbitrary degree on Triangle cell.
Implementation of the default HVOL-compatible FEM basis of degree n on Hexahedron cell.
Implementation of the locally HVOL-compatible FEM basis of variable order on the [-1,...
Implementation of the default HVOL-compatible FEM basis of degree n on Quadrilateral cell Implements ...
Implementation of the default HVOL-compatible Lagrange basis of arbitrary degree on Tetrahedron cell.
Implementation of the default HVOL-compatible Lagrange basis of arbitrary degree on Triangle cell.
An abstract base class that defines interface for concrete basis implementations for Finite Element (...
A family of basis functions, constructed from H(vol) and H(grad) bases on the line.
A family of nodal basis functions representing the higher-order Lagrangian basis family that Intrepid...