Skip to content

Add boundary surface quadrature - #1275

Draft
svchb wants to merge 116 commits into
trixi-framework:mainfrom
svchb:rebuild/boundary-quadrature
Draft

Add boundary surface quadrature#1275
svchb wants to merge 116 commits into
trixi-framework:mainfrom
svchb:rebuild/boundary-quadrature

Conversation

@svchb

@svchb svchb commented Aug 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • rebuild the reusable boundary-quadrature setup layer from the Surface Tension Prototype V1  #1253 prototype on top of interface-aware TIC Add interface-aware tensile instability control #1274
  • add an optional per-particle surface_measure keyword to both BoundaryModelDummyParticles constructors
  • store a defensive copy in the boundary scalar type while leaving the default path allocation-free
  • validate vector shape, particle count, real finite nonnegative values, and finite representability after scalar conversion
  • preserve the quadrature cache through Adapt and document its physical-face/deeper-layer convention

Stack

Depends directly on #1274. #1274 depends on #1273, #1272, #1271, #1269, #1268, and #1252.

The generic surface_measure cache also appears inside sibling C-CSF boundary-geometry PR #1270 because that operator consumes boundary quadrature. This PR rebuilds the shared prerequisite on the current CSS/wetting chain; #1270 is not a dependency.

Fork branches cannot be selected as bases for pull requests into the upstream repository, so this PR targets main and temporarily shows the preceding commits.

Review-only diff: svchb/TrixiParticles.jlOpen@rebuild/interface-aware-tic...rebuild/boundary-quadrature

Scope

This is setup data only. It does not generate quadrature weights, define face coordinates or normals, require positive weights, modify density/pressure/viscosity/force calculations, add C-CSF boundary operators, or implement wetting/contact forces and reactions. Omitting surface_measure preserves the existing cache and runtime behavior.

Verification

  • dummy-particle tests: 90/90, including 14 surface-quadrature checks
  • wall-boundary system tests: 46/46
  • rigid-body system tests: 182/182
  • RHS conservation tests: 1197/1197
  • default no-allocation behavior, high-level forwarding, scalar conversion, defensive copying, Adapt preservation, zero weights, invalid values, wrong lengths, and conversion overflow passed
  • Aqua passed
  • documentation build and doctests passed
  • complete unit target: 23009 passed; only the established baseline set remained (1 failed, 3 errored)
  • JuliaFormatter 2.1.1 and git diff --check passed

svchb added 29 commits July 30, 2026 13:45
# Conflicts:
#	docs/src/development.md
#	docs/src/systems/boundary.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant