diff options
Diffstat (limited to 'Project/Electromechanical.h')
-rw-r--r-- | Project/Electromechanical.h | 29 |
1 files changed, 15 insertions, 14 deletions
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<double> GetTimeVector() const { return m_timeVector; } - std::vector<double> m_wErrorVector; std::vector<double> m_deltaErrorVector; std::vector<double> m_transEdErrorVector; std::vector<double> m_transEqErrorVector; std::vector<double> 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<double> 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<std::vector<std::complex<double> > > m_yBus; std::vector<std::vector<std::complex<double> > > m_yBusU; std::vector<std::vector<std::complex<double> > > m_yBusL; - + std::vector<std::complex<double> > m_vBus; std::vector<std::complex<double> > 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<double> m_eventTimeList; std::vector<bool> m_eventOccurrenceList; - + std::vector<double> m_timeVector; - - //tests + + // tests double m_wError = 0.0; double m_deltaError = 0.0; double m_transEdError = 0.0; |