Is there a way to use the high order spaces in ngsolve? For example, is it possible to use Legendre polynomials on quads and hexahedra? There seems to be a C++ implementation here but I am not sure how this can be extended to be used in python scripts.
Hi, high order spaces are the default in ngsolve. Just create them with the order flag:
fes = H1(mesh, order=5)
The tutorial you found is how you would implement your own finite element spaces.
Best is to walk threw the i-tutorial as a start and to get a good overview.