Skip to content
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

Linear SSN #175

Merged
merged 4 commits into from
Oct 10, 2024
Merged

Linear SSN #175

merged 4 commits into from
Oct 10, 2024

Commits on Sep 30, 2024

  1. Add EMT three-phase SSN component models for L, C and RLC

    + add "EMT_Ph3_SSN_Inductor.h" and "EMT_Ph3_SSN_Inductor.cpp". For the inductor, the resulting SSN model is identical to the resistive companion model.
    + add "EMT_Ph3_SSN_Capacitor.h" and "EMT_Ph3_SSN_Capacitor.cpp". For the capacitor, the SSN model results in an additional mesh equation similar to a voltage source, expanding the dimensions of the system matrix by 1x1. The resistive companion model should be used instead.
    + add "EMT_Ph3_SSN_Full_Serial_RLC.h" and "EMT_Ph3_SSN_Full_Serial_RLC.cpp". The implemented RLC circuit consists of R, L and C , completely wired in series. Instead of four required nodes for those three components, the combined SSN model only requires two, reducing the dimensions of the system matrix. All three implemented SSN components can be used together with RC component models and with the already implemented MNA Solver classes.
    
    * modify "Components.h" to include "EMT_Ph3_SSN_Capacitor.h", "EMT_Ph3_SSN_Inductor.h" and "EMT_Ph3_SSN_Full_Serial_RLC.h"
    * modify "dpsim-models/src/CMakeLists.txt" to include "EMT_Ph3_SSN_Capacitor.cpp", "EMT_Ph3_SSN_Inductor.cpp" and "EMT_Ph3_SSN_Full_Serial_RLC.cpp"
    
    Signed-off-by: Marvin Tollnitsch <marvin.tollnitsch@rwth-aachen.de>
    MarvinTollnitschRWTH committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    73a48d9 View commit details
    Browse the repository at this point in the history
  2. Implementation and declaration adjustments for EMT Ph3 CurrentSource

    + add implementation of "setParameters(MatrixComp currentRef, Real srcFreq = 50.0)" method in "EMT_Ph3_CurrentSource.h". Arguments are reference current (complex static phasor, amplitude and initial angle) and frequency
    
    * rename "voltageRef" parameters to "currentRef" in all "setParameters()" method declarations in "EMT_Ph3_CurrentSource.h"
    * update "clone()" method to use the newly implemented "setParameters()" method in "EMT_Ph3_CurrentSource.cpp"
    
    Signed-off-by: Marvin Tollnitsch <marvin.tollnitsch@rwth-aachen.de>
    MarvinTollnitschRWTH committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    a8615ff View commit details
    Browse the repository at this point in the history
  3. Make EMT::Ph3 CurrentSource and SSN Full_Serial_RLC usable in pybind

    + add EMT::Ph3::CurrentSource and EMT::Ph3::SSN::Full_Serial_RLC as classes in "EMTComponents.cpp"
    
    * apply clang-format to "EMTComponents.cpp"
    
    Signed-off-by: Marvin Tollnitsch <marvin.tollnitsch@rwth-aachen.de>
    MarvinTollnitschRWTH committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    c0881ed View commit details
    Browse the repository at this point in the history
  4. Add test circuits for new Ph3 SSN models of L, C and RLC

    + add "EMT_Ph3_R3C1L1CS1_RC_vs_SSN.cpp" which contains a linear circuit implemented using resistive companion component models in one simulation and the new SSN component models in another simulation for comparison
    + add "EMT_Ph3_RLC1VS1_RC_vs_SSN.cpp" which contains a linear RLC circuit implemented using resistive compantion component models in one simulation and the new SSN component model in another simulation for comparison
    + add "EMT_Ph3_compare_RC_SSN.ipynb". This notebook simulates the circuits in the files mentioned above to show, compare and assert the results (SSN against RC)
    
    * adjust "dpsim/examples/cxx/CMakeLists.txt" to include "EMT_Ph3_R3C1L1CS1_RC_vs_SSN.cpp" and "EMT_Ph3_RLC1VS1_RC_vs_SSN.cpp"
    
    Signed-off-by: Marvin Tollnitsch <marvin.tollnitsch@rwth-aachen.de>
    MarvinTollnitschRWTH committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    dbbc8d0 View commit details
    Browse the repository at this point in the history