![]() |
MFEM v4.8.0
Finite element discretization library
|
Class to compute face normal derivatives (in reference coordinate) of an L2 grid function (used internally by L2FaceRestriction). More...
#include <normal_deriv_restriction.hpp>
Public Member Functions | |
| L2NormalDerivativeFaceRestriction (const FiniteElementSpace &fes_, const ElementDofOrdering f_ordering, const FaceType face_type_) | |
| Constructor. | |
| void | Mult (const Vector &x, Vector &y) const |
| Computes the normal derivatives on the face_type faces of the mesh. | |
| void | AddMultTranspose (const Vector &x, Vector &y, const real_t a=1.0) const |
| Computes the transpose of the action of Mult(), accumulating into y with coefficient a. | |
Internal compute kernels. Public because of nvcc restriction. | |
| template<int T_D1D = 0> | |
| void | Mult2D (const Vector &x, Vector &y) const |
| template<int T_D1D = 0> | |
| void | AddMultTranspose2D (const Vector &x, Vector &y, const real_t a) const |
| template<int T_D1D = 0> | |
| void | Mult3D (const Vector &x, Vector &y) const |
| template<int T_D1D = 0> | |
| void | AddMultTranspose3D (const Vector &x, Vector &y, const real_t a) const |
Protected Attributes | |
| const FiniteElementSpace & | fes |
| The L2 finite element space. | |
| const FaceType | face_type |
| Face type: either boundary or interior. | |
| const int | dim |
| Dimension of the mesh. | |
| const int | nf |
| Number of faces of the given face_type. | |
| const int | ne |
| Number of elements. | |
| int | ne_type |
| Number of elements with faces of type face type. | |
| Array< int > | face_to_elem |
| Face-wise information array. | |
| Array< int > | elem_to_face |
| Element-wise information array. | |
| Array< int > | face_to_vol |
| maps face index to volume index | |
Class to compute face normal derivatives (in reference coordinate) of an L2 grid function (used internally by L2FaceRestriction).
Definition at line 25 of file normal_deriv_restriction.hpp.
| mfem::L2NormalDerivativeFaceRestriction::L2NormalDerivativeFaceRestriction | ( | const FiniteElementSpace & | fes_, |
| const ElementDofOrdering | f_ordering, | ||
| const FaceType | face_type_ ) |
Constructor.
| [in] | fes_ | The associated FiniteElementSpace (should be L2/DG). |
| [in] | f_ordering | Request a specific face dof ordering. Currently only ElementDofOrdering::LEXICOGRAPHIC is supported. |
| [in] | face_type_ | Type of faces to compute restriction (interior or boundary). |
Definition at line 94 of file normal_deriv_restriction.cpp.
| void mfem::L2NormalDerivativeFaceRestriction::AddMultTranspose | ( | const Vector & | x, |
| Vector & | y, | ||
| const real_t | a = 1.0 ) const |
Computes the transpose of the action of Mult(), accumulating into y with coefficient a.
| x | Face E-vector layout (face_dofs x vdim x 2 x nf). |
| y | L-vector layout. |
| a | Optional coefficient (y = y + a*R^t*x) |
Definition at line 275 of file normal_deriv_restriction.cpp.
| void mfem::L2NormalDerivativeFaceRestriction::AddMultTranspose2D | ( | const Vector & | x, |
| Vector & | y, | ||
| const real_t | a ) const |
Definition at line 557 of file normal_deriv_restriction.cpp.
| void mfem::L2NormalDerivativeFaceRestriction::AddMultTranspose3D | ( | const Vector & | x, |
| Vector & | y, | ||
| const real_t | a ) const |
Definition at line 677 of file normal_deriv_restriction.cpp.
Computes the normal derivatives on the face_type faces of the mesh.
| [in] | x | The L-vector degrees of freedom. |
| [out] | y | The face E(like)-vector degrees of freedom of the format (face_dofs x vdim x 2 x nf) where nf is the number of faces of type face_type. The face_dofs are ordered according to f_ordering specified in the constructor. |
Definition at line 232 of file normal_deriv_restriction.cpp.
| void mfem::L2NormalDerivativeFaceRestriction::Mult2D | ( | const Vector & | x, |
| Vector & | y ) const |
Definition at line 320 of file normal_deriv_restriction.cpp.
| void mfem::L2NormalDerivativeFaceRestriction::Mult3D | ( | const Vector & | x, |
| Vector & | y ) const |
Definition at line 432 of file normal_deriv_restriction.cpp.
|
protected |
Dimension of the mesh.
Definition at line 30 of file normal_deriv_restriction.hpp.
|
protected |
Element-wise information array.
Definition at line 36 of file normal_deriv_restriction.hpp.
|
protected |
Face-wise information array.
Definition at line 35 of file normal_deriv_restriction.hpp.
|
protected |
maps face index to volume index
Definition at line 37 of file normal_deriv_restriction.hpp.
|
protected |
Face type: either boundary or interior.
Definition at line 29 of file normal_deriv_restriction.hpp.
|
protected |
The L2 finite element space.
Definition at line 28 of file normal_deriv_restriction.hpp.
|
protected |
Number of elements.
Definition at line 32 of file normal_deriv_restriction.hpp.
|
protected |
Number of elements with faces of type face type.
Definition at line 33 of file normal_deriv_restriction.hpp.
|
protected |
Number of faces of the given face_type.
Definition at line 31 of file normal_deriv_restriction.hpp.