-
Notifications
You must be signed in to change notification settings - Fork 51
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reuse stamp code for EMT synchron. generators (#315)
### Summary This PR fixes and extends functionality of `MNAStampUtils` and reuses the stamping logic for EMT synchronous generators. ### Details - **MNAStampUtils: Fix stamping of full matrices (i.e., matrices with non-zero off-diagonal elements)** The incorrect logic for full matrices in `MNAStampUtils` was not previously recognized because 3-phase components that already used `MNAStampUtils` (i.e. 3-phase R, L, C components) do not have coupling between the phases (their conductance matrix is diagonal). The incorrect logic became apparent when the code was reused for stamping synchronous generator's conductance matrix. - **MNAStampUtils: add matrix stamp functions with optimized logic** Added functions `stamp3x3ConductanceMatrixBetween2Nodes` and `stamp3x3ConductanceMatrixNodeToGround,` that do not check if a terminal is grounded. This check is usually skipped in components, implementing `MNAVariableCompInterface`. - **Reuse conductance stamping logic for EMT synchronous generators** The commit does not include `EMT_Ph3_SynchronGeneratorDQ`. Conductance stamping is never called in `EMT_Ph3_SynchronGeneratorDQ,` due to hard-coded `mCompensationOn` data member. Therefore, it is not covered by tests and examples. ### Related work - **Issue Reference**: These changes were discussed in an issue: #288 - **Previous PR**: This PR continues the work of: #306 - **Future Plans**: There are plans for future PRs to reuse stamp code for other components deriving from the `MNASimPowerComp` class.
- Loading branch information
Showing
4 changed files
with
108 additions
and
230 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.