16 #ifndef dealii_fe_trace_h 17 #define dealii_fe_trace_h 19 #include <deal.II/base/config.h> 21 #include <deal.II/base/tensor_product_polynomials.h> 23 #include <deal.II/fe/fe_face.h> 24 #include <deal.II/fe/fe_poly_face.h> 25 #include <deal.II/fe/fe_q.h> 27 DEAL_II_NAMESPACE_OPEN
45 template <
int dim,
int spacedim = dim>
47 :
public FE_PolyFace<TensorProductPolynomials<dim - 1>, dim, spacedim>
65 virtual std::unique_ptr<FiniteElement<dim, spacedim>>
66 clone()
const override;
78 std::vector<double> & nodal_values)
const override;
86 const unsigned int face_index)
const override;
92 virtual std::pair<Table<2, bool>, std::vector<unsigned int>>
124 const unsigned int subface,
132 const unsigned int codim = 0)
const override final;
143 static std::vector<unsigned int>
152 template <
int spacedim>
169 DEAL_II_NAMESPACE_CLOSE
virtual std::pair< Table< 2, bool >, std::vector< unsigned int > > get_constant_modes() const override
virtual bool has_support_on_face(const unsigned int shape_index, const unsigned int face_index) const override
FE_TraceQ(unsigned int p)
virtual void get_face_interpolation_matrix(const FiniteElement< dim, spacedim > &source, FullMatrix< double > &matrix) const override
virtual FiniteElementDomination::Domination compare_for_domination(const FiniteElement< dim, spacedim > &fe_other, const unsigned int codim=0) const override final
FE_Q< dim, spacedim > fe_q
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
virtual bool hp_constraints_are_implemented() const override
virtual std::unique_ptr< FiniteElement< dim, spacedim > > clone() const override
static std::vector< unsigned int > get_dpo_vector(const unsigned int deg)
virtual std::string get_name() const override
virtual void get_subface_interpolation_matrix(const FiniteElement< dim, spacedim > &source, const unsigned int subface, FullMatrix< double > &matrix) const override