Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable specification of ModelLevelsVerticalGrid in ComponentSpecParser #2985

Open
tclune opened this issue Aug 22, 2024 · 0 comments
Open

Enable specification of ModelLevelsVerticalGrid in ComponentSpecParser #2985

tclune opened this issue Aug 22, 2024 · 0 comments
Assignees
Labels
📈 MAPL3 MAPL 3 Related 🎁 New Feature This is a new feature

Comments

@tclune
Copy link
Collaborator

tclune commented Aug 22, 2024

The challenge here is that a ModelLevelsVerticalGrid needs a pointer to the StateRegistry that owns the underlying variables that define the vertical coordinates (e.g., PLE).

One possibility is that the registry is passed into the parser, but that feels rather clunky. Last resort.

Another possibility is to do a 2-step initialization. During the parsing we create the object but leave the registry unset. We then have logic later (somewhere in OuterMetaComponent) that sees the vertical grid is ModelLevels and calls set_registry(). Also very clunky and a last resort.

Yet another possibility is to introduce a VerticalGridSpec and a VerticalGridManager analogous to the existing (horizontal) GridManager. The spec can then hold the things that are specified in yaml, but the actual creation of the VerticalGrid in the manager could add in the registry at that time. Lots of handwaving here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📈 MAPL3 MAPL 3 Related 🎁 New Feature This is a new feature
Projects
None yet
Development

No branches or pull requests

2 participants