Commit Graph

2141 Commits

Author SHA1 Message Date
Jukka Aho 0f6924f62f test(continuum): reset tests use GlobalMaterialCache + geometry arity
Material-cache reset coverage should populate stresses through the global cache
API rather than the removed `create_material_state` helper.

- Mirror production signatures for `update_geometry_cache!` / `update_material_cache!`.
2026-05-09 18:45:48 +03:00
Jukka Aho 04dc1df09e test(continuum): thread GlobalMaterialCache through kernel integration check
Manual quadrature comparisons must refresh material data with the same global
state container production assembly uses, and geometry updates no longer take the
kernel object.

- Construct `global_cache` beside the per-IP material workspace.
- Pass `global_cache` into `update_material_cache!` and drop the kernel argument
  from `update_geometry_cache!`.
2026-05-09 18:45:46 +03:00
Jukka Aho 4d29e7816c test(continuum): follow assemble! signature without external material state
COO assembly now keeps persistent material history on the cache’s global store,
so tests should not fabricate a separate `state_old` argument.

- Call `assemble!(cache, assembler, kernel, mesh, u_global, Δt)` in correctness,
  allocation, and two-element coverage paths.
- Clarify comments about zero displacement vs nonzero `u_global`.
2026-05-09 18:45:37 +03:00
Jukka Aho e6a1767f99 test(continuum): align cache-update regression with GlobalMaterialCache API
The three-phase cache exerciser still referenced the retired per-call material
state bag and an older `update_geometry_cache!` arity. Fold everything onto the
shared global cache object and the slimmer geometry updater signature.

- Hoist `BenchmarkTools` to module scope for the `@benchmark` block.
- Drop the duplicate legacy `update_material_cache!` testset; keep the zero-alloc
  path driven by `GlobalMaterialCache`.
2026-05-09 18:45:32 +03:00
Jukka Aho e1d46340db test(continuum): drop unused create_material_state helper
Stateful initialization now flows through `GlobalMaterialCache` construction in
the individual tests, so the placeholder helper only duplicated errors.

- Remove `create_material_state` and its docstring from shared continuum helpers.
2026-05-09 18:45:02 +03:00
Jukka Aho 041e0d519d test(continuum): extend runner with mixed formulations and solves
Wire the continuum suite into the newer kernel families beyond baseline elasticity
assembly: branch coverage for material caching, a brick direct solve, and mixed
u–p / Stokes / HR / Hu–Washizu matvec + solver smoke paths.

- Add `test_material_cache_branches.jl` next to the existing cache-update group.
- Include mixed formulation kernels with companion solves or penalty matvec checks.
2026-05-09 18:44:57 +03:00
Jukka Aho f332fe9ad1 test(dofs): run multifield and facet-map integration suite
The DOF runner now exercises the type-stable handler path end-to-end (multi-field
templates, facet orientation maps, and higher-order hex facets) instead of the
retired field-unification stub.

- Replace `test_field_unification.jl` with global ranges, multifield wiring, and
  facet-map coverage across tet/wedge/pyramid/tet10/hex20 shapes.
- Drop the unused `Tensors` import and the old header docstring.
2026-05-09 18:44:49 +03:00
Jukka Aho b540c62334 test(basis): load JuliaFEM in type-stability regression
Inference-sensitive helpers belong behind the public module boundary so changes to
includes do not silently widen types in CI.

- Switch to `using JuliaFEM` after removing relative includes.
2026-05-09 18:44:05 +03:00
Jukka Aho f5ff185741 test(basis): load JuliaFEM in SVector return-shape checks
Static-array return paths depend on the same generated helpers as production code;
tests should import the package rather than cherry-picking sources.

- Drop manual topology/basis includes.
2026-05-09 18:43:57 +03:00
Jukka Aho 3dac8325e7 test(basis): load JuliaFEM in PoU regression
Partition-of-unity constraints must hold for the generated tables JuliaFEM ships,
not a parallel copy pulled via relative paths.

- Replace includes with `using JuliaFEM`.
2026-05-09 18:43:49 +03:00
Jukka Aho 469fe2ea4a test(basis): load JuliaFEM in numerical-accuracy suite
Numerical tolerances are meaningful only when they target the shipped basis
implementation and quadrature pairing.

- Import `JuliaFEM` instead of stitching topology files manually.
2026-05-09 18:43:43 +03:00
Jukka Aho f67ec02006 test(basis): load JuliaFEM in Kronecker-delta checks
Kronecker tests should exercise exported Lagrange evaluation helpers together with
topology types from the package root.

- Swap fragile src includes for `using JuliaFEM`.
2026-05-09 18:43:32 +03:00
Jukka Aho 9a3d7038ef test(basis): load JuliaFEM in interpolation regression
Interpolation tests should respect manifest exports and initialization order from
the main module.

- Remove duplicated topology/basis includes; import `JuliaFEM` instead.
2026-05-09 18:43:17 +03:00
Jukka Aho fb3056e513 test(basis): load JuliaFEM in gradient property checks
Ensure gradient identities run against the same API users import, not a bespoke
subset of source files.

- Replace relative includes with `using JuliaFEM`.
2026-05-09 18:43:14 +03:00
Jukka Aho 094e2a1dc5 test(basis): load JuliaFEM in derivative regression
Align derivative checks with the packaged basis/topology stack instead of
partially re-including `src/` fragments.

- Drop manual `include("../../src/...")` bootstrapping in favor of `using JuliaFEM`.
2026-05-09 18:43:13 +03:00
Jukka Aho 0bd4580c00 test(basis): load JuliaFEM in partition-of-unity sweep
Basis regression files used to `include` topology and generated basis sources
directly from `../../src`, which drifted from package exports and hid missing
wiring until CI.

- Replace the relative `include` chain with `using JuliaFEM` so tests hit the
  real module surface (`Lagrange{P}`, parametrized topologies, generated tables).
2026-05-09 18:43:04 +03:00
Jukka Aho 1e1a08d4db test(basis): extend runner for Piola and quadrature hooks
Import `JuliaFEM` in the topic runner and include new Piola/Nedelec,
integration-basis quadrature, and basis-description regressions.

- Reorder derivative/type-stability includes after adding coverage files.
2026-05-09 18:41:05 +03:00
Jukka Aho d6514f2195 test: drive suites via topic runners and ARGS filtering
Replace hand-inlined topic tests with `TOPICS` discovery, optional ARGS-based
filtering, and interface smoke checks required by the new mesh stack.

- SPDX-header the runner and assert `AbstractInterfaceMesh` / `InterfaceMesh` exist.
- `include(joinpath(topic, \"runtests.jl\"))` for every mirrored topic directory.
- Drop obsolete inline includes for retired paths; note legacy tests live outside CI.
2026-05-09 18:40:23 +03:00
Jukka Aho aec9383974 test(verification): add symbolic Tet4 stiffness script 2026-05-09 18:39:46 +03:00
Jukka Aho 9a126471cd test(verification): add symbolic Hex8 stiffness script 2026-05-09 18:39:46 +03:00
Jukka Aho bb03759b83 test(validation): add cantilever materials showcase 2026-05-09 18:39:46 +03:00
Jukka Aho d340d426ac test(validation): add validation topic runner 2026-05-09 18:39:46 +03:00
Jukka Aho f03587b2e1 test(topology): add triangle reference coordinate checks 2026-05-09 18:39:46 +03:00
Jukka Aho 2b92f5464b test(topology): add topology topic runner 2026-05-09 18:39:45 +03:00
Jukka Aho 2c4b50c592 test(sparse): add SparseMatrixCOO regression 2026-05-09 18:39:43 +03:00
Jukka Aho b7b74e79dd test(sparse): add sparse scratch topic runner 2026-05-09 18:39:42 +03:00
Jukka Aho dd12336f7e test(reference): add analytical heat equation checks 2026-05-09 18:39:42 +03:00
Jukka Aho 384d978d15 test(reference): add analytical elasticity checks 2026-05-09 18:39:42 +03:00
Jukka Aho fef4b7ab0b test(reference): add analytical reference runner 2026-05-09 18:39:42 +03:00
Jukka Aho 99201ee20a test(quadrature): add quadrature rule consistency tests 2026-05-09 18:39:25 +03:00
Jukka Aho d923fe3fd4 test(mpi): add partitioned matvec smoke harness 2026-05-09 18:39:25 +03:00
Jukka Aho 94b66a8b25 test(mpi): add partitioned matvec CG smoke test 2026-05-09 18:39:25 +03:00
Jukka Aho 9b275e9ca2 test(mesh): add Mesh API regression 2026-05-09 18:39:25 +03:00
Jukka Aho ace8bfe1bd test(mesh): add mesh topic runner 2026-05-09 18:39:25 +03:00
Jukka Aho 08248d393c test(materials): add orthotropic elasticity regression 2026-05-09 18:39:17 +03:00
Jukka Aho 33efbe2714 test(materials): add J2 plasticity regression 2026-05-09 18:39:17 +03:00
Jukka Aho 91ea4863ae test(materials): add material field trait tests 2026-05-09 18:39:17 +03:00
Jukka Aho 9a301daa85 test(materials): add advanced material law regressions 2026-05-09 18:39:17 +03:00
Jukka Aho 742e82c8f4 test(materials): add materials topic runner 2026-05-09 18:39:16 +03:00
Jukka Aho 5c1db20aac docs(test/materials): document materials test layout 2026-05-09 18:39:16 +03:00
Jukka Aho 9f76c432c6 test(io): add Gmsh ASCII reader regression 2026-05-09 18:38:59 +03:00
Jukka Aho a5d2b411d3 test(io): add IO topic runner 2026-05-09 18:38:59 +03:00
Jukka Aho f49a83d635 test(interface): add volume/interface coupling smoke tests 2026-05-09 18:38:59 +03:00
Jukka Aho 8aaac9ba28 test(interface): add InterfaceMesh construction tests 2026-05-09 18:38:59 +03:00
Jukka Aho 8168430c68 test(interface): add interface topic runner 2026-05-09 18:38:58 +03:00
Jukka Aho 2573f2382f test(geometry): add geometry topic runner 2026-05-09 18:38:50 +03:00
Jukka Aho 3550ce0941 test(fields): add AbstractField API tests 2026-05-09 18:38:50 +03:00
Jukka Aho acb1ced630 test(fields): add DOFSet field spec tests 2026-05-09 18:38:50 +03:00
Jukka Aho 96ae023f99 test(fields): add fields topic runner 2026-05-09 18:38:50 +03:00
Jukka Aho 30b85ba7d6 test(elements): add interpolate_field_value regression 2026-05-09 18:38:50 +03:00