bbakernoaa / bbakernoaa/HELM-Project

AXIS: return an identity/no-weight plan for identical source and target meshes

Open
#29 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2
Forks
3
Avg merge
1d 2h
Merged PRs (30d)
1

Description

## Context

Requested from the [CECE PR #85 review](https://github.com/ufs-community/CECE/pull/85#discussion_r3847338439). Linked CECE tracking issue: https://github.com/ufs-community/CECE/issues/103

CECE currently maintains its own identical-grid check and no-weight copy path. Add an AXIS-supported identity path when source and target meshes are equivalent so clients can avoid constructing interpolation weights or maintaining duplicate mesh-equivalence logic.

## Proposed outcome

AXIS recognizes equivalent source and target meshes and returns an explicit identity/no-weight plan or equivalent status that clients can apply as an exact copy.

## Acceptance criteria

- Define mesh equivalence using dimensions/topology, ordered coordinates, longitude convention, and a documented numerical tolerance.
- Return an explicit identity/no-weight plan or equivalent status.
- Apply the identity plan as an exact copy while preserving nonspatial layers.
- Reject same-size meshes with reordered or mismatched coordinates when identity is required.
- Document behavior when meshes are not identical and ordinary interpolation is requested.
- Document the client-facing API and expected MPI/domain-decomposition behavior.
- Add focused tests for equivalent, reordered, and mismatched meshes.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing AXIS's mesh and interpolation interfaces, using the CECE PR #85 review and tracking issue as context. Define and document the equivalence and identity-plan behavior from the acceptance criteria, then add focused tests for equivalent, reordered, and mismatched meshes, including exact-copy, nonspatial-layer, and MPI/domain-decomposition behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.