1#ifndef SynchronousMachine_H
2#define SynchronousMachine_H
10#include <unordered_map>
12#include "RotatingMachine.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
18#include "CurrentFlow.hpp"
23#include "Reactance.hpp"
24#include "ReactivePower.hpp"
25#include "Resistance.hpp"
26#include "ShortCircuitRotorKind.hpp"
27#include "SynchronousMachineKind.hpp"
28#include "SynchronousMachineOperatingMode.hpp"
36 class SynchronousMachine :
public RotatingMachine
41 ~SynchronousMachine()
override;
112 static const char debugName[];
113 const char* debugString()
const override;
115 const std::list<std::string>& getAttributeNames()
const override;
117 const std::string& getClassNamespaceUrl()
const override;
118 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
120 const std::list<CGMESProfile>& getPossibleProfiles()
const override;
121 const CGMESProfile& getRecommendedProfile()
const override;
122 const std::list<CGMESProfile>& getPossibleAttributeProfiles(
const std::string& attrName)
const override;
123 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes()
const override;
125 static void addConstructToMap(std::unordered_map<std::string,
BaseClass* (*)()>& factory_map);
126 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
127 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
128 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
129 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map)
const override;
130 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
132 bool isAssignableFrom(
BaseClass* otherObject)
const override;
136 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Definition Boolean.hpp:13
Electrical current with sign convention: positive flow is out of the conducting equipment into the co...
Definition CurrentFlow.hpp:14
A floating point number. The range is unspecified and not limited.
Definition Float.hpp:14
Definition Integer.hpp:13
Per Unit - a positive or negative value referred to a defined base. Values typically range from -10 t...
Definition PU.hpp:14
Percentage on a defined base. For example, specify as 100 to indicate at the defined base.
Definition PerCent.hpp:14
Reactance (imaginary part of impedance), at rated frequency.
Definition Reactance.hpp:14
Reactive power rating envelope versus the synchronous machine's active power, in both the generating ...
Definition ReactiveCapabilityCurve.hpp:25
Product of RMS value of the voltage and the RMS value of the quadrature component of the current.
Definition ReactivePower.hpp:14
Resistance (real part of impedance).
Definition Resistance.hpp:14
Type of rotor, used by short circuit applications.
Definition ShortCircuitRotorKind.hpp:14
Synchronous machine whose behaviour is described by reference to a standard model expressed in one of...
Definition SynchronousMachineDynamics.hpp:29
Synchronous machine type.
Definition SynchronousMachineKind.hpp:14
Synchronous machine operating mode.
Definition SynchronousMachineOperatingMode.hpp:14
CIMPP::ReactivePower minQ
Minimum reactive power limit for the unit. Default: 0.0.
Definition SynchronousMachine.hpp:65
CIMPP::CurrentFlow ikk
Steady-state short-circuit current (in A for the profile) of generator with compound excitation durin...
Definition SynchronousMachine.hpp:59
CIMPP::Reactance x2
Negative sequence reactance. Default: 0.0.
Definition SynchronousMachine.hpp:110
CIMPP::Float mu
Factor to calculate the breaking current (Section 4.5.2.1 in IEC 60909-0). Used only for single fed s...
Definition SynchronousMachine.hpp:68
CIMPP::ReactivePower maxQ
Maximum reactive power limit. This is the maximum (nameplate) limit for the unit. Default: 0....
Definition SynchronousMachine.hpp:62
CIMPP::Boolean earthing
Indicates whether or not the generator is earthed. Used for short circuit data exchange according to ...
Definition SynchronousMachine.hpp:50
CIMPP::PU satDirectSyncX
Direct-axis subtransient reactance saturated, also known as Xd`sat. Default: 0.0 */ CIMPP::PU satDire...
Definition SynchronousMachine.hpp:92
CIMPP::SynchronousMachineKind type
Modes that this synchronous machine can operate in. Default: 0.
Definition SynchronousMachine.hpp:101
CIMPP::PerCent qPercent
Part of the coordinated reactive control that comes from this machine. The attribute is used as a par...
Definition SynchronousMachine.hpp:74
CIMPP::ReactiveCapabilityCurve * InitialReactiveCapabilityCurve
The default reactive capability curve for use by a synchronous machine. Default: nullptr.
Definition SynchronousMachine.hpp:44
CIMPP::ShortCircuitRotorKind shortCircuitRotorType
Type of rotor, used by short circuit applications, only for single fed short circuit according to IEC...
Definition SynchronousMachine.hpp:98
CIMPP::Resistance r
Equivalent resistance (RG) of generator. RG is considered for the calculation of all currents,...
Definition SynchronousMachine.hpp:77
CIMPP::Resistance r2
Negative sequence resistance. Default: 0.0.
Definition SynchronousMachine.hpp:83
CIMPP::SynchronousMachineOperatingMode operatingMode
Current mode of operation. Default: 0.
Definition SynchronousMachine.hpp:71
CIMPP::SynchronousMachineDynamics * SynchronousMachineDynamics
Synchronous machine dynamics model used to describe dynamic behaviour of this synchronous machine....
Definition SynchronousMachine.hpp:47
CIMPP::Reactance x0
Zero sequence reactance of the synchronous machine. Default: 0.0.
Definition SynchronousMachine.hpp:107
CIMPP::Reactance earthingStarPointX
Generator star point earthing reactance (Xe). Used for short circuit data exchange according to IEC 6...
Definition SynchronousMachine.hpp:56
CIMPP::Resistance r0
Zero sequence resistance of the synchronous machine. Default: 0.0.
Definition SynchronousMachine.hpp:80
CIMPP::PerCent voltageRegulationRange
Range of generator voltage regulation (PG in IEC 60909-0) used for calculation of the impedance corre...
Definition SynchronousMachine.hpp:104
CIMPP::Integer referencePriority
Priority of unit for use as powerflow voltage phase angle reference bus selection....
Definition SynchronousMachine.hpp:86
CIMPP::PU satDirectTransX
Saturated Direct-axis transient reactance. The attribute is primarily used for short circuit calculat...
Definition SynchronousMachine.hpp:95
CIMPP::Resistance earthingStarPointR
Generator star point earthing resistance (Re). Used for short circuit data exchange according to IEC ...
Definition SynchronousMachine.hpp:53