Initial implementation of multi-contingency app#394
Conversation
|
'ContingencyStudy' -> 'CTGStudy' CTG is common short hand and way easier to type! One option. |
|
yes, I need feedback on naming things |
|
A few comments:
|
e30ce37 to
463644f
Compare
463644f to
e49c57f
Compare
nkoukpaizan
left a comment
There was a problem hiding this comment.
A couple of comments on this below. We'll also need to update the applications README when this is ready, to minimize users' confusion.
|
Very excited for this! I think once we have this merged we should address the events-as-components modeling so we don't need to store a BusFault for each bus in the case. Also, if possible, I'd like the *.study.json to have a "ida_stats" field for a file output string that would if passed calls the IDA api and writes out the IDA statistics (verbose extended version). I would use that ASAP with this + PDSIM |
0f37785 to
a20100c
Compare
pelesh
left a comment
There was a problem hiding this comment.
The new code needs to be better commented. The purpose of classes, structures and standalone functions implemented here needs to be better explained.
It is unclear what is the purpose of CTGStudy::run() function. This could be implemented within standalone function runStudy. I would suggest removing CTGStudy class altogether and moving utility functions for I/O processing to ContingencyUtilities.*pp file(s).
8e4b968 to
631dc75
Compare
631dc75 to
89f8595
Compare
nkoukpaizan
left a comment
There was a problem hiding this comment.
Almost there I well. I'm able to follow what's in ContigencyAnalysis.cpp, though more documentation (runStudy, runStudyAsync, etc.) is always welcome.
I would add an example that uses the ContingencyAnalysis executable that shows how this works and runs along with the other tests/examples.
Co-authored-by: Nicholson Koukpaizan <72402802+nkoukpaizan@users.noreply.github.com>
Description
Refactored
pdsimcode asContingencyStudyclass and reused in initial implementation of concurrent contingency app.Closes #392
Proposed changes
For the work-in-progress I implemented three different versions of the simulation for easy timing comparison.
The easiest interesting case to try locally is "new england" (I have 22 cores in my laptop).
Checklist
-Wall -Wpedantic -Wconversion -Wextra.