feat(basis): Enable Lagrange{T,P} basis functions in main module

- Uncommented include for lagrange_generated.jl
- Added exports: AbstractBasis, Lagrange, Serendipity
- Updated comments to reflect new parametric architecture

Package now loads successfully with new basis system.
All 15 element types available:
  Lagrange{Segment, 1}, Lagrange{Segment, 2}
  Lagrange{Triangle, 1}, Lagrange{Triangle, 2}
  Lagrange{Quadrilateral, 1}, Lagrange{Quadrilateral, 2} (×2 variants)
  Lagrange{Tetrahedron, 1}, Lagrange{Tetrahedron, 2}
  Lagrange{Hexahedron, 1}, Lagrange{Hexahedron, 2} (×2 variants)
  Lagrange{Pyramid, 1}
  Lagrange{Wedge, 1}, Lagrange{Wedge, 2}
This commit is contained in:
Jukka Aho
2025-11-09 17:30:37 +02:00
parent 4f8f85c895
commit 41b8a4c98c
+6 -5
View File
@@ -205,12 +205,13 @@ include("basis/subs.jl") # Symbolic substitution (includes minimal simplify fro
include("basis/vandermonde.jl")
# Lagrange basis functions - auto-generated file contains all basis types
# Types have "Basis" suffix to avoid conflicts with topology types
# E.g., Tri3Basis, Quad4Basis, etc. (not Tri3, Quad4 which are topology types)
# Now generates methods for parametric Lagrange{T,P} type instead of separate types
include("basis/lagrange_generator.jl")
# OLD generated basis files - commented out during refactoring to new Lagrange{T,P} design
# include("basis/lagrange_generated.jl") # Auto-generated by scripts/generate_lagrange_basis.jl
# TODO: Regenerate for new parametric Lagrange{T,P} architecture
include("basis/lagrange_generated.jl") # Auto-generated by: julia --project=. src/basis/lagrange_generator.jl
# Export basis types and functions
export AbstractBasis, Lagrange, Serendipity
export nnodes, get_reference_element_coordinates, eval_basis!, eval_dbasis!
include("basis/nurbs.jl")
# OLD NURBS basis files - commented out during AbstractBasis refactoring