44 static constexpr Int mStateSize = 14;
45 static constexpr Int mInputSize = 3;
46 static constexpr Int mOutputSize = 3;
48 enum StateIndex :
Int {
94 Matrix getParkTransformMatrix(
Real theta)
const;
95 Matrix getInverseParkTransformMatrix(
Real theta)
const;
98 void evaluateStateDerivative(
const Matrix &x,
const Matrix &u,
99 Matrix &stateDerivative)
const;
AttributePointer< Attribute< T > > Ptr
Matrix getInterfaceVoltage() const
std::vector< String > getLocalStateNames() const override final
Bool updateComponentParameters() override final
Matrix getInterfaceCurrent() const
std::vector< SSNComp::LocalAbcStateBlock > getLocalAbcStateBlocks() const override final
SSN_GFL(String name, Logger::Level logLevel=Logger::Level::off)
void updateLogAttributes(const Matrix &u) const override final
Update derived attributes used for logging/inspection.
void setParameters(Real lf, Real cf, Real rf, Real rc, Real omegaN, Real kpPLL, Real kiPLL, Real omegaCutoff, Real pRef, Real qRef, Real kpPowerCtrl, Real kiPowerCtrl, Real kpCurrCtrl, Real kiCurrCtrl)
Configure the GFL filter, PLL, power loop and current loop.
SSN_GFL(String uid, String name, Logger::Level logLevel=Logger::Level::off)
void initializeFromNodesAndTerminals(Real frequency) override final
Initializes Component variables according to power flow data stored in Nodes.
Matrix getStateDerivative() const
TwoTerminalVTypeVariableSSNComp(String uid, String name, Logger::Level logLevel=Logger::Level::off)
Abstract base class for EMT state-space nodal (SSN) components.
String uid()
Returns unique id.
spdlog::level::level_enum Level
static std::shared_ptr< SSN_GFL > make(Args &&...args)
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > Matrix
Dense matrix for real numbers.