-
Notifications
You must be signed in to change notification settings - Fork 58
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
Initial Conditions Reconciliation #1: Detect Mismatches #1069
Conversation
* add place holders * add requires_reconciliation trait * afc/created test for ic * afc/added functions on PSI for ic reconciliation * afc/fixed rounding, tested Still getting the same error as before on T=7 * add place holders * add requires_reconciliation trait * afc/created test for ic * afc/added functions on PSI for ic reconciliation * afc/fixed rounding, tested Still getting the same error as before on T=7 * add place holders * add requires_reconciliation trait * afc/created test for ic * afc/added functions on PSI for ic reconciliation * afc/fixed rounding, tested Still getting the same error as before on T=7 * add place holders * afc/created test for ic * afc/added functions on PSI for ic reconciliation * afc/fixed rounding, tested Still getting the same error as before on T=7 * formatter --------- Co-authored-by: alefcastelli <[email protected]>
Co-authored-by: lpstreitmatter <[email protected]>
@GabrielKS I changed the base to go to PSY4 |
@jd-lara marking this as ready for review now — how does the current set of |
@GabrielKS can you fix the conflicts please |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good but there are some situations that require attention.
Now passes PowerSimulations tests with `psy4`.
Fixed the merge conflicts, made the tests pass in |
Here we implement the logic to automatically detect mismatches between initial conditions that
requires_reconciliation
. Some notes about the implementation:requires_reconciliation
figures in: first we make the set of allICKey
s to check, then as we are looping over them to check them we skip those whoseT::InitialConditionType
hasrequires_reconciliation(T) == false
, so keys that don't require reconciliation never get compared across models even if other keys do require reconciliation. At one point we discussed comparing all the keys if at least onerequires_reconciliation
; this is not that. This behavior (coupled with erring on the side ofrequires_reconciliation(T) == true
) makes the most sense to me — if a key is at all relevant during this process we should just mark it as requiring reconciliation — but that should be reviewed.requires_reconciliation
methods before this draft PR becomes ready for review, I'd love to get @lpstreitmatter and José David's input on that.@info
for each mismatch, then if there are nonzero mismatches we report a@warn
noting that there is not yet logic to resolve the mismatch.