diff --git a/dune/functions/functionspacebases/pq1nodalbasis.hh b/dune/functions/functionspacebases/pq1nodalbasis.hh index 3949ad726293fdc0211a21d6dbccc35831c3da21..b05f0de7ec37ee6fc753eeaea0df65f175ed84d4 100644 --- a/dune/functions/functionspacebases/pq1nodalbasis.hh +++ b/dune/functions/functionspacebases/pq1nodalbasis.hh @@ -285,6 +285,43 @@ protected: +namespace BasisBuilder { + +namespace Imp { + +class PQ1PreBasisFactory +{ +public: + static const std::size_t requiredMultiIndexSize = 1; + + template<class MultiIndex, class GridView> + auto makePreBasis(const GridView& gridView) const + { + return PQ1PreBasis<GridView, MultiIndex>(gridView); + } + +}; + +} // end namespace BasisBuilder::Imp + + + +/** + * \brief Create a pre-basis factory that can create a PQ_1 pre-basis + * + * \ingroup FunctionSpaceBasesImplementations + * + * \tparam k The polynomial order of ansatz functions + */ +auto pq1Nodal() +{ + return Imp::PQ1PreBasisFactory(); +} + +} // end namespace BasisBuilder + + + /** \brief Nodal basis of a scalar first-order Lagrangian finite element space * * \ingroup FunctionSpaceBasesImplementations