-
Notifications
You must be signed in to change notification settings - Fork 17
Iterations on PSSE parser #194
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
base: develop
Are you sure you want to change the base?
Conversation
8838e48 to
4839148
Compare
|
Applied ./pflow -netfile for three different files, including Hawaii 40 https://electricgrids.engr.tamu.edu/hawaii40/. |
|
Here is what I am getting with the updated PSSE parser. The case The file that should trigger failure, Question: Why are we throwing an exception after reading poorly structured input? We could just return. |
4839148 to
4830aa1
Compare
25a20d7 to
4cb8985
Compare
55e2afe to
9eadd6c
Compare
|
A few questions not specific to changes:
|
| Error("PSS(R)E parser: Encountered duplicate bus name: " + | ||
| buses_[i].name); |
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.
Bus numbers have to be unique, bus names can be not unique, because they carry the names of towns or cities, and if two different states have a town called “Gainesville”, then you can have bus 123456 “Gainesville” and 678901 “Gainesville”, suggest to remove the check for unique bus names.
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. It looks like other components can refer to buses by name ("extended bus id") rather than number. That's why I had that requirement. So should I assume that all bus references in the file will use the bus number?
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.
I believe that "extended bus id" is used mainly for output. For computations, I would assume that bus number is used as a unique bus id.
CC @abhyshr
| Error("Bus " + std::to_string(shunt.i.id) + | ||
| ": more than one fixed shunt at bus not supported"); |
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.
If a bus has more than one fixed shunt, it is ok. They have sh.id, so “SH1”, “SH2”.
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.
OK I carried this check from the original parser. I'll move it to the convert function as a warning.
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.
Physically, it is okay to have more than one shunt, we need to verify that the model supports multiple shunts. I think producing warning when multiple shunts are connected to a bus is a good solution for now.
| if (!Approx(dgen.vs, bus.vm)) { | ||
| std::stringstream ss; | ||
| ss << "Generator at bus " << bus.bus_i << std::fixed | ||
| << ": voltage setpoint (" << dgen.vs | ||
| << ") different from bus voltage magnitude (" << bus.vm << ")"; | ||
| Error(ss.str()); |
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.
Generator voltage setpoint does not match bus voltage, this is normal.
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 check was in the original parser. Should I remove it altogether?
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.
Perhaps turn this into a warning instead of an error for now? We need to verify that the current model supports this.
Merge request type
Relates to
This MR updates
Summary
Multiple improvements to PSSE parser:
PS)load.areadefaults to area of bus referenced byload.i)Linked Issue(s)