diff options
author | Thales Lima Oliveira <thaleslima.ufu@gmail.com> | 2019-04-26 17:52:32 -0300 |
---|---|---|
committer | Thales Lima Oliveira <thaleslima.ufu@gmail.com> | 2019-04-26 17:52:32 -0300 |
commit | 2b02ef22cc5f2025b09b700f1cb6e1cec94d80f6 (patch) | |
tree | 4aba955355f4b98138e2f38c58223f51bf4d697b /Project/Bus.cpp | |
parent | a40d5a405d60b4e429f6f578dcfe3c33ab5ad81a (diff) | |
download | PSP.git-2b02ef22cc5f2025b09b700f1cb6e1cec94d80f6.tar.gz PSP.git-2b02ef22cc5f2025b09b700f1cb6e1cec94d80f6.tar.xz PSP.git-2b02ef22cc5f2025b09b700f1cb6e1cec94d80f6.zip |
Power quality fully implemented
A formal filter element must be implemented in future
Diffstat (limited to 'Project/Bus.cpp')
-rw-r--r-- | Project/Bus.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Project/Bus.cpp b/Project/Bus.cpp index 37eac3e..5c8c190 100644 --- a/Project/Bus.cpp +++ b/Project/Bus.cpp @@ -259,7 +259,7 @@ bool Bus::GetPlotData(ElementPlotData& plotData, PlotStudy study) plotData.AddData(absVoltage, _("Voltage")); plotData.AddData(argVoltage, _("Angle")); } else if(FREQRESPONSE) { - //if(!m_electricalData.plotBus) return false; + if(!m_electricalData.plotPQData) return false; plotData.SetName(m_electricalData.name); plotData.SetCurveType(ElementPlotData::CT_BUS); plotData.AddData(m_electricalData.absImpedanceVector, _("Impedance")); @@ -316,6 +316,10 @@ rapidxml::xml_node<>* Bus::SaveElement(rapidxml::xml_document<>& doc, rapidxml:: auto stabFaultReactance = XMLParser::AppendNode(doc, stability, "FaultReactance"); XMLParser::SetNodeValue(doc, stabFaultReactance, m_electricalData.stabFaultReactance); + auto powerQuality = XMLParser::AppendNode(doc, electricalProp, "PowerQuality"); + auto plotPQData = XMLParser::AppendNode(doc, powerQuality, "Plot"); + XMLParser::SetNodeValue(doc, plotPQData, m_electricalData.plotPQData); + return elementNode; } @@ -349,6 +353,9 @@ bool Bus::OpenElement(rapidxml::xml_node<>* elementNode) m_electricalData.stabFaultResistance = XMLParser::GetNodeValueDouble(stability, "FaultResistance"); m_electricalData.stabFaultReactance = XMLParser::GetNodeValueDouble(stability, "FaultReactance"); + auto powerQuality = electricalProp->first_node("PowerQuality"); + if(powerQuality) m_electricalData.plotPQData = XMLParser::GetNodeValueInt(powerQuality, "Plot"); + if(m_electricalData.stabHasFault) SetDynamicEvent(true); return true; } |