summaryrefslogtreecommitdiffstats
path: root/Project/PropertiesData.h
diff options
context:
space:
mode:
Diffstat (limited to 'Project/PropertiesData.h')
-rw-r--r--Project/PropertiesData.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/Project/PropertiesData.h b/Project/PropertiesData.h
new file mode 100644
index 0000000..4c8d2c9
--- /dev/null
+++ b/Project/PropertiesData.h
@@ -0,0 +1,54 @@
+#ifndef PROPERTIESDATA_H
+#define PROPERTIESDATA_H
+
+#include "wx/language.h"
+#include "Element.h"
+#include "PowerElement.h"
+
+enum PowerFlowMethod { GAUSS_SEIDEL = 0, NEWTON_RAPHSON };
+enum GUITheme { THEME_LIGHT = 0, THEME_DARK };
+
+struct SimulationData {
+ // General simulation data
+ double basePower = 100.0;
+ ElectricalUnit basePowerUnit = UNIT_MVA;
+ bool faultAfterPowerFlow = true;
+ bool scPowerAfterPowerFlow = true;
+
+ // Power flow
+ PowerFlowMethod powerFlowMethod = GAUSS_SEIDEL;
+ double accFator = 1.0;
+ double powerFlowTolerance = 1e-7;
+ int powerFlowMaxIterations = 5000;
+
+ // Stability
+ double stabilityFrequency = 60.0;
+ double timeStep = 1e-2;
+ double stabilitySimulationTime = 10.0;
+ double stabilityTolerance = 1e-8;
+ int stabilityMaxIterations = 100;
+ int controlTimeStepRatio = 10;
+ double plotTime = 1e-2;
+};
+
+struct GeneralData {
+ wxLanguage language = wxLANGUAGE_ENGLISH;
+ GUITheme theme = THEME_LIGHT;
+};
+
+class PropertiesData
+{
+ public:
+ PropertiesData();
+ ~PropertiesData();
+
+ SimulationData GetSimulationPropertiesData() const { return m_simulData; }
+ void SetSimulationPropertiesData(SimulationData simulationData) { m_simulData = simulationData; }
+ GeneralData GetGeneralPropertiesData() const { return m_genData; }
+ void SetGeneralPropertiesData(GeneralData generalData) { m_genData = generalData; }
+ protected:
+ SimulationData m_simulData;
+ GeneralData m_genData;
+};
+
+#endif // PROPERTIESDATA_H