Regarding structure of L2 basis functions

I am currently using ngsolve for my DG solver. For certain post-processing, I am looking for the structure of basis functions of order p on elements in terms of monomials i.e.

(Basis_function) = \sum( coeff * x^m y^n) where m+n <= p.

where Basis_function represents one of the basis functions for order p, coeff represents the coefficient of monomial x^m y^n and \sum represents the summation over monomials.

Currently, I have basis functions and their derivative at the quadrature points. Since many commonly used basis functions such as Legendre polynomials are generated via recursion and thus, gives us the possibility to look into their structure. I wonder that if a similar approach can be taken with ngsolve?

Hi alex_sch,

for the triangular L2 shape functions (see L2HighOrderFE_Shape<ET_TRIG>::T_CalcShape, line ~385 in fem/l2hofe_impl.hpp) NGSolve uses a Dubiner basis (class DubinerBasis in fem/recursive_pol.hpp line ~2584). The evaluation is done via a recursion involving Legendre and Jacobi polynomials.