66 unsigned int comp_index = 0
69 const arma::vec basis_grad(
unsigned int basis_index,
71 unsigned int comp_index = 0
74 unsigned int dim()
const override {
return dim_; }
100 template <
unsigned int dim>
132 {
return scalar_components_; }
135 {
return vector_components_; }
138 {
return tensor_components_; }
159 void compute_node_matrix()
override;
170 template<
class... Args>
174 std::make_shared<FESystem<0>>(fe.
get<0>(), std::forward<Args>(args)...),
175 std::make_shared<FESystem<1>>(fe.
get<1>(), std::forward<Args>(args)...),
176 std::make_shared<FESystem<2>>(fe.
get<2>(), std::forward<Args>(args)...),
177 std::make_shared<FESystem<3>>(fe.
get<3>(), std::forward<Args>(args)...)
UpdateFlags
Enum type UpdateFlags indicates which quantities are to be recomputed on each finite element cell...
std::vector< unsigned int > get_tensor_components() const
unsigned int component_offset
Component index in the FESystem.
std::vector< DofComponentData > dof_indices_
Indices of basis functions relative to the sub-spaces.
virtual ~FESystemFunctionSpace()
DofComponentData(unsigned int fei, unsigned int bi, unsigned co)
const std::vector< std::shared_ptr< FiniteElement< dim > > > & fe() const
unsigned int dim_
Number of basis functions.
std::vector< unsigned int > vector_components_
unsigned int dim() const override
Dimension of function space (number of basis functions).
Class FEValues calculates finite element data on the actual cells such as shape function values...
std::vector< unsigned int > get_scalar_components() const
std::vector< std::shared_ptr< FiniteElement< dim > > > fe_
Pointers to base FE objects.
std::vector< unsigned int > get_vector_components() const
Compound finite element on dim dimensional simplex.
unsigned int basis_index
Index of basis function in the base FE.
unsigned int fe_index
Index of base FE class in the vector fe_.
const std::vector< DofComponentData > & dof_indices()
MixedPtr< FESystem > mixed_fe_system(MixedPtr< FiniteElement > fe, Args &&...args)
Abstract class for description of finite elements.
Abstract class for the description of a general finite element on a reference simplex in dim dimensio...
std::vector< unsigned int > tensor_components_
std::vector< unsigned int > scalar_components_
std::shared_ptr< T< i_dim > > get()