-
Notifications
You must be signed in to change notification settings - Fork 44
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
Problem Formulation Conventions #61
Comments
I think this is a good idea if we will be relying more heavily on matrix formulations in constraints, which I strayed away from early on due to their inability to be used in |
I am also in favour of a shared problem definition! I'll update accordingly. I don't foresee any problems eliminating the Matrix expressions are still not supported in |
Great. As in PowerModels, we can have two branches in the type hierarchy one that targets conic / matrix formulations and the other that is QCQP/NLP. I agree that having a baseline to compare to will help build and debug equivalent formulations. |
* Change of phase order + add fixed voltage magnitude bus support Partially updated tests * fixes per discussion in PR TPPM * Validation of Linearised (simplified) Branch Flow model preliminary fixes - current variable set to zero in simplified branch flow - line losses only the shunts TODO: - fix unit tests - support transformer? - phase order (rotation direction) * Support transformer + fix phase rotation + remove current variable * Updated unit tests * Adding support for SDP and SOC BFM * Correct reference bus + updated linear approximation - .values need to remain - got rid of n_cond=3 throughout - docstrings for formulations - corrected constraint_tp_theta_ref - better distinction between LinDist3Flow and Simplified BFM by Gan and Low - remove debug codes - added test case, to be expanded in unit tests * Updating naming conventions #61 * Unit tests for matrix helper functions * Bugfix in matrix-wise problem types * Making sure all unit tests run * Tighter bounds + SDP unit tests * Fix for travis * Exploring SOC relaxation properties further * Debug SDP to SOC relaxation * Debugging shunts * Support multiphase reference bus * finishing PR - finish type hierarchy of unbalanced BFM - rename files ('mx' for matrix) - capitals for matrix variables - add unit tests for linear models * fix test parameters and solver output
* Change of phase order + add fixed voltage magnitude bus support Partially updated tests * fixes per discussion in PR TPPM * Validation of Linearised (simplified) Branch Flow model preliminary fixes - current variable set to zero in simplified branch flow - line losses only the shunts TODO: - fix unit tests - support transformer? - phase order (rotation direction) * Support transformer + fix phase rotation + remove current variable * Updated unit tests * Add support for parsing OpenDSS' PVSystem * Adding support for SDP and SOC BFM * Correct reference bus + updated linear approximation - .values need to remain - got rid of n_cond=3 throughout - docstrings for formulations - corrected constraint_tp_theta_ref - better distinction between LinDist3Flow and Simplified BFM by Gan and Low - remove debug codes - added test case, to be expanded in unit tests * Updating naming conventions #61 * Unit tests for matrix helper functions * Bugfix in matrix-wise problem types * Making sure all unit tests run * Tighter bounds + SDP unit tests * Fix for travis * Exploring SOC relaxation properties further * Debug SDP to SOC relaxation * Debugging shunts * Support multiphase reference bus * finishing PR - finish type hierarchy of unbalanced BFM - rename files ('mx' for matrix) - capitals for matrix variables - add unit tests for linear models * Support for OpenDSS PVSystem * REM: import_all requirement to support PVSystem Removes requirement of import_all flag for supporting parse of PVSystem components
This seems to be resolved, closing |
Still work to be done. :-) |
Ah, I misread part of the original post just now. For future reference for myself, functions like |
I am not 100% sure that is the best solution, this issue is reminder to think about this in general and try to find a clean and intuitive design. |
I'm experimenting here with how improve the matrix-based problem definition and the use of matrix variables for generators/loads and matrix equations for nodal KCL. I'll come back to this afterwards with lessons learned. |
This refactor ensures that all variable and constraint functions internal to PowerModelsDistribution, e.g. those containing `_mc_`, have any loops over the phases internal to that function, instead of requiring an explicit loop inside the problem definition. Updates changelog Closes #81 Closes #61 Closes #152
This refactor ensures that all variable and constraint functions internal to PowerModelsDistribution, e.g. those containing `_mc_`, have any loops over the phases internal to that function, instead of requiring an explicit loop inside the problem definition. Updates changelog Closes #81 Closes #61 Closes #152
This refactor ensures that all variable and constraint functions internal to PowerModelsDistribution, e.g. those containing `_mc_`, have any loops over the phases internal to that function, instead of requiring an explicit loop inside the problem definition. Updates changelog Closes #81 Closes #61 Closes #152
Based on @frederikgeth's most recent PR, https://github.com/lanl-ansi/ThreePhasePowerModels.jl/pull/60, I am wondering if it would be better if the ThreePhase problem formulations adopted the following convention,
_tp_
) then the conductors are handled inside that functionBelow is an example of how this might work. For many formulations the
_tp_
variants will likely just delegate to some PowerModels base function, but for the more advanced formulations they may do other things.The goal here would be able to support a wide variety formulation variants with a shared problem specification, and reuse PowerModels base implementation, as much as possible. @frederikgeth if we adopted this convention, would you be able to eliminate the
mat
problem variants you propose in https://github.com/lanl-ansi/ThreePhasePowerModels.jl/pull/60?Thoughts?
The text was updated successfully, but these errors were encountered: