Introduce cosimulation interface component#401
Conversation
|
Only had one implementation concern regarding correctness. The facade of the Vr/Vi being treated as an internal variable is confusing to me. What are your thoughts on an auxiliary internal state? That would be more consistent, and since we would only have a small number of CoSim components for any given system model, the state duplication isn't too costly. |
My opinion is that the arrays in All that to say, given the current implementation of |
I am a big fan of this solution, this would resolve some modeling vocab concerns I have in our exciter and stabilizers. |
nkoukpaizan
left a comment
There was a problem hiding this comment.
Setting to draft for now. I have some thoughts, but I'll let @pelesh discuss this offline.
This is correct understanding. Signals represent directed communication and are defined by inputs/outputs. Physics-based couplings are based on conservation laws and have associated variables that are external to coupled components. |
ece05e7 to
3ada8ba
Compare
|
@nkoukpaizan after name changes, I believe this PR should be ready for review again. Let me know what you think. |
nkoukpaizan
left a comment
There was a problem hiding this comment.
A couple of minor comments.
The Jacobian may be out of scope for this PR. Just let me know if you want me to take a crack at the implemetation.
I believe that was the original intent: You would have signal-in, signal-out and bus ports. Note that electrical buses cannot be considered in or out because they enforce algebraic constraints, which are not directional. |
3ada8ba to
7abaa9c
Compare
c3f6eae to
2bd6e2d
Compare
09afb75 to
b2e6c76
Compare
nkoukpaizan
left a comment
There was a problem hiding this comment.
This is almost there in my opinion. I would just add a REAME file to the folder describing the purpose of the component and the ports (reads voltages from the bus to make them available via signals and adds external current injections).
nkoukpaizan
left a comment
There was a problem hiding this comment.
Thanks for cleaning this up. One minor comment, and I will wait for @pelesh to approve before merging.
Description
Basic implementation of cosimulation component
Closes #393
Proposed changes
Uses two output signals to transmit$V_r$ and $V_i$ from connected bus and two input signals to transfer $I_r$ and $I_i$ to connected bus.
Checklist
-Wall -Wpedantic -Wconversion -Wextra.