219 Real initTerminalVolt,
Real initVoltAngle,
AttributePointer< Attribute< T > > Ptr
Base synchronous generator model.
Real mBase_OmMech
base mechanical angular frequency
const Attribute< Real >::Ptr mOmMech
rotor speed omega_r
const Attribute< Real >::Ptr mElecTorque
electrical torque
Real mVc
Interface voltage phase c.
Real mLb
Auxiliar inductance.
SynchronGeneratorVBR(String name, String uid, Logger::Level logLevel=Logger::Level::off)
Defines UID, name and logging level.
Real mPsikq1
Magnetizing flux linkage 1st damper winding q axis.
void setBaseAndFundamentalPerUnitParameters(Real nomPower, Real nomVolt, Real nomFreq, Int poleNumber, Real nomFieldCur, Real Rs, Real Ll, Real Lmd, Real Lmq, Real Rfd, Real Llfd, Real Rkd, Real Llkd, Real Rkq1, Real Llkq1, Real Rkq2, Real Llkq2, Real inertia)
Initializes the base and fundamental machine parameters in per unit.
Real mIa
Interface curent phase a.
Matrix & statorCurrents()
MatrixFixedSize< 2, 2 > K1K2
Real mPsimd
Magnetizing flux linkage in d axis.
void initialize(Real om, Real dt)
Real mVq
Interface voltage q component.
Real mV0
Interface voltage 0 component.
Real rotorPosition() const
Matrix mConductanceMat
Equivalent Stator Conductance Matrix.
void initialize(Matrix frequencies) override
Initialize components with correct network frequencies.
Real mVa
Interface voltage phase a.
void setBaseAndOperationalPerUnitParameters(Real nomPower, Real nomVolt, Real nomFreq, Int poleNumber, Real nomFieldCur, Real Rs, Real Ld, Real Lq, Real Ld_t, Real Lq_t, Real Ld_s, Real Lq_s, Real Ll, Real Td0_t, Real Tq0_t, Real Td0_s, Real Tq0_s, Real inertia)
Real mDLmq
q dynamic inductance
void CalculateAuxiliarConstants(Real dt)
Real mLa
Auxiliar inductance.
MatrixFixedSize< 3, 3 > R_eq_vbr
Equivalent VBR Stator Resistance.
Matrix mIabc
Phase currents in pu.
Real electricalTorque() const
Matrix mDInductanceMat
inductance matrix
void mnaCompAddPreStepDependencies(AttributeBase::List &prevStepDependencies, AttributeBase::List &attributeDependencies, AttributeBase::List &modifiedAttributes) override
Add MNA pre step dependencies.
Real c21_omega
Auxiliar variables.
Real mId_hist
D axis stator current of from last time step.
Matrix mDVabc
Subtransient voltage in pu.
void mnaCompPostStep(Real time, Int timeStepCount, Attribute< Matrix >::Ptr &leftVector) override
MNA post step operations.
MatrixFixedSize< 2, 2 > K2a
MatrixFixedSize< 3, 3 > mKrs_teta
Park Transformation Matrix.
Real mPsikd
Magnetizing flux linkage damper winding d axis.
Matrix E_eq_vbr
Equivalent VBR Stator Voltage Source.
Real mPsifd
Magnetizing flux linkage excitation.
void mnaCompPreStep(Real time, Int timeStepCount) override
MNA pre step operations.
Real mIq
Interface current q component.
void CalculateAuxiliarVariables()
MatrixFixedSize< 2, 2 > F2
Real mIq_hist
Q axis stator current of from last time step.
Matrix inverseParkTransform(Real theta, Real q, Real d, Real zero)
Inverse Park transform as described in Krause.
Real mDVa
Dynamic voltage phase a.
MatrixFixedSize< 2, 2 > E2b
Real mDVq
Dynamic d voltage.
Matrix mDVqd
Dynamic Voltage Vector.
MatrixFixedSize< 3, 3 > mKrs_teta_inv
Inverse Park Transformation Matrix.
MatrixFixedSize< 2, 2 > F2b
Real mIc
Interface curent phase c.
Matrix mVabc
Phase Voltages in pu.
MatrixFixedSize< 2, 2 > Fa
void mnaCompInitialize(Real omega, Real timeStep, Attribute< Matrix >::Ptr leftVector) override
Initializes internal variables of the component.
Matrix mDqStatorCurrents
Dq stator current vector.
Matrix mPsikq1kq2
Q axis Rotor flux.
Real mVb
Interface voltage phase b.
Real mDLmd
d dynamic inductance
Real mPsimq
Magnetizing flux linkage in q axis.
void mnaCompApplyRightSideVectorStamp(Matrix &rightVector) override
Stamps right side (source) vector.
Matrix mISourceEq
Equivalent Stator Current Source.
void mnaCompAddPostStepDependencies(AttributeBase::List &prevStepDependencies, AttributeBase::List &attributeDependencies, AttributeBase::List &modifiedAttributes, Attribute< Matrix >::Ptr &leftVector) override
Add MNA post step dependencies.
Matrix parkTransform(Real theta, Real a, Real b, Real c)
Park transform as described in Krause.
MatrixFixedSize< 3, 3 > K
Real mPsikq2
Magnetizing flux linkage 2nd damper winding q axis.
void setInitialValues(Real initActivePower, Real initReactivePower, Real initTerminalVolt, Real initVoltAngle, Real initMechPower)
Initialize states according to desired initial electrical powerflow and mechanical input power.
Real mId
Interface current d component.
Real mDVb
Dynamic voltage phase b.
Real mI0
Interface current 0 component.
Real rotationalSpeed() const
MatrixFixedSize< 2, 2 > E2
Real mDVd
Dynamic q voltage.
void mnaCompApplySystemMatrixStamp(SparseMatrixRow &systemMatrix) override
Stamps system matrix.
Real mDVc
Dynamic voltage phase c.
Real mIb
Interface curent phase b.
MatrixFixedSize< 2, 2 > K1a
Matrix & dqStatorCurrents()
Getters.
Real mVfd
Voltage excitation.
Real c11
Auxiliar constants.
void initializeFromNodesAndTerminals(Real frequency) override
Initializes component from power flow data.
MatrixFixedSize< 2, 2 > Ea
Matrix mPsifdkd
D axis rotor flux.
void CalculateL()
Calculate inductance Matrix L and its derivative.
Real mVd
Interface voltage d component.
Bool hasParameterChanged() override
Mark that parameter changes so that system matrix is updated.
String uid()
Returns unique id.
spdlog::level::level_enum Level
MNASimPowerComp(String uid, String name, Bool hasPreStep, Bool hasPostStep, Logger::Level logLevel)
MNA interface to be used by elements that require recomputing of the system matrix.
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > Matrix
Dense matrix for real numbers.
Eigen::Matrix< Real, rows, cols, Eigen::ColMajor > MatrixFixedSize
Dense matrix for real numbers with fixed dimension.
Eigen::SparseMatrix< Real, Eigen::RowMajor > SparseMatrixRow
Sparse matrix for real numbers (row major).