block_indices);
}
+
+
template <int dim, int spacedim>
FiniteElementData<dim>
multiply_dof_numbers (const FiniteElement<dim,spacedim> *fe1,
return multiply_dof_numbers(fes, mult);
}
+
+
template <int dim, int spacedim>
std::vector<bool>
compute_restriction_is_additive_flags (const std::vector<const FiniteElement<dim,spacedim>*> &fes,
}
+
/**
* Compute the non-zero vector components of a composed finite element.
*/
do_tensor_product);
}
+
+
template <int dim, int spacedim>
void
build_cell_tables(std::vector< std::pair< std::pair< unsigned int, unsigned int >, unsigned int > > &system_to_base_table,
}
}
+
+
template <int dim, int spacedim>
void
build_face_tables(std::vector< std::pair< std::pair< unsigned int, unsigned int >, unsigned int > > &face_system_to_base_table,
}
+
// Not implemented in the general case.
template <class FE>
FiniteElement<FE::dimension, FE::space_dimension> *
{
return new FE_Q<1>(quad);
}
+
template <>
FiniteElement<2, 2> *
FEFactory<FE_Q<2, 2> >::get (const Quadrature<1> &quad) const
{
return new FE_Q<2>(quad);
}
+
template <>
FiniteElement<3, 3> *
FEFactory<FE_Q<3, 3> >::get (const Quadrature<1> &quad) const
{
return new FE_Q_DG0<1>(quad);
}
+
template <>
FiniteElement<2, 2> *
FEFactory<FE_Q_DG0<2, 2> >::get (const Quadrature<1> &quad) const
{
return new FE_Q_DG0<2>(quad);
}
+
template <>
FiniteElement<3, 3> *
FEFactory<FE_Q_DG0<3, 3> >::get (const Quadrature<1> &quad) const
{
return new FE_Q_Bubbles<1>(quad);
}
+
template <>
FiniteElement<2, 2> *
FEFactory<FE_Q_Bubbles<2, 2> >::get (const Quadrature<1> &quad) const
{
return new FE_Q_Bubbles<2>(quad);
}
+
template <>
FiniteElement<3, 3> *
FEFactory<FE_Q_Bubbles<3, 3> >::get (const Quadrature<1> &quad) const
return new FE_Q_Bubbles<3>(quad);
}
-
// Specializations for FE_DGQArbitraryNodes.
template <>
FiniteElement<1, 1> *
{
return new FE_DGQArbitraryNodes<1>(quad);
}
+
template <>
FiniteElement<1, 2> *
FEFactory<FE_DGQ<1, 2> >::get (const Quadrature<1> &quad) const
{
return new FE_DGQArbitraryNodes<1, 2>(quad);
}
+
template <>
FiniteElement<1, 3> *
FEFactory<FE_DGQ<1, 3> >::get (const Quadrature<1> &quad) const
{
return new FE_DGQArbitraryNodes<1, 3>(quad);
}
+
template <>
FiniteElement<2, 2> *
FEFactory<FE_DGQ<2> >::get (const Quadrature<1> &quad) const
{
return new FE_DGQArbitraryNodes<2>(quad);
}
+
template <>
FiniteElement<2, 3> *
FEFactory<FE_DGQ<2, 3> >::get (const Quadrature<1> &quad) const
= FEFactoryPointer(new FETools::FEFactory<FE_RannacherTurek<dim> >);
}
+
+
// This function fills a map from names to finite elements for any
// dimension and codimension for those elements which support
// nonzero codimension.
}
+
template <int dim, typename number, int spacedim>
inline
void gim_forwarder (const FiniteElement<dim,spacedim> &fe1,
{}
+
template<int dim, int spacedim>
void compute_component_wise(
const FiniteElement<dim,spacedim> &element,
}
+
template<int dim, int spacedim>
void
compute_node_matrix(
}
+
template<int dim, typename number, int spacedim>
void
compute_embedding_matrices_for_refinement_case (
}
+
template <int dim, typename number, int spacedim>
void
compute_embedding_matrices(const FiniteElement<dim,spacedim> &fe,
}
+
template <int dim>
FiniteElement<dim> *
get_fe_by_name (const std::string ¶meter_name)
}
+
template <int dim, int spacedim>
void
return (h2l);
}
+
+
template <int dim>
void
lexicographic_to_hierarchic_numbering (const FiniteElementData<dim> &fe,