diff options
author | Thales1330 <thaleslima.ufu@gmail.com> | 2016-11-01 19:36:24 -0200 |
---|---|---|
committer | Thales1330 <thaleslima.ufu@gmail.com> | 2016-11-01 19:36:24 -0200 |
commit | b306118b2683cf6f264b5f1617c3e0e62a6c9042 (patch) | |
tree | 2059f3a6647d5021a0eaa7f1b08635cbcd83def0 /Project/Load.cpp | |
parent | 7d4df7195202eaea0e84f227e96f19dec4144081 (diff) | |
download | PSP.git-b306118b2683cf6f264b5f1617c3e0e62a6c9042.tar.gz PSP.git-b306118b2683cf6f264b5f1617c3e0e62a6c9042.tar.xz PSP.git-b306118b2683cf6f264b5f1617c3e0e62a6c9042.zip |
Power flow (gs) under implementation
Diffstat (limited to 'Project/Load.cpp')
-rw-r--r-- | Project/Load.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Project/Load.cpp b/Project/Load.cpp index ec2297b..e46b48b 100644 --- a/Project/Load.cpp +++ b/Project/Load.cpp @@ -120,3 +120,42 @@ bool Load::ShowForm(wxWindow* parent, Element* element) loadForm->Destroy(); return false; } + +LoadElectricalData Load::GetPUElectricalData(double systemPowerBase) +{ + LoadElectricalData data = m_electricalData; + switch(data.activePowerUnit) { + case UNIT_W: { + data.activePower = data.activePower / systemPowerBase; + data.activePowerUnit = UNIT_PU; + } break; + case UNIT_kW: { + data.activePower = (data.activePower * 1e3) / systemPowerBase; + data.activePowerUnit = UNIT_PU; + } break; + case UNIT_MW: { + data.activePower = (data.activePower * 1e6) / systemPowerBase; + data.activePowerUnit = UNIT_PU; + } break; + default: + break; + } + switch(data.reactivePowerUnit) { + case UNIT_VAr: { + data.reactivePower = data.reactivePower / systemPowerBase; + data.reactivePowerUnit = UNIT_PU; + } break; + case UNIT_kVAr: { + data.reactivePower = (data.reactivePower * 1e3) / systemPowerBase; + data.reactivePowerUnit = UNIT_PU; + } break; + case UNIT_MVAr: { + data.reactivePower = (data.reactivePower * 1e6) / systemPowerBase; + data.reactivePowerUnit = UNIT_PU; + } break; + default: + break; + } + + return data; +} |