Skip to content

Own face_dof[_perm] stored by default in ReferenceFE s#1320

Merged
Antoinemarteau merged 1 commit into
moment-basedfrom
face_own_dof_refactor
Jun 24, 2026
Merged

Own face_dof[_perm] stored by default in ReferenceFE s#1320
Antoinemarteau merged 1 commit into
moment-basedfrom
face_own_dof_refactor

Conversation

@Antoinemarteau

Copy link
Copy Markdown
Collaborator

I refactored the get_face_own_dofs and get_face_own_dofs_permutations methods to accomodate the fact that both are now stored in GenericRefFE by default. So the new default method (to overlead) is the single reffe argument method, and the conf::L2Conformity fallbacks are generic.

Only two overloads for the 2 arg methods are needed now, for CDConformity on Lag reffes.

This is breaking for ReferenceFE we don't implement ourselves (only), so I don't push it into moment-based, but keep it for next breaking...

Note: I think it would also make sense to do the same with face_own_nodes and get_face_own_nodes_permutations of the LagrangianRefFE.

The default get_face_own_dofs(::ReferenceFE) and
get_face_own_dofs_permutations(::ReferenceFE) are now assumed to be
stored on whatever struct implements ReferenceFE. This means that the
previous methods are called at construction time of the reffe.

One general default for get_face_own_dofs[_permutations](reffe, ::L2Conformity)
is implemented.

Only LagrangianRefFEs for CDConformity need to overload the 2 args
methods now.

Although all test pass without modification of any test, this is
slightly breaking since
- existing ReferenceFE need to be updated to fill their face_own_dofs_permutations,
- ovearload for concrete ReferenceFE type but abstract ::conformity now
  trigger ambiguous method error due to the ::L2Conformity generic
  fallback, it needs to be overloaded on specific Conformity (like for
  CDConformity)
@codecov

codecov Bot commented Jun 24, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 86.79245% with 7 lines in your changes missing coverage. Please review.
✅ Project coverage is 80.75%. Comparing base (b1c2b14) to head (b581799).

Files with missing lines Patch % Lines
src/Adaptivity/MacroFEs.jl 0.00% 2 Missing ⚠️
src/ReferenceFEs/ReferenceFEInterfaces.jl 90.00% 2 Missing ⚠️
src/ReferenceFEs/CDLagrangianRefFEs.jl 92.30% 1 Missing ⚠️
src/ReferenceFEs/CLagrangianRefFEs.jl 90.00% 1 Missing ⚠️
src/ReferenceFEs/ModalC0RefFEs.jl 80.00% 1 Missing ⚠️
Additional details and impacted files
@@               Coverage Diff                @@
##           moment-based    #1320      +/-   ##
================================================
+ Coverage         80.69%   80.75%   +0.05%     
================================================
  Files               228      228              
  Lines             30255    30241      -14     
================================================
+ Hits              24414    24420       +6     
+ Misses             5841     5821      -20     
Flag Coverage Δ
drivers 39.41% <49.05%> (+0.06%) ⬆️
extensions 4.81% <0.00%> (-0.01%) ⬇️
unit-basics 14.53% <15.09%> (+0.29%) ⬆️
unit-celldata 20.68% <43.39%> (+0.03%) ⬆️
unit-fespaces-1 32.85% <49.05%> (+0.05%) ⬆️
unit-fespaces-2 39.20% <77.35%> (+0.11%) ⬆️
unit-fields 17.60% <15.09%> (+0.29%) ⬆️
unit-geometry 28.46% <28.30%> (+0.29%) ⬆️
unit-multifield 30.26% <47.16%> (+0.05%) ⬆️
unit-odes 28.16% <43.39%> (+0.03%) ⬆️
unit-referencefes 33.98% <86.79%> (+0.03%) ⬆️
unit-visualization 11.83% <24.52%> (+0.32%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Antoinemarteau Antoinemarteau merged commit b581799 into moment-based Jun 24, 2026
54 of 57 checks passed
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