-
Notifications
You must be signed in to change notification settings - Fork 25
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
Generalize saved_state API #49
Comments
|
@klindsay28 discussed this earlier today, and an interesting conundrum came up. The purpose of saved state is to provide a placeholder for variables that need to be held from one time step to the next, whether from While talking about |
Also, I was going to look and see if |
It looks like ph_3d an ph_surf use different initial bounding intervals for the carbonate solver (e.g. phlo_surf_init is different from phlo_3d_init). So I would not expect ph_3d and ph_surf to identical in model output (or restart files). But I think it would OK to unify them. Note that I'm not saying we should, only that this current difference is not imperative. |
Fixed with #64 |
Right now,
marbl_saved_state_type
looks likeWe need to generalize this in a way similar to what we have done with the diagnostics - remove the hard-coded field names in favor of something where we can easily add new variables that need to be saved from time step to time step when needed. This lets the driver allocate memory at runtime for the saved state variables, which has two main benefits:
* Note that this has one drawback: the GCM will write a generic "saved_state" field to restart files, so we may want to include a way for MARBL to verify that the indexing has not changed from one run to the next.
The text was updated successfully, but these errors were encountered: