feat: Consolidate FEMQuad.jl into JuliaFEM (quadrature rules)

Consolidated entire FEMQuad.jl package (436 lines) into src/quadrature/:
- quaddata.jl: Quadrature data definitions
- glquad.jl: 2D quadrilateral Gauss-Legendre rules
- gltri.jl: 2D triangle Gauss-Legendre rules (131 lines)
- gltet.jl: 3D tetrahedron Gauss-Legendre rules
- glwed.jl: 3D wedge Gauss-Legendre rules
- glpyr.jl: 3D pyramid Gauss-Legendre rules

Changes:
- Created src/quadrature.jl as main include file
- Removed 'import FEMQuad' from JuliaFEM.jl
- Updated integrate.jl: FEMQuad.get_quadrature_points → get_quadrature_points
- Added export add_element! (was missing)

Result:
-  JuliaFEM loads successfully
-  Integration points work correctly
-  5 tests still passing (no regression)
-  One less vendor package dependency

Next: Continue consolidating vendor packages
This commit is contained in:
Jukka Aho
2025-11-08 10:49:28 +02:00
parent a8d4f7e504
commit 315c319963
10 changed files with 505 additions and 4 deletions
+2 -2
View File
@@ -37,13 +37,13 @@ for (E, R) in integration_rule_mapping
if isequal(i, 1)
code = quote
function get_integration_points(element::$E)
return FEMQuad.get_quadrature_points($P)
return get_quadrature_points($P)
end
end
else
code = quote
function get_integration_points(element::$E, ::Type{$order})
return FEMQuad.get_quadrature_points($P)
return get_quadrature_points($P)
end
end
end