mirror of
https://github.com/JuliaFEM/JuliaFEM.jl.git
synced 2026-09-17 01:02:13 +00:00
3b13a77981
- Implements BOTH assembly methods for direct comparison on same problem - Traditional element assembly: builds 12×12 K_e matrices, scatters to global K - Nodal assembly: computes 3×3 K_ij blocks directly, accumulates per node - Test problem: linear elasticity on simple Tet4 mesh - TestLinearElastic material with Lamé parameters (λ, μ from E, ν) - B-matrix computation: strain-displacement operator (6×3 per node, Voigt notation) - Element stiffness: K_e = ∫ B^T C B dV with Gauss integration - Nodal contribution: spider pattern with 3×3 blocks for coupled nodes - Matrix-vector product comparison: K*v computed both ways - Validates numerical equivalence: ‖K_element - K_nodal‖ < tol - Performance characteristics: element (matrix scatter) vs nodal (direct blocks) - Architectural differences demonstration: gather-scatter vs direct accumulation - 542 lines validating nodal assembly correctness and comparing approaches