8#include <dpsim-models/Base/Base_Ph1_PiLine.h>
9#include <dpsim-models/CompositePowerComp.h>
10#include <dpsim-models/EMT/EMT_Ph1_Capacitor.h>
11#include <dpsim-models/EMT/EMT_Ph1_Inductor.h>
12#include <dpsim-models/EMT/EMT_Ph1_Resistor.h>
13#include <dpsim-models/Solver/MNATearInterface.h>
35 std::shared_ptr<Capacitor> mSubParallelCapacitor0;
39 std::shared_ptr<Capacitor> mSubParallelCapacitor1;
45 PiLine(String
uid, String name, Logger::Level logLevel = Logger::Level::off);
47 PiLine(String name, Logger::Level logLevel = Logger::Level::off)
48 :
PiLine(name, name, logLevel) {}
50 SimPowerComp<Real>::Ptr
clone(String copySuffix)
override;
67 Attribute<Matrix>::Ptr &leftVector)
override;
70 AttributeBase::List &prevStepDependencies,
71 AttributeBase::List &attributeDependencies,
72 AttributeBase::List &modifiedAttributes)
override;
76 AttributeBase::List &attributeDependencies,
77 AttributeBase::List &modifiedAttributes,
78 Attribute<Matrix>::Ptr &leftVector)
override;
80 MNAInterface::List mnaTearGroundComponents()
override;
81 void mnaTearInitialize(Real omega, Real timeStep)
override;
82 void mnaTearApplyMatrixStamp(SparseMatrixRow &tearMatrix)
override;
83 void mnaTearApplyVoltageStamp(Matrix &voltageVector)
override;
84 void mnaTearPostStep(Complex voltage, Complex current)
override;
CompositePowerComp(String uid, String name, Bool hasPreStep, Bool hasPostStep, Logger::Level logLevel)
void mnaParentPostStep(Real time, Int timeStepCount, Attribute< Matrix >::Ptr &leftVector) override
MNA post step operations.
std::shared_ptr< Inductor > mSubSeriesInductor
std::vector< const Matrix * > mRightVectorStamps
solver
void mnaCompUpdateVoltage(const Matrix &leftVector) override
Updates internal voltage variable of the component.
std::shared_ptr< Resistor > mSubParallelResistor1
Parallel resistor submodel at Terminal 1.
void mnaParentAddPostStepDependencies(AttributeBase::List &prevStepDependencies, AttributeBase::List &attributeDependencies, AttributeBase::List &modifiedAttributes, Attribute< Matrix >::Ptr &leftVector) override
Add MNA post step dependencies.
void createSubComponents() override
Constructs and registers MNA subcomponents; idempotent.
void mnaCompUpdateCurrent(const Matrix &leftVector) override
Updates internal current variable of the component.
std::shared_ptr< Resistor > mSubSeriesResistor
Series Resistor submodel.
void mnaParentAddPreStepDependencies(AttributeBase::List &prevStepDependencies, AttributeBase::List &attributeDependencies, AttributeBase::List &modifiedAttributes) override
Add MNA pre step dependencies.
PiLine(String name, Logger::Level logLevel=Logger::Level::off)
Defines name and logging level.
SimPowerComp< Real >::Ptr clone(String copySuffix) override
DEPRECATED: Delete method.
std::shared_ptr< Resistor > mSubParallelResistor0
Parallel Resistor submodel at Terminal 0.
PiLine(String uid, String name, Logger::Level logLevel=Logger::Level::off)
Defines UID, name and logging level.
void initializeParentFromNodesAndTerminals(Real frequency) override
Derives values from power flow data and pushes them to subcomponents.
void mnaParentPreStep(Real time, Int timeStepCount) override
MNA pre step operations.
String uid()
Returns unique id.