From 49ac4c4fcedb03ef09f8faab176159f48896dc7e Mon Sep 17 00:00:00 2001 From: Thales Lima Oliveira Date: Wed, 26 Jul 2017 21:32:35 -0300 Subject: 5 machine models implemented --- Project/Electromechanical.h | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'Project/Electromechanical.h') diff --git a/Project/Electromechanical.h b/Project/Electromechanical.h index d8889e6..facfa0f 100644 --- a/Project/Electromechanical.h +++ b/Project/Electromechanical.h @@ -15,57 +15,58 @@ class Electromechanical : public ElectricCalculation bool RunStabilityCalculation(); wxString GetErrorMessage() const { return m_errorMsg; } - std::vector GetTimeVector() const { return m_timeVector; } - std::vector m_wErrorVector; std::vector m_deltaErrorVector; std::vector m_transEdErrorVector; std::vector m_transEqErrorVector; std::vector m_numItVector; - + protected: void SetEventTimeList(); bool HasEvent(double currentTime); void SetEvent(double currentTime); inline bool EventTrigger(double eventTime, double currentTime); - + double GetPowerValue(double value, ElectricalUnit unit); void InsertSyncMachinesOnYBus(); std::complex GetSyncMachineAdmittance(SyncGenerator* generator); bool InitializeDynamicElements(); void CalculateMachinesCurrents(); - void CalculateIntegrationConstants(SyncGenerator* syncGenerator, double id, double iq); + void CalculateIntegrationConstants(SyncGenerator* syncGenerator, double id, double iq, double k = 1.0); bool SolveSynchronousMachines(); - + void SetSyncMachinesModel(); + double CalculateSyncMachineIntVariables(SyncGenerator* syncGenerator, double id, double iq, double pe, double k = 1.0); + void CalculateSyncMachineNonIntVariables(SyncGenerator* syncGenerator, double& id, double& iq, double& pe, double k = 1.0); + void SaveData(); wxWindow* m_parent = NULL; wxString m_errorMsg = _("Unknown error"); - + double m_systemFreq = 60.0; - + std::vector > > m_yBus; std::vector > > m_yBusU; std::vector > > m_yBusL; - + std::vector > m_vBus; std::vector > m_iBus; - + double m_powerSystemBase = 100e6; double m_timeStep = 1e-2; double m_ctrlTimeStepMultiplier = 0.1; - double m_tolerance = 1e-6; + double m_tolerance = 1e-8; int m_maxIterations = 100; std::vector m_eventTimeList; std::vector m_eventOccurrenceList; - + std::vector m_timeVector; - - //tests + + // tests double m_wError = 0.0; double m_deltaError = 0.0; double m_transEdError = 0.0; -- cgit