* Return a list of constant modes of the element. For this element, the
* list consists of true arguments for all components.
*/
- std::pair<Table<2, bool>, std::vector<unsigned int>>
+ virtual std::pair<Table<2, bool>, std::vector<unsigned int>>
get_constant_modes() const override;
/**
*
* @note Only implemented for RefinementCase::isotropic_refinement.
*/
- const FullMatrix<double> &
+ virtual const FullMatrix<double> &
get_prolongation_matrix(
const unsigned int child,
const RefinementCase<dim> &refinement_case =
RefinementCase<dim>::isotropic_refinement) const override;
- private:
/**
* @copydoc dealii::FiniteElement::convert_generalized_support_point_values_to_dof_values()
*/
- void
+ virtual void
convert_generalized_support_point_values_to_dof_values(
const std::vector<Vector<double>> &support_point_values,
std::vector<double> & nodal_values) const override;
}
else if (reference_cell == Type::Tri)
{
- static const std::vector<Point<spacedim>> vertices = {
- {{0.0, 0.0}, {1.0, 0.0}, {0.0, 1.0}}};
+ std::vector<Point<spacedim>> vertices;
+ if (spacedim == 2)
+ {
+ vertices.emplace_back(0.0, 0.0);
+ vertices.emplace_back(1.0, 0.0);
+ vertices.emplace_back(0.0, 1.0);
+ }
+ else if (spacedim == 3)
+ {
+ vertices.emplace_back(0.0, 0.0, 0.0);
+ vertices.emplace_back(1.0, 0.0, 0.0);
+ vertices.emplace_back(0.0, 1.0, 0.0);
+ }
std::vector<CellData<dim>> cells(1);
cells[0].vertices = {0, 1, 2};
DEAL:2d-3::0.00000 0.887298 0.277778
DEAL:2d-3::
DEAL:3d-1::face_no=0 face_orientation=true face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=0 face_orientation=true face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=0 face_orientation=true face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=0 face_orientation=false face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=0 face_orientation=false face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=0 face_orientation=false face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.333333 0.00000 1.00000
+DEAL:3d-1::0.333333 0.333333 0.00000 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=true face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=true face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=true face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=false face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=false face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=1 face_orientation=false face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.00000 0.333333 1.00000
+DEAL:3d-1::0.333333 0.00000 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=true face_flip=false face_rotation=false:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=true face_flip=true face_rotation=false:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=true face_flip=false face_rotation=true:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=false face_flip=false face_rotation=false:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=false face_flip=true face_rotation=false:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=2 face_orientation=false face_flip=false face_rotation=true:
-DEAL:3d-1::0.00000 0.333333 0.333333 1.00000
+DEAL:3d-1::0.00000 0.333333 0.333333 0.500000
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=true face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=true face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=true face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=false face_flip=false face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=false face_flip=true face_rotation=false:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-1::face_no=3 face_orientation=false face_flip=false face_rotation=true:
-DEAL:3d-1::0.333333 0.333333 0.333333 1.73205
+DEAL:3d-1::0.333333 0.333333 0.333333 0.866025
DEAL:3d-1::
DEAL:3d-4::face_no=0 face_orientation=true face_flip=false face_rotation=false:
DEAL:3d-4::0.666667 0.166667 0.00000 0.166667