Skip to content

Update Bracket aspect ordering to include new normalization aspects (issue #4482)#4485

Open
tclune wants to merge 2 commits intointegration/conservative-regriddingfrom
feature/issue-4482-update-bracket-aspect-order
Open

Update Bracket aspect ordering to include new normalization aspects (issue #4482)#4485
tclune wants to merge 2 commits intointegration/conservative-regriddingfrom
feature/issue-4482-update-bracket-aspect-order

Conversation

@tclune
Copy link
Collaborator

@tclune tclune commented Mar 4, 2026

Summary

Adds the three new aspects (QuantityType, Normalization, InverseNormalization) to the aspect ordering in BracketClassAspect and VectorBracketClassAspect to match FieldClassAspect and FieldBundleClassAspect.

These aspects were added in PR #4480 (Task 2.7: Update Aspect Ordering for Normalization) but Bracket classes were inadvertently omitted from that update.

Changes

  • BracketClassAspect::get_aspect_order() now returns complete aspect list matching Field/FieldBundle
  • VectorBracketClassAspect::get_aspect_order() now returns complete aspect list matching Field/FieldBundle
  • Removed time-dependent conditional logic (simplified to match Field/FieldBundle pattern)

Why This Matters

The get_aspect_order() method determines the ORDER in which couplers/transforms are applied during state item connections. Having an incomplete aspect ordering in Bracket classes could cause:

  • Incorrect transform ordering when conservative regridding is applied to bracket fields
  • Silent failures when normalization is expected but not applied in the correct order
  • Inconsistent behavior between regular fields and bracket fields

Testing

  • Build succeeded with NAG compiler
  • MAPL.generic3g.tests: All tests passed (100%)

Related

Fixes #4482

Adds the three new aspects (QuantityType, Normalization, InverseNormalization)
to the aspect ordering in BracketClassAspect and VectorBracketClassAspect to
match FieldClassAspect and FieldBundleClassAspect.

These aspects were added in PR #4480 (Task 2.7) but Bracket classes were
inadvertently omitted. This ensures consistent aspect ordering across all
ClassAspect implementations for conservative regridding support.

Changes:
- BracketClassAspect::get_aspect_order() now returns complete aspect list
- VectorBracketClassAspect::get_aspect_order() now returns complete aspect list
- Removed time-dependent conditional logic (simplified to match Field/FieldBundle)

Fixes #4482
@tclune tclune requested a review from a team as a code owner March 4, 2026 20:51
@tclune tclune added 📈 MAPL3 MAPL 3 Related Changelog Skip Skips the Changelog Enforcer 0 Diff The changes in this pull request have verified to be zero-diff with the target branch. labels Mar 4, 2026
Add QuantityTypeAspect and NormalizationAspect to BracketClassAspect
and VectorBracketClassAspect get_aspect_order() methods to align with
FieldClassAspect and FieldBundleClassAspect.

These aspects come before GEOM_ASPECT_ID in the ordering. The conditional
logic for time-dependent geometries is preserved, with CLASS/GEOM order
swapping based on whether time interpolation is needed.

Fixes #4482
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

0 Diff The changes in this pull request have verified to be zero-diff with the target branch. Changelog Skip Skips the Changelog Enforcer 📈 MAPL3 MAPL 3 Related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant