Skip to content

Create a core interface method to facilitate computed dimensions#1426

Open
islas wants to merge 1 commit intoMPAS-Dev:developfrom
islas:computed_dims
Open

Create a core interface method to facilitate computed dimensions#1426
islas wants to merge 1 commit intoMPAS-Dev:developfrom
islas:computed_dims

Conversation

@islas
Copy link
Contributor

@islas islas commented Mar 24, 2026

Currently there is no way of defining a dimension that is derived from preexisting values already present in input data. Various calls in the registry generated code require that state variables that would need a runtime-defined dimension exist prior to their usage and thus prior to the end of the bootstrapping sequence.

As such, it is not feasible to have a core-only implementation of injecting a runtime computed dimension at the appropriate time of setup.

This adds a methodology for cores to provide core-specific computed dimensions implementations by adding:

  1. an interface subroutine to the core type
  2. a computed dimensions interface types and module
  3. invocation of new optional core interface function in bootstrapping

The computed dimensions interface types and modules are based off of the same pattern used for decomposed dimensions.

Currently there is no way of defining a dimension that is derived from
preexisting values already present in input data. Various calls in the
registry generated code require that state variables that would need
a runtime-defined dimension exist prior to their usage and thus prior
to the end of the bootstrapping sequence.

As such, it is not feasible to have a core-only implementation of
injecting a runtime computed dimension at the appropriate time of setup.

This adds a methodology for cores to provide core-specific computed
dimensions implementations by adding:
1. an interface subroutine to the core type
2. a computed dimensions interface types and module
3. invocation of new optional core interface function in bootstrapping

The computed dimensions interface types and modules are based off of the
same pattern used for decomposed dimensions.
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