82 Logger::Level mComponentLogLevel;
86 IdentifiedObject::List mComponents;
95 GeneratorType mGeneratorType;
102 std::map<String, TopologicalNode::Ptr> mPowerflowNodes;
104 std::map<String, TopologicalPowerComp::Ptr> mPowerflowEquipment;
106 std::map<String, TopologicalTerminal::Ptr> mPowerflowTerminals;
108 Bool mUseProtectionSwitches =
false;
112 Bool mSetShuntCapacitor =
false;
114 Real mShuntCapacitorValue = -1;
116 Bool mSetShuntConductance =
false;
118 Real mShuntConductanceValue = 1e-6;
122 static Real unitValue(Real value, CIMPP::UnitMultiplier mult);
124 void processSvVoltage(CIMPP::SvVoltage *volt);
126 void processSvPowerFlow(CIMPP::SvPowerFlow *flow);
128 template <
typename VarType>
129 void processTopologicalNode(CIMPP::TopologicalNode *topNode);
131 void addFiles(
const fs::path &filename);
133 void addFiles(
const std::list<fs::path> &filenames);
143 Matrix::Index mapTopologicalNode(String mrid);
145 TopologicalPowerComp::Ptr mapComponent(BaseClass *obj);
149 TopologicalPowerComp::Ptr mapACLineSegment(CIMPP::ACLineSegment *line);
151 TopologicalPowerComp::Ptr mapPowerTransformer(CIMPP::PowerTransformer *trans);
155 TopologicalPowerComp::Ptr
156 mapSynchronousMachine(CIMPP::SynchronousMachine *machine);
161 TopologicalPowerComp::Ptr mapEnergyConsumer(CIMPP::EnergyConsumer *consumer);
163 TopologicalPowerComp::Ptr
164 mapExternalNetworkInjection(CIMPP::ExternalNetworkInjection *extnet);
166 TopologicalPowerComp::Ptr mapEquivalentShunt(CIMPP::EquivalentShunt *shunt);
170 Real determineBaseVoltageAssociatedWithEquipment(
171 CIMPP::ConductingEquipment *equipment);
176 Reader(String name, Logger::Level logLevel = Logger::Level::info,
177 Logger::Level componentLogLevel = Logger::Level::off);
183 Domain domain = Domain::DP,
184 PhaseType phase = PhaseType::Single,
185 GeneratorType genType = GeneratorType::None);
188 const std::list<fs::path> &filenames,
189 Domain domain = Domain::DP,
190 PhaseType phase = PhaseType::Single,
191 GeneratorType genType = GeneratorType::None);
194 const std::list<CPS::String> &filenamesString,
195 Domain domain = Domain::DP,
196 PhaseType phase = PhaseType::Single,
197 GeneratorType genType = GeneratorType::None);
SystemTopology loadCIM(Real systemFrequency, const fs::path &filename, Domain domain=Domain::DP, PhaseType phase=PhaseType::Single, GeneratorType genType=GeneratorType::None)
Parses data from CIM files into the CPS data structure.