Go to the documentation of this file.
18 #ifndef LIBMESH_FE_TRANSFORMATION_BASE_H
19 #define LIBMESH_FE_TRANSFORMATION_BASE_H
21 #include "libmesh/fe_base.h"
27 template<
typename T>
class FEGenericBase;
41 template<
typename OutputShape>
52 static std::unique_ptr<FETransformationBase<OutputShape>>
build(
const FEType & type);
74 const Elem *
const elem,
75 const std::vector<Point> & qp,
77 std::vector<std::vector<OutputShape>> & phi)
const = 0;
84 const Elem *
const elem,
85 const std::vector<Point> & qp,
88 std::vector<std::vector<OutputShape>> & dphidx,
89 std::vector<std::vector<OutputShape>> & dphidy,
90 std::vector<std::vector<OutputShape>> & dphidz)
const = 0;
92 #ifdef LIBMESH_ENABLE_SECOND_DERIVATIVES
98 const std::vector<Point> & qp,
101 std::vector<std::vector<OutputShape>> & d2phidx2,
102 std::vector<std::vector<OutputShape>> & d2phidxdy,
103 std::vector<std::vector<OutputShape>> & d2phidxdz,
104 std::vector<std::vector<OutputShape>> & d2phidy2,
105 std::vector<std::vector<OutputShape>> & d2phidydz,
106 std::vector<std::vector<OutputShape>> & d2phidz2)
const = 0;
107 #endif //LIBMESH_ENABLE_SECOND_DERIVATIVES
115 const Elem *
const elem,
116 const std::vector<Point> & qp,
118 std::vector<std::vector<OutputShape>> & curl_phi)
const = 0;
125 const Elem *
const elem,
126 const std::vector<Point> & qp,
134 #endif // LIBMESH_FE_TRANSFORMATION_BASE_H
The libMesh namespace provides an interface to certain functionality in the library.
This class forms the foundation from which generic finite elements may be derived.
This class defines a vector in LIBMESH_DIM dimensional Real or Complex space.
TensorTools::DecrementRank< OutputShape >::type OutputDivergence
class FEType hides (possibly multiple) FEFamily and approximation orders, thereby enabling specialize...
This is the base class from which all geometric element types are derived.