-
Notifications
You must be signed in to change notification settings - Fork 28
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
feat: use transmission line physical parameters to calculate impedances and ratings for HIFLD grid #276
Conversation
c0c0d16
to
aa9eac1
Compare
a27a2c1
to
7c89690
Compare
With #272 merged and tests updated, this branch is now ready for a full review. |
394444b
to
5f15793
Compare
86110d1
to
eabc0e6
Compare
e89ae9a
to
628e489
Compare
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 is novelty in grid building.
voltage,circuits,bundle_count,conductor,spacing,a0x,a0y,b0x,b0y,c0x,c0y,a1x,a1y,b1x,b1y,c1x,c1y,a2x,a2y,b2x,b2y,c2x,c2y,a3x,a3y,b3x,b3y,c3x,c3y,notes | ||
69,1,1,Osprey,,-2,16.5,2,15,-2,13.5,,,,,,,,,,,,,,,,,,,single-pole design | ||
69,2,1,Osprey,,-2,16.5,-2,15,-2,13.5,2,13.5,2,15,2,16.5,,,,,,,,,,,,,single-pole double-circuit | ||
69,2,2,Osprey,0.5,-2,16.5,-2,15,-2,13.5,2,13.5,2,15,2,16.5,,,,,,,,,,,,,single-pole double-circuit | ||
100,1,1,Drake,,-2,19,2,17,-2,15,,,,,,,,,,,,,,,,,,,single-pole design | ||
100,2,1,Drake,,-2,19,-2,17,-2,15,2,15,2,17,2,19,,,,,,,,,,,,,single-pole double-circuit | ||
100,1,4,Drake,0.5,-7,15,0,15,7,15,,,,,,,,,,,,,,,,,,,H-frame design | ||
115,1,1,Drake,,-2,19,2,17,-2,15,,,,,,,,,,,,,,,,,,,single-pole design | ||
115,1,2,Drake,0.5,-4,15,0,15,4,15,,,,,,,,,,,,,,,,,,,H-frame design | ||
138,1,1,Ortolan,,-3,22.5,3,20,-3,17.5,,,,,,,,,,,,,,,,,,,single-pole design | ||
138,2,2,Ortolan,0.5,-7.5,15,-4.5,15,-1.5,15,1.5,15,4.5,15,7.5,15,,,,,,,,,,,,,two parallel H-frames | ||
161,1,1,Bluejay,,-5,15,0,15,5,15,,,,,,,,,,,,,,,,,,,H-frame design | ||
161,1,3,Bluejay,0.5,-6,15,0,15,6,15,,,,,,,,,,,,,,,,,,,lattice | ||
161,2,4,Bluejay,0.5,-5,15,-5,17,-5,19,5,19,5,17,5,15,,,,,,,,,,,,,Two parallel single-poles | ||
230,1,1,Falcon,,-7,20,0,20,7,20,,,,,,,,,,,,,,,,,,,H-frame design | ||
230,1,2,Drake,0.5,-7,20,0,20,7,20,,,,,,,,,,,,,,,,,,,H-frame design | ||
230,1,3,Drake,0.5,-7,20,0,20,7,20,,,,,,,,,,,,,,,,,,,H-frame design | ||
230,2,2,Drake,0.5,-3,19,-3,17,-3,15,3,15,3,17,3,19,,,,,,,,,,,,,Double-circuit lattice | ||
230,4,3,Drake,0.5,-7,20,0,20,7,20,18,20,25,20,32,20,43,20,50,20,57,20,68,20,75,20,82,20,Four parallel H-frames | ||
345,1,2,Falcon,0.5,-8,25,0,25,8,25,,,,,,,,,,,,,,,,,,,H-frame design | ||
500,1,3,Rail,0.5,-10,30,0,30,10,30,,,,,,,,,,,,,,,,,,,lattice | ||
500,2,3,Drake,0.5,-5,40,-8,30,-5,20,5,20,8,30,5,40,,,,,,,,,,,,,lattice | ||
765,1,4,Martin,0.5,-15,40,0,40,15,40,,,,,,,,,,,,,,,,,,,H-frame design |
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.
Should we mention the data source somewhere and/or do we need to do data-intake for this?
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.
These are self-created, based on compiling a variety of sources and rough assumptions, so I don't think we need to go through the data intake process. I'm going to write more about this in the paper describing our process. Do you think we need more documentation in the repo itself?
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.
Sounds good. We will definitely put some paragraphs from the paper into the readme of the repo later and reference the paper for sure.
96f4b27
to
2443aea
Compare
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.
Thanks for adding those tests!
2443aea
to
8f3a9ea
Compare
8f3a9ea
to
4ae0a5b
Compare
I was bored on a plane with no wifi. |
Pull Request doc
Purpose
To build branch ratings and impedances for the HIFLD grid, use assumptions which start with the physical parameters of typical line designs (with non-typical overrides as necessary), rather than relying on processed averages from the TAMU grid.
What the code is doing
line_designs.csv
). Withintransmission.py
, the default choice for a given voltage level is the single-circuit design with the minimum number of conductors per bundle.const.py
:s_base
).we make a change to the impedance of 161/500 kV transformers. The existing value produces severe transmission infeasibilities, while the new value fixes them (and is consistent with examination of real world data).EDIT: removed for now in favor of more extensive transformer re-working within refactor: update values and logic for representative transformer designs #286.line_voltage_assumptions
), to be used to override the algorithms withintransmission.py
when problems are encountered.transmission.py
:const.py
before performing the neighbor search algorithm to assign voltage to unknown-voltage lines.add_impedance_and_rating
which buildsTower
objects for each of the designs inline_designs.csv
, and associates each transmission line in the HIFLD dataset with one of these designs (using either the default or the overrides inconst.py
) before passing this augmented dataframe (original data plus Tower designs) to the existing lower-levelestimate_branch_impedance
andestimate_branch_rating
functions.estimate_branch_impedance
andestimate_branch_rating
functions to use theTower
objects plus the line lengths to calculate the appropriate values for transmission lines (transformer logic is unchanged).test_transmission.py
: several new tests aimed at improving the overall test coverage of thetransmission
module.Testing
Tested manually to build the HIFLD grid. Preliminary tests show the built grid having much less transmission violation energy and many fewer lines violating, compared to when the grid is built using the assumed values from the TAMU data. Full results to be added later.
Unit tests still need to be updated.EDIT: done.Usage Example/Visuals
All code changes will be used by calling the
build_transmission
function (either directly or viacreate_csvs
orcreate_grid
in theorchestration
module).Time estimate
30 minutes to an hour, provided they already have a good understanding of the line parameter calculation logic, or are willing to trust the previous reviews of that code (#272).
This branch depends on #272, so is a draft for now.