diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index ff7403954..db07ea37a 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -30,12 +30,10 @@
-
-
-
-
-
-
+
+
+
+
@@ -133,93 +131,93 @@
- {
+ "keyToString": {
+ "ASKED_ADD_EXTERNAL_FILES": "true",
+ "Git.Branch.Popup.ShowAllRemotes": "true",
+ "MATLAB_INTERPRETER": "/usr/local/MATLAB/R2018a/bin/matlab",
+ "Python tests.Nosetests for test_power_flow.test_zip.executor": "Debug",
+ "Python tests.Nosetests for test_topology_processor.test_topology_rts.executor": "Debug",
+ "Python tests.Nosetests for tests.test_ac_opf.executor": "Run",
+ "Python tests.Nosetests for tests.test_ac_opf.test_pegase89.executor": "Debug",
+ "Python tests.Nosetests for tests.test_hydro.executor": "Run",
+ "Python tests.Nosetests for tests.test_latin_hypercube.test_lhs.executor": "Run",
+ "Python tests.Nosetests for tests.test_opf_time_series.test_opf_ts.executor": "Run",
+ "Python tests.Nosetests for tests.test_topology_processor.executor": "Run",
+ "Python tests.Nosetests for tests.test_topology_processor.test_topology_rts.executor": "Run",
+ "Python tests.Nosetests in admittance_matrix_test.py.executor": "Run",
+ "Python tests.Nosetests in deep_copy_test.py.executor": "Run",
+ "Python tests.Nosetests in test_topology_processor.py.executor": "Run",
+ "Python tests.Nosetests in tests.executor": "Run",
+ "Python tests.pytest for src.tests.test_cgmes_ieeee.executor": "Run",
+ "Python tests.pytest for src.tests.test_cgmes_ieeee.test_ieee_grids.executor": "Debug",
+ "Python tests.pytest for src.tests.test_cgmes_to_gridcal_ac_transformers.test_ac_transformers3w.executor": "Debug",
+ "Python tests.pytest for src.tests.test_load_all_grids.test_all_grids.executor": "Run",
+ "Python tests.pytest for src.tests.test_load_save_load.test_load_save_load.executor": "Run",
+ "Python tests.pytest for src.tests.test_power_flow.executor": "Run",
+ "Python tests.pytest for src.tests.test_power_flow.test_controllable_shunt.executor": "Run",
+ "Python tests.pytest for src.tests.test_tutorials.test_define_grid_from_scratch_with_profiles.executor": "Debug",
+ "Python tests.pytest for test_cgmes_ieeee.test_ieee_grids.executor": "Run",
+ "Python tests.pytest for test_demo_5_node.test_demo_5_node.executor": "Run",
+ "Python tests.pytest for test_derivatives.test_bus_derivatives.executor": "Run",
+ "Python tests.pytest for test_load_save_load.test_load_save_load2.executor": "Run",
+ "Python tests.pytest for test_nodal_capacity.test_linear_vs_nonlinear_ncap.executor": "Run",
+ "Python tests.pytest for test_power_flow.test_fubm.executor": "Run",
+ "Python tests.pytest for test_power_flow.test_power_flow_control_with_pst.executor": "Debug",
+ "Python tests.pytest for test_power_flow.test_power_flow_control_with_pst_pt.executor": "Run",
+ "Python tests.pytest for test_power_flow.test_qf_control_with_ltc.executor": "Run",
+ "Python tests.pytest for test_power_flow.test_qt_control_with_ltc.executor": "Debug",
+ "Python tests.pytest for test_power_flow.test_voltage_control_with_ltc.executor": "Run",
+ "Python tests.pytest for test_power_flow.test_voltage_local_control_with_generation.executor": "Debug",
+ "Python tests.pytest for test_power_flow.test_voltage_remote_control_with_generation.executor": "Debug",
+ "Python tests.pytest for test_set_snapshot.test_set_snapshot.executor": "Run",
+ "Python tests.pytest for test_sparse2.test_mat_mat_mult.executor": "Run",
+ "Python tests.pytest for test_topology_processor.test_topology_4_nodes_A.executor": "Debug",
+ "Python tests.pytest for test_topology_processor.test_topology_4_nodes_B.executor": "Debug",
+ "Python tests.pytest for test_transformer_controls.test_v_control_true.executor": "Debug",
+ "Python tests.pytest in test_cgmes_ieeee.py.executor": "Run",
+ "Python tests.pytest in test_deep_copy.py.executor": "Run",
+ "Python tests.pytest in test_load_save_load.py.executor": "Debug",
+ "Python tests.pytest in test_power_flow.py.executor": "Run",
+ "Python tests.pytest in test_profiles.py.executor": "Run",
+ "Python tests.pytest in test_topology_processor.py.executor": "Run",
+ "Python tests.pytest in test_transformer_controls.py.executor": "Run",
+ "Python tests.pytest in tests.executor": "Run",
+ "Python.AnalysisDialogue.executor": "Run",
+ "Python.ExecuteGridCal.executor": "Run",
+ "Python.GridCalMain.executor": "Run",
+ "Python.auto_document_models.executor": "Run",
+ "Python.cgmes_rdfs_graph.executor": "Run",
+ "Python.crazy_lambda_shadowing.executor": "Run",
+ "Python.download_stats.executor": "Run",
+ "Python.fubm_example.executor": "Run",
+ "Python.generate_ssl_key.executor": "Run",
+ "Python.line_arrow.executor": "Run",
+ "Python.line_arrow_2.executor": "Run",
+ "Python.line_arrow_3.executor": "Run",
+ "Python.make.executor": "Run",
+ "Python.new_circuit_objects.executor": "Run",
+ "Python.profile_dialogue.executor": "Run",
+ "Python.pymoo_example.executor": "Debug",
+ "Python.raw_imp_exp_test.executor": "Run",
+ "Python.run.executor": "Run",
+ "Python.update_gui_file.executor": "Run",
+ "Python.upload_to_pypi.executor": "Run",
+ "RunOnceActivity.OpenProjectViewOnStart": "true",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "WebServerToolWindowFactoryState": "false",
+ "git-widget-placeholder": "199__finalize__cgmes__import",
+ "last_opened_file_path": "/home/santi/Documentos/Git/GitHub/GridCal/src/GridCalEngine/Simulations/PowerFlow/NumericalMethods",
+ "node.js.detected.package.eslint": "true",
+ "node.js.selected.package.eslint": "(autodetect)",
+ "node.js.selected.package.tslint": "(autodetect)",
+ "nodejs_package_manager_path": "npm",
+ "run.code.analysis.last.selected.profile": "aDefault",
+ "settings.editor.selected.configurable": "com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable",
+ "two.files.diff.last.used.file": "C:/WorkProjects/PycharmProjects/GridCal/src/trunk/cgmes_py_generator/cgmes_v2_4_15/cgmes_enums.py",
+ "vue.rearranger.settings.migration": "true"
}
-}]]>
+}
@@ -2316,12 +2314,12 @@
file://$PROJECT_DIR$/src/GridCal/Gui/Analysis/object_plot_analysis.py
- 242
+ 258
file://$PROJECT_DIR$/src/GridCal/Gui/Analysis/object_plot_analysis.py
- 243
+ 259
@@ -2861,7 +2859,7 @@
-
+
diff --git a/src/GridCal/Gui/Analysis/object_plot_analysis.py b/src/GridCal/Gui/Analysis/object_plot_analysis.py
index f0a242765..4c165dff3 100644
--- a/src/GridCal/Gui/Analysis/object_plot_analysis.py
+++ b/src/GridCal/Gui/Analysis/object_plot_analysis.py
@@ -100,6 +100,22 @@ def clear(self):
"""
self.logs.clear()
+ def add_normal_logger(self, logger: Logger):
+ """
+ Add normal logger
+ :param logger: Logger
+ """
+ for l in logger.entries:
+ self.add(object_type=l.device_class,
+ element_name=l.device,
+ element_index=0,
+ severity=l.severity,
+ propty=l.device_property,
+ message=l.msg,
+ val=l.value,
+ lower=l.expected_object_value,
+ upper=l.expected_value)
+
def get_model(self) -> "QtGui.QStandardItemModel":
"""
Get TreeView Model
@@ -1043,7 +1059,7 @@ def analyze_batteries(elements: List[Battery],
def analyze_static_gen(elements: List[StaticGenerator],
time_profile,
- logger: GridErrorLog,):
+ logger: GridErrorLog, ):
"""
:param elements:
@@ -1076,7 +1092,7 @@ def analyze_static_gen(elements: List[StaticGenerator],
def analyze_load(elements: List[Load],
time_profile,
- logger: GridErrorLog,):
+ logger: GridErrorLog, ):
"""
:param elements:
@@ -1137,6 +1153,12 @@ def grid_analysis(circuit: MultiCircuit,
:param eps_min: Min epsylon value for comparison
:return: list of fixable error objects
"""
+
+ # check for duplicated uuid's
+ duplicates_logger = Logger()
+ _, ok_dict = circuit.get_all_elements_dict(logger=duplicates_logger)
+ logger.add_normal_logger(duplicates_logger)
+
if circuit.time_profile is not None:
nt = len(circuit.time_profile)
else:
@@ -1288,6 +1310,8 @@ def grid_analysis(circuit: MultiCircuit,
val=Ql_prof[t],
upper=str(Qmax))
+
+
return fixable_errors
diff --git a/src/GridCal/__version__.py b/src/GridCal/__version__.py
index dcd1ca2c4..b8ef77147 100644
--- a/src/GridCal/__version__.py
+++ b/src/GridCal/__version__.py
@@ -16,7 +16,7 @@
_current_year_ = datetime.datetime.now().year
# do not forget to keep a three-number version!!!
-__GridCal_VERSION__ = "5.1.34"
+__GridCal_VERSION__ = "5.1.35"
url = 'https://github.com/SanPen/GridCal'
diff --git a/src/GridCalEngine/__version__.py b/src/GridCalEngine/__version__.py
index 13c2da336..abb17b6c6 100644
--- a/src/GridCalEngine/__version__.py
+++ b/src/GridCalEngine/__version__.py
@@ -16,7 +16,7 @@
_current_year_ = datetime.datetime.now().year
# do not forget to keep a three-number version!!!
-__GridCalEngine_VERSION__ = "5.1.34"
+__GridCalEngine_VERSION__ = "5.1.35"
url = 'https://github.com/SanPen/GridCal'
diff --git a/src/GridCalServer/__version__.py b/src/GridCalServer/__version__.py
index 043042734..e5767bd8a 100644
--- a/src/GridCalServer/__version__.py
+++ b/src/GridCalServer/__version__.py
@@ -16,7 +16,7 @@
_current_year_ = datetime.datetime.now().year
# do not forget to keep a three-number version!!!
-__GridCalServer_VERSION__ = "5.1.34"
+__GridCalServer_VERSION__ = "5.1.35"
url = 'https://github.com/SanPen/GridCal'