-
-
Notifications
You must be signed in to change notification settings - Fork 394
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
[docs] Complex number AC Optimal Power Flow tutorial #3395
Conversation
Codecov ReportPatch and project coverage have no change.
Additional details and impacted files@@ Coverage Diff @@
## master #3395 +/- ##
=======================================
Coverage 98.06% 98.07%
=======================================
Files 34 34
Lines 4922 4927 +5
=======================================
+ Hits 4827 4832 +5
Misses 95 95 ☔ View full report in Codecov by Sentry. |
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.
This should definitely be moved to the /applications
directory. I can see it being useful for EE people, but it might be too detailed for a general conic example to expect people to read.
Ok, moved to the |
@frederikgeth @ccoffrin I would appreciate any comments or improvement suggestions if you get a chance. Preview: https://jump.dev/JuMP.jl/previews/PR3395/tutorials/applications/optimal_power_flow/ |
I didn't have a chance to look at the original version of this but I am a little surprised to see that line flow limits are not included (or did I miss them?). I also generally find the matrix-centric version of formulation difficult to follow. I prefer explicitly writing the line flow equation like I saw a place or two where the use of FWIW, here is the formulation I came up with based on my preferred formulation style, https://github.com/lanl-ansi/rosetta-opf/blob/main/variants/jump-rectangular-complex.jl Looking at the JuMP docs, I think my example could be improved further by defining the variables in the complex plain directly. |
@ccoffrin Thanks Carleton, that's useful feedback.
This has been written from scratch; was there another tutorial I missed? Sorry if I'm not understanding you. |
Thanks for this great contribution to the community. I have a few comments, to help reach the maximum audience.
edit: Just saw Carleton's reaction, my point 2 is the one that Carleton made already |
@frederikgeth Thanks Fred. I will definitely incorporate your first three points directly. |
I agree, at the moment the SDP W+V section doesn't really add much to the story or goals of this tutorial. It may be worth fleshing out at a later stage. If you prefer to keep SDP W+V, I would consider putting it before SDP W. It is easier to explain the lifting and reformulation if you keep both V+W initially. And then you can tell the story of how you can get rid of the V variables and still recover the same solution (for the SDP W section). |
Good, that story makes a lot more sense to me. |
LGTM. I don't really have an opinion on the SDP formulations. We can always merge and wait to see if we get any feedback from students etc. |
Great, I'm excited to get this merged! |
(I couldn't help doing it myself this time 😂) |
Haha. I was going to wait to see if anyone had other comments. But no harm no foul. |
Thanks! |
I'm hoping to do another pass. |
Old link to rendered preview version is broken, where can I view the latest version? |
Rebase of #3382
@jd-foster you should be able to pull and push from this branch now.
Preview: https://jump.dev/JuMP.jl/previews/PR3395/tutorials/applications/optimal_power_flow/
Closes #3363