Skip to content

Add higher-order CommonPlane quadrature rows - #249

Draft
ebchin wants to merge 7 commits into
feature/ebchin/common-plane-lor-geometryfrom
feature/ebchin/common-plane-higher-order-quadrature
Draft

ebchin wants to merge 7 commits into
feature/ebchin/common-plane-lor-geometryfrom
feature/ebchin/common-plane-higher-order-quadrature

Conversation

@ebchin

@ebchin ebchin commented Sep 23, 2026 •

Copy link
Copy Markdown
Member

Context

This PR builds on #248. The first PR preserves each redecomposed face's map to its native parent face; this PR uses that map to evaluate higher-order geometry and fields at CommonPlane integration points without treating the LOR finite-element space as the source of the physical solution.

Summary

  • Add configurable single-point, multipoint, and order-aware automatic integration for CommonPlane overlaps.
  • Build reusable device-resident CommonPlane quadrature rows from accepted LOR overlap geometry.
  • Map each row to both native parent faces for position, velocity, and basis evaluation, then scatter explicit penalty forces directly to native parent degrees of freedom without LOR field transfer.
  • Refresh native parent coordinate, velocity, inverse-mass, and response data only for CommonPlane schemes.
  • Keep connectivity in the requested execution memory space while using explicit host mirrors of element maps for MFEM's host-only record and response transfers.
  • Use the same row data for explicit force evaluation and preserve existing low-order CommonPlane behavior where its original integration is exact.

Validation

  • Built all affected targets in the release configuration with warnings treated as errors.
  • Passed tribol_common_plane_penalty, tribol_enforcement_options, and tribol_iso_integ.
  • Passed the full two-rank tribol_mfem_common_plane_2rank and tribol_mfem_mortar_lm_2rank regressions.
  • Coverage includes polynomial exactness, 2D and 3D multipoint integration, localized warped-face contact, native parent-field evaluation, direct parent response scatter, all supported face mapping types, no-LOR identity mapping, and LOR factors two and three.
  • Passed clang-format-19 --dry-run --Werror and git diff --check.

Stack

…ebchin/common-plane-higher-order-quadrature

# Conflicts:
#	src/tribol/mesh/MeshData.hpp
#	src/tribol/mesh/MfemData.cpp
…ebchin/common-plane-higher-order-quadrature

# Conflicts:
#	src/tests/tribol_mfem_common_plane.cpp
#	src/tribol/mesh/MeshData.hpp
#	src/tribol/mesh/MfemData.cpp
…ebchin/common-plane-higher-order-quadrature

# Conflicts:
#	src/tests/tribol_mfem_common_plane.cpp
#	src/tribol/mesh/MfemData.cpp
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