GridCalEngine 5.1.52__tar.gz → 5.1.54__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (743) hide show
  1. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/branch_data.py +20 -4
  2. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/numerical_circuit.py +22 -10
  3. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/contingency.py +12 -9
  4. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/remedial_action.py +10 -9
  5. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/hvdc_line.py +14 -6
  6. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/transformer3w.py +119 -3
  7. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/base_diagram.py +47 -8
  8. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/editable_device.py +3 -2
  9. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/assets.py +21 -0
  10. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +154 -143
  11. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +6 -4
  12. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +143 -48
  13. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/file_handler.py +14 -1
  14. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/psse_circuit.py +11 -18
  15. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/raw_parser_writer.py +4 -2
  16. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/raw_to_gridcal.py +2 -2
  17. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +7 -4
  18. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +9 -2
  19. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +7 -2
  20. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +15 -6
  21. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +4 -2
  22. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_fx.py +11 -30
  23. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_advanced_formulation.py +86 -0
  24. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_basic_formulation.py +30 -0
  25. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_formulation_template.py +8 -0
  26. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +18 -3
  27. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/pulp_interface.py +5 -5
  28. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/__init__.py +7 -4
  29. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/copt_api.py +6 -7
  30. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/cplex_cmd.py +5 -5
  31. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/cplex_py.py +3 -3
  32. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/gurobi_cmd.py +4 -4
  33. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/gurobi_py.py +4 -4
  34. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/highs_cmd.py +3 -3
  35. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/highs_py.py +3 -3
  36. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/lp_solver.py +4 -4
  37. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/lp_solver_cmd.py +1 -1
  38. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/scip_api.py +3 -3
  39. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/xpress_api.py +3 -3
  40. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/model/lp_objects.py +2 -2
  41. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/model/lp_problem.py +8 -8
  42. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/mps_lp.py +2 -2
  43. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/pulp.py +12 -14
  44. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/progress_bar.py +3 -2
  45. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/__version__.py +1 -1
  46. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/enumerations.py +35 -0
  47. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/PKG-INFO +1 -1
  48. GridCalEngine-5.1.52/GridCalEngine/Utils/__init__.py +0 -0
  49. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/__init__.py +0 -0
  50. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/circuit_to_bentayga.py +0 -0
  51. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/circuit_to_data.py +0 -0
  52. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/circuit_to_newton_pa.py +0 -0
  53. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
  54. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Compilers/circuit_to_pgm.py +0 -0
  55. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/__init__.py +0 -0
  56. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/battery_data.py +0 -0
  57. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/bus_data.py +0 -0
  58. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
  59. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
  60. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
  61. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
  62. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
  63. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/generator_data.py +0 -0
  64. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
  65. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/load_data.py +0 -0
  66. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/shunt_data.py +0 -0
  67. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/DataStructures/vsc_data.py +0 -0
  68. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
  69. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/area.py +0 -0
  70. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
  71. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/community.py +0 -0
  72. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
  73. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/country.py +0 -0
  74. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/facility.py +0 -0
  75. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/inter_aggregation_info.py +0 -0
  76. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/investment.py +0 -0
  77. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/investments_group.py +0 -0
  78. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
  79. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
  80. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/region.py +0 -0
  81. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/remedial_action_group.py +0 -0
  82. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
  83. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Associations/__init__.py +0 -0
  84. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Associations/association.py +0 -0
  85. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Associations/emission_gas.py +0 -0
  86. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Associations/fuel.py +0 -0
  87. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Associations/technology.py +0 -0
  88. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/__init__.py +0 -0
  89. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/branch.py +0 -0
  90. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
  91. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/line.py +0 -0
  92. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/line_locations.py +0 -0
  93. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/overhead_line_type.py +0 -0
  94. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
  95. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
  96. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/switch.py +0 -0
  97. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
  98. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/transformer.py +0 -0
  99. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
  100. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
  101. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/upfc.py +0 -0
  102. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/vsc.py +0 -0
  103. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/winding.py +0 -0
  104. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Branches/wire.py +0 -0
  105. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
  106. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/graphic_location.py +0 -0
  107. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
  108. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
  109. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/palettes.py +0 -0
  110. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
  111. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
  112. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
  113. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
  114. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
  115. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
  116. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
  117. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
  118. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/__init__.py +0 -0
  119. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/battery.py +0 -0
  120. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
  121. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
  122. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
  123. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/generator.py +0 -0
  124. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
  125. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/load.py +0 -0
  126. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/shunt.py +0 -0
  127. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
  128. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/__init__.py +0 -0
  129. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
  130. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
  131. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
  132. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
  133. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
  134. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/physical_device.py +0 -0
  135. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
  136. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/__init__.py +0 -0
  137. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/bus.py +0 -0
  138. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/busbar.py +0 -0
  139. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
  140. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/substation.py +0 -0
  141. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
  142. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/__init__.py +0 -0
  143. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/comparison.py +0 -0
  144. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/measurement.py +0 -0
  145. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/multi_circuit.py +0 -0
  146. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/profile.py +0 -0
  147. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Devices/types.py +0 -0
  148. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/__init__.py +0 -0
  149. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/base/__init__.py +0 -0
  150. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/base/base_circuit.py +0 -0
  151. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/base/base_device.py +0 -0
  152. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/base/base_property.py +0 -0
  153. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/base/units.py +0 -0
  154. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/__init__.py +0 -0
  155. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
  156. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
  157. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_assets/__init__.py +0 -0
  158. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_2_4_15_assets.py +0 -0
  159. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_3_0_0_assets.py +0 -0
  160. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
  161. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +0 -0
  162. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
  163. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
  164. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +0 -0
  165. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_poperty.py +0 -0
  166. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
  167. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
  168. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
  169. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
  170. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
  171. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
  172. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
  173. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
  174. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
  175. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
  176. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
  177. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
  178. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
  179. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
  180. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
  181. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
  182. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
  183. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
  184. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
  185. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
  186. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
  187. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
  188. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
  189. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
  190. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
  191. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
  192. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
  193. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
  194. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
  195. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
  196. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
  197. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
  198. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
  199. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
  200. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
  201. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
  202. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
  203. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
  204. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
  205. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
  206. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
  207. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
  208. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
  209. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
  210. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
  211. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
  212. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
  213. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
  214. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
  215. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
  216. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
  217. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
  218. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
  219. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
  220. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
  221. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
  222. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
  223. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
  224. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
  225. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
  226. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
  227. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
  228. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
  229. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
  230. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
  231. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
  232. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
  233. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
  234. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
  235. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
  236. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
  237. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
  238. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
  239. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
  240. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
  241. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
  242. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
  243. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
  244. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
  245. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
  246. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
  247. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
  248. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
  249. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
  250. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
  251. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
  252. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
  253. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
  254. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
  255. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
  256. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
  257. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
  258. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
  259. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
  260. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
  261. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
  262. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
  263. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
  264. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
  265. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
  266. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
  267. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
  268. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
  269. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
  270. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
  271. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
  272. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
  273. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
  274. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
  275. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
  276. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
  277. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
  278. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
  279. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
  280. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
  281. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
  282. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
  283. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
  284. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
  285. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
  286. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
  287. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
  288. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
  289. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
  290. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
  291. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
  292. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
  293. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
  294. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
  295. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
  296. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
  297. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
  298. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
  299. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
  300. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
  301. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
  302. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
  303. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
  304. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
  305. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
  306. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
  307. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
  308. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
  309. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
  310. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
  311. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
  312. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
  313. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
  314. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
  315. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
  316. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
  317. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
  318. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
  319. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
  320. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
  321. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
  322. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
  323. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
  324. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/analog_control.py +0 -0
  325. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
  326. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
  327. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
  328. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
  329. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
  330. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
  331. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
  332. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
  333. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
  334. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
  335. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
  336. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
  337. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
  338. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
  339. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
  340. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
  341. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
  342. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
  343. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
  344. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
  345. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
  346. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
  347. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control.py +0 -0
  348. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
  349. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
  350. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
  351. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
  352. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
  353. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
  354. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
  355. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
  356. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
  357. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
  358. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
  359. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
  360. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
  361. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
  362. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
  363. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
  364. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
  365. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
  366. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
  367. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
  368. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
  369. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
  370. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
  371. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
  372. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
  373. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
  374. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
  375. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
  376. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
  377. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
  378. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
  379. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
  380. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
  381. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
  382. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
  383. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
  384. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
  385. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
  386. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
  387. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
  388. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
  389. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
  390. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
  391. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
  392. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
  393. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
  394. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
  395. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
  396. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
  397. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
  398. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
  399. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
  400. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
  401. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
  402. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
  403. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/io_point.py +0 -0
  404. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
  405. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
  406. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit.py +0 -0
  407. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit_set.py +0 -0
  408. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
  409. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
  410. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
  411. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
  412. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
  413. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
  414. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
  415. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement.py +0 -0
  416. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement_value.py +0 -0
  417. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/mutual_coupling.py +0 -0
  418. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
  419. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
  420. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
  421. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
  422. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
  423. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
  424. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
  425. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
  426. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
  427. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
  428. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
  429. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
  430. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
  431. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
  432. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
  433. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
  434. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
  435. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
  436. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
  437. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
  438. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
  439. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
  440. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
  441. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
  442. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
  443. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
  444. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
  445. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
  446. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
  447. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
  448. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
  449. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
  450. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
  451. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_cond_eq.py +0 -0
  452. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
  453. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
  454. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
  455. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
  456. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
  457. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
  458. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
  459. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
  460. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
  461. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
  462. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
  463. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
  464. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
  465. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
  466. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
  467. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
  468. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
  469. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
  470. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
  471. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
  472. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
  473. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
  474. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
  475. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
  476. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
  477. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
  478. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
  479. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
  480. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
  481. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
  482. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
  483. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
  484. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
  485. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
  486. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
  487. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
  488. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
  489. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
  490. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
  491. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
  492. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
  493. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/rdfs_infos.py +0 -0
  494. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cgmes/rdfs_serializations.py +0 -0
  495. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
  496. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
  497. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
  498. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
  499. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
  500. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/cim16/cim_parser.py +0 -0
  501. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/__init__.py +0 -0
  502. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/base_db.py +0 -0
  503. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
  504. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
  505. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/file_system.py +0 -0
  506. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
  507. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/dgs/__init__.py +0 -0
  508. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
  509. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/epc/__init__.py +0 -0
  510. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/epc/epc_parser.py +0 -0
  511. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/file_system.py +0 -0
  512. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/__init__.py +0 -0
  513. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/catalogue.py +0 -0
  514. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
  515. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/excel_interface.py +0 -0
  516. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
  517. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
  518. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
  519. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/pack_unpack.py +0 -0
  520. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/remote.py +0 -0
  521. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/results_export.py +0 -0
  522. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
  523. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/gridcal/zip_interface.py +0 -0
  524. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/__init__.py +0 -0
  525. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/matpower_branch_definitions.py +0 -0
  526. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/matpower_bus_definitions.py +0 -0
  527. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/matpower_gen_definitions.py +0 -0
  528. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/matpower_parser.py +0 -0
  529. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/matpower/matpower_storage_definitions.py +0 -0
  530. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/others/__init__.py +0 -0
  531. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/others/dpx_parser.py +0 -0
  532. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/others/ipa_parser.py +0 -0
  533. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/others/plx_parser.py +0 -0
  534. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
  535. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/__init__.py +0 -0
  536. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
  537. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/area.py +0 -0
  538. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/branch.py +0 -0
  539. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/bus.py +0 -0
  540. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/facts.py +0 -0
  541. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
  542. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/generator.py +0 -0
  543. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
  544. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
  545. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
  546. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/load.py +0 -0
  547. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/node.py +0 -0
  548. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/owner.py +0 -0
  549. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
  550. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
  551. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/substation.py +0 -0
  552. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
  553. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
  554. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
  555. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
  556. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
  557. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/devices/zone.py +0 -0
  558. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
  559. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/raw_functions.py +0 -0
  560. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
  561. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/LICENSE.txt +0 -0
  562. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
  563. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
  564. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ATC/available_transfer_capacity_options.py +0 -0
  565. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +0 -0
  566. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
  567. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
  568. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Clustering/clustering_driver.py +0 -0
  569. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
  570. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
  571. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
  572. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
  573. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
  574. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +0 -0
  575. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
  576. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +0 -0
  577. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +0 -0
  578. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
  579. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
  580. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +0 -0
  581. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
  582. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
  583. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
  584. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +0 -0
  585. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
  586. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
  587. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
  588. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/__init__.py +0 -0
  589. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/ac_jacobian.py +0 -0
  590. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/acdc_jacobian.py +0 -0
  591. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/csc_derivatives.py +0 -0
  592. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/csr_derivatives.py +0 -0
  593. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Derivatives/matpower_derivatives.py +0 -0
  594. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
  595. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
  596. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
  597. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
  598. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
  599. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/NSGA_3.py +0 -0
  600. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/__init__.py +0 -0
  601. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/mixed_variable_NSGA_2.py +0 -0
  602. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/random_eval.py +0 -0
  603. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/stop_crits.py +0 -0
  604. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
  605. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
  606. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
  607. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
  608. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
  609. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +0 -0
  610. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
  611. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
  612. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
  613. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
  614. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
  615. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_driver.py +0 -0
  616. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_opf.py +0 -0
  617. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
  618. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
  619. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +0 -0
  620. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
  621. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NodalCapacity/__init__.py +0 -0
  622. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_options.py +0 -0
  623. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_driver.py +0 -0
  624. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_results.py +0 -0
  625. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
  626. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +0 -0
  627. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_autodif.py +0 -0
  628. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
  629. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
  630. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +0 -0
  631. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/opf_driver.py +0 -0
  632. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/opf_options.py +0 -0
  633. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
  634. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +0 -0
  635. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/opf_ts_results.py +0 -0
  636. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
  637. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
  638. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
  639. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
  640. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
  641. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
  642. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
  643. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
  644. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquadt_fx.py +0 -0
  645. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
  646. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/powell_fx.py +0 -0
  647. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
  648. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
  649. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +0 -0
  650. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +0 -0
  651. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +0 -0
  652. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +0 -0
  653. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
  654. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
  655. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
  656. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
  657. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +0 -0
  658. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_options.py +0 -0
  659. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
  660. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
  661. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
  662. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +0 -0
  663. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
  664. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
  665. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +0 -0
  666. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/__init__.py +0 -0
  667. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/blackout_driver.py +0 -0
  668. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
  669. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -0
  670. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/reliability_iterable.py +0 -0
  671. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +0 -0
  672. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
  673. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
  674. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
  675. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
  676. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
  677. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +0 -0
  678. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/__init__.py +0 -0
  679. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/driver_template.py +0 -0
  680. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/driver_types.py +0 -0
  681. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/options_template.py +0 -0
  682. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/results_table.py +0 -0
  683. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/results_template.py +0 -0
  684. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Simulations/types.py +0 -0
  685. {GridCalEngine-5.1.52/GridCalEngine/ThirdParty → GridCalEngine-5.1.54/GridCalEngine/Topology}/__init__.py +0 -0
  686. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Topology/admittance_matrices.py +0 -0
  687. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Topology/detect_substations.py +0 -0
  688. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Topology/simulation_indices.py +0 -0
  689. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Topology/topology.py +0 -0
  690. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Topology/topology_processor.py +0 -0
  691. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
  692. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
  693. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
  694. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
  695. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
  696. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
  697. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
  698. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
  699. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
  700. {GridCalEngine-5.1.52/GridCalEngine/ThirdParty/pulp/model → GridCalEngine-5.1.54/GridCalEngine/Utils/MIP}/__init__.py +0 -0
  701. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/ortools_interface.py +0 -0
  702. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
  703. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_pareto.py +0 -0
  704. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_scaled.py +0 -0
  705. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/MVRSM_original.py +0 -0
  706. {GridCalEngine-5.1.52/GridCalEngine/Topology → GridCalEngine-5.1.54/GridCalEngine/Utils/NumericalMethods}/__init__.py +0 -0
  707. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
  708. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/common.py +0 -0
  709. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/ips.py +0 -0
  710. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
  711. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
  712. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
  713. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
  714. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/non_dominated_sorting.py +0 -0
  715. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/nsga3.py +0 -0
  716. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/numerical_stability.py +0 -0
  717. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
  718. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
  719. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
  720. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
  721. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/csc.py +0 -0
  722. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/csc2.py +0 -0
  723. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
  724. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/sparse_array.py +0 -0
  725. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/Sparse/utils.py +0 -0
  726. {GridCalEngine-5.1.52/GridCalEngine/Utils/MIP → GridCalEngine-5.1.54/GridCalEngine/Utils/ThirdParty/SyntheticNetworks}/__init__.py +0 -0
  727. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
  728. {GridCalEngine-5.1.52/GridCalEngine/Utils/NumericalMethods → GridCalEngine-5.1.54/GridCalEngine/Utils/ThirdParty}/__init__.py +0 -0
  729. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/apis/__init__.py +0 -0
  730. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/constants.py +0 -0
  731. {GridCalEngine-5.1.52/GridCalEngine/Utils/ThirdParty/SyntheticNetworks → GridCalEngine-5.1.54/GridCalEngine/Utils/ThirdParty/pulp/model}/__init__.py +0 -0
  732. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/paths.py +0 -0
  733. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/sparse.py +0 -0
  734. {GridCalEngine-5.1.52/GridCalEngine → GridCalEngine-5.1.54/GridCalEngine/Utils}/ThirdParty/pulp/utilities.py +0 -0
  735. {GridCalEngine-5.1.52/GridCalEngine/Utils/ThirdParty → GridCalEngine-5.1.54/GridCalEngine/Utils}/__init__.py +0 -0
  736. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/scores.py +0 -0
  737. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/Utils/zip_file_mgmt.py +0 -0
  738. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/__init__.py +0 -0
  739. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/api.py +0 -0
  740. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/basic_structures.py +0 -0
  741. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/GridCalEngine/data_logger.py +0 -0
  742. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/setup.cfg +0 -0
  743. {GridCalEngine-5.1.52 → GridCalEngine-5.1.54}/setup.py +0 -0
@@ -14,13 +14,15 @@
14
14
  # You should have received a copy of the GNU Lesser General Public License
15
15
  # along with this program; if not, write to the Free Software Foundation,
16
16
  # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17
+ from __future__ import annotations
18
+
17
19
  import numpy as np
18
20
  import pandas as pd
19
21
  import scipy.sparse as sp
20
22
  import GridCalEngine.Topology.topology as tp
21
23
  from GridCalEngine.enumerations import WindingsConnection
22
24
  from GridCalEngine.Utils.Sparse.sparse_array import SparseObjectArray
23
- from GridCalEngine.basic_structures import Vec, IntVec, StrVec, ObjVec, CxVec, BoolVec
25
+ from GridCalEngine.basic_structures import Vec, IntVec, StrVec, ObjVec, CxVec, BoolVec, Logger
24
26
  from typing import List, Tuple, Dict, Set
25
27
 
26
28
 
@@ -126,11 +128,12 @@ class BranchData:
126
128
 
127
129
  return self.nelm
128
130
 
129
- def slice(self, elm_idx: IntVec, bus_idx: IntVec) -> "BranchData":
131
+ def slice(self, elm_idx: IntVec, bus_idx: IntVec, logger: Logger | None) -> "BranchData":
130
132
  """
131
133
  Slice branch data by given indices
132
134
  :param elm_idx: array of branch indices
133
135
  :param bus_idx: array of bus indices
136
+ :param logger: Logger
134
137
  :return: new BranchData instance
135
138
  """
136
139
 
@@ -204,8 +207,21 @@ class BranchData:
204
207
  data.T = self.T[elm_idx]
205
208
  bus_map: Dict[int, int] = {o: i for i, o in enumerate(bus_idx)}
206
209
  for k in range(data.nelm):
207
- data.F[k] = bus_map[data.F[k]]
208
- data.T[k] = bus_map[data.T[k]]
210
+ data.F[k] = bus_map.get(data.F[k], -1)
211
+
212
+ if data.F[k] == -1:
213
+ if logger is not None:
214
+ logger.add_error(f"Branch {k}, {self.names[k]} if connected to a disconnected node",
215
+ value=data.F[k])
216
+ data.active[k] = 0
217
+
218
+ data.T[k] = bus_map.get(data.T[k], -1)
219
+
220
+ if data.T[k] == -1:
221
+ if logger is not None:
222
+ logger.add_error(f"Branch {k}, {self.names[k]} if connected to a disconnected node",
223
+ value=data.T[k])
224
+ data.active[k] = 0
209
225
 
210
226
  data.overload_cost = self.overload_cost[elm_idx]
211
227
 
@@ -24,7 +24,7 @@ from GridCalEngine.Devices import RemedialAction
24
24
  from GridCalEngine.basic_structures import Logger
25
25
  from GridCalEngine.Devices.multi_circuit import MultiCircuit
26
26
  from GridCalEngine.basic_structures import Vec, IntVec, CxVec
27
- from GridCalEngine.enumerations import BranchImpedanceMode, BusMode
27
+ from GridCalEngine.enumerations import BranchImpedanceMode, BusMode, ContingencyOperationTypes
28
28
  import GridCalEngine.Topology.topology as tp
29
29
  import GridCalEngine.Topology.simulation_indices as si
30
30
 
@@ -494,12 +494,12 @@ class NumericalCircuit:
494
494
  structure, idx = self.structs_dict.get(cnt.device_idtag, (None, 0))
495
495
 
496
496
  if structure is not None:
497
- if cnt.prop == 'active':
497
+ if cnt.prop == ContingencyOperationTypes.Active:
498
498
  if revert:
499
499
  structure.active[idx] = int(not bool(cnt.value))
500
500
  else:
501
501
  structure.active[idx] = int(cnt.value)
502
- elif cnt.prop == '%':
502
+ elif cnt.prop == ContingencyOperationTypes.PowerPercentage:
503
503
  if revert:
504
504
  structure.p[idx] /= float(cnt.value / 100.0)
505
505
  else:
@@ -528,12 +528,12 @@ class NumericalCircuit:
528
528
  structure, idx = self.structs_dict.get(cnt.device_idtag, (None, 0))
529
529
 
530
530
  if structure is not None:
531
- if cnt.prop == 'active':
531
+ if cnt.prop == ContingencyOperationTypes.Active:
532
532
  if revert:
533
533
  structure.active[idx] = int(not bool(cnt.value))
534
534
  else:
535
535
  structure.active[idx] = int(cnt.value)
536
- elif cnt.prop == '%':
536
+ elif cnt.prop == ContingencyOperationTypes.PowerPercentage:
537
537
  # TODO Cambiar el acceso a P por una función (o función que incremente- decremente porcentaje)
538
538
  assert not isinstance(structure, ds.HvdcData) # TODO Arreglar esto
539
539
  dev_injections = np.zeros(structure.size())
@@ -1834,13 +1834,17 @@ class NumericalCircuit:
1834
1834
  return df
1835
1835
 
1836
1836
  def get_island(self, bus_idx: IntVec,
1837
- consider_hvdc_as_island_links: bool = False) -> "NumericalCircuit":
1837
+ consider_hvdc_as_island_links: bool = False,
1838
+ logger: Logger | None = None) -> "NumericalCircuit":
1838
1839
  """
1839
1840
  Get the island corresponding to the given buses
1840
1841
  :param bus_idx: array of bus indices
1841
1842
  :param consider_hvdc_as_island_links: Does the HVDCLine works for the topology as a normal line?
1843
+ :param logger: Logger
1842
1844
  :return: SnapshotData
1843
1845
  """
1846
+ if logger is None:
1847
+ logger = Logger()
1844
1848
 
1845
1849
  # if the island is the same as the original bus indices, no slicing is needed
1846
1850
  if len(bus_idx) == len(self.bus_data.original_idx):
@@ -1875,7 +1879,7 @@ class NumericalCircuit:
1875
1879
 
1876
1880
  # slice data
1877
1881
  nc.bus_data = self.bus_data.slice(elm_idx=bus_idx)
1878
- nc.branch_data = self.branch_data.slice(elm_idx=br_idx, bus_idx=bus_idx)
1882
+ nc.branch_data = self.branch_data.slice(elm_idx=br_idx, bus_idx=bus_idx, logger=logger)
1879
1883
 
1880
1884
  nc.load_data = self.load_data.slice(elm_idx=load_idx, bus_idx=bus_idx)
1881
1885
  nc.battery_data = self.battery_data.slice(elm_idx=batt_idx, bus_idx=bus_idx)
@@ -1890,13 +1894,17 @@ class NumericalCircuit:
1890
1894
 
1891
1895
  def split_into_islands(self,
1892
1896
  ignore_single_node_islands: bool = False,
1893
- consider_hvdc_as_island_links: bool = False) -> List["NumericalCircuit"]:
1897
+ consider_hvdc_as_island_links: bool = False,
1898
+ logger: Logger | None = None) -> List["NumericalCircuit"]:
1894
1899
  """
1895
1900
  Split circuit into islands
1896
1901
  :param ignore_single_node_islands: ignore islands composed of only one bus
1897
1902
  :param consider_hvdc_as_island_links: Does the HVDCLine works for the topology as a normal line?
1903
+ :param logger: Logger
1898
1904
  :return: List[NumericCircuit]
1899
1905
  """
1906
+ if logger is None:
1907
+ logger = Logger()
1900
1908
 
1901
1909
  # find the matching islands
1902
1910
  adj = self.compute_adjacency_matrix(consider_hvdc_as_island_links=consider_hvdc_as_island_links)
@@ -1907,10 +1915,14 @@ class NumericalCircuit:
1907
1915
  for bus_idx in idx_islands:
1908
1916
  if ignore_single_node_islands:
1909
1917
  if len(bus_idx) > 1:
1910
- island = self.get_island(bus_idx, consider_hvdc_as_island_links=consider_hvdc_as_island_links)
1918
+ island = self.get_island(bus_idx,
1919
+ consider_hvdc_as_island_links=consider_hvdc_as_island_links,
1920
+ logger=logger)
1911
1921
  circuit_islands.append(island)
1912
1922
  else:
1913
- island = self.get_island(bus_idx, consider_hvdc_as_island_links=consider_hvdc_as_island_links)
1923
+ island = self.get_island(bus_idx,
1924
+ consider_hvdc_as_island_links=consider_hvdc_as_island_links,
1925
+ logger=logger)
1914
1926
  circuit_islands.append(island)
1915
1927
 
1916
1928
  return circuit_islands
@@ -18,6 +18,7 @@
18
18
  from typing import Union
19
19
  from GridCalEngine.Devices.Parents.editable_device import EditableDevice, DeviceType
20
20
  from GridCalEngine.Devices.Aggregation.contingency_group import ContingencyGroup
21
+ from GridCalEngine.enumerations import ContingencyOperationTypes
21
22
 
22
23
 
23
24
  class Contingency(EditableDevice):
@@ -29,7 +30,9 @@ class Contingency(EditableDevice):
29
30
  idtag: Union[str, None] = None,
30
31
  device_idtag='',
31
32
  name="Contingency",
32
- code='', prop='active', value=0.0,
33
+ code='',
34
+ prop: ContingencyOperationTypes = ContingencyOperationTypes.Active,
35
+ value=0.0,
33
36
  group: Union[None, ContingencyGroup] = None):
34
37
  """
35
38
  Contingency
@@ -49,13 +52,13 @@ class Contingency(EditableDevice):
49
52
 
50
53
  # Contingency type
51
54
  self.device_idtag = device_idtag
52
- self._prop = prop
55
+ self._prop: ContingencyOperationTypes = prop
53
56
  self._value = value
54
57
  self._group: ContingencyGroup = group
55
- self._allowed_properties = ['active', '%']
56
58
 
57
59
  self.register(key='device_idtag', units='', tpe=str, definition='Unique ID', editable=False)
58
- self.register(key='prop', units='', tpe=str, definition='Name of the object property to change (active, %)')
60
+ self.register(key='prop', units='', tpe=ContingencyOperationTypes,
61
+ definition=f'Object property to change')
59
62
  self.register(key='value', units='', tpe=float, definition='Property value')
60
63
  self.register(key='group', units='', tpe=DeviceType.ContingencyGroupDevice, definition='Contingency group')
61
64
 
@@ -68,19 +71,19 @@ class Contingency(EditableDevice):
68
71
  self._name = val
69
72
 
70
73
  @property
71
- def prop(self) -> str:
74
+ def prop(self) -> ContingencyOperationTypes:
72
75
  """
73
76
  Property to modify when contingency is triggered out
74
- :return:
77
+ :return: ContingencyOperationsTypes
75
78
  """
76
79
  return self._prop
77
80
 
78
81
  @prop.setter
79
- def prop(self, val: str):
80
- if val in self._allowed_properties:
82
+ def prop(self, val: ContingencyOperationTypes):
83
+ if isinstance(val, ContingencyOperationTypes):
81
84
  self._prop = val
82
85
  else:
83
- print(f"Not allowed property {val}, allowed: " + "".join(self._allowed_properties))
86
+ print(f"Not allowed property {val}")
84
87
 
85
88
  @property
86
89
  def value(self) -> float:
@@ -18,6 +18,7 @@
18
18
  from typing import Union
19
19
  from GridCalEngine.Devices.Parents.editable_device import EditableDevice, DeviceType
20
20
  from GridCalEngine.Devices.Aggregation.remedial_action_group import RemedialActionGroup
21
+ from GridCalEngine.enumerations import ContingencyOperationTypes
21
22
 
22
23
 
23
24
  class RemedialAction(EditableDevice):
@@ -30,7 +31,7 @@ class RemedialAction(EditableDevice):
30
31
  device_idtag='',
31
32
  name="Remedial action",
32
33
  code='',
33
- prop='active',
34
+ prop: ContingencyOperationTypes = ContingencyOperationTypes.Active,
34
35
  value=0.0,
35
36
  group: Union[None, RemedialActionGroup] = None):
36
37
  """
@@ -51,13 +52,13 @@ class RemedialAction(EditableDevice):
51
52
 
52
53
  # Contingency type
53
54
  self.device_idtag = device_idtag
54
- self._prop = prop
55
+ self._prop: ContingencyOperationTypes = prop
55
56
  self._value = value
56
57
  self._group: RemedialActionGroup = group
57
- self._allowed_properties = ['active', '%']
58
58
 
59
59
  self.register(key='device_idtag', units='', tpe=str, definition='Unique ID', editable=False)
60
- self.register(key='prop', units='', tpe=str, definition='Name of the object property to change (active, %)')
60
+ self.register(key='prop', units='', tpe=ContingencyOperationTypes,
61
+ definition=f'Object property to change')
61
62
  self.register(key='value', units='', tpe=float, definition='Property value')
62
63
  self.register(key='group', units='', tpe=DeviceType.RemedialActionGroupDevice,
63
64
  definition='Remedial action group')
@@ -71,19 +72,19 @@ class RemedialAction(EditableDevice):
71
72
  self._name = val
72
73
 
73
74
  @property
74
- def prop(self) -> str:
75
+ def prop(self) -> ContingencyOperationTypes:
75
76
  """
76
77
  Property to modify when contingency is triggered out
77
- :return:
78
+ :return: ContingencyOperationsTypes
78
79
  """
79
80
  return self._prop
80
81
 
81
82
  @prop.setter
82
- def prop(self, val: str):
83
- if val in self._allowed_properties:
83
+ def prop(self, val: ContingencyOperationTypes):
84
+ if isinstance(val, ContingencyOperationTypes):
84
85
  self._prop = val
85
86
  else:
86
- print(f"Not allowed property {val}, allowed: " + "".join(self._allowed_properties))
87
+ print(f"Not allowed property {val}")
87
88
 
88
89
  @property
89
90
  def value(self) -> float:
@@ -145,7 +145,8 @@ class HvdcLine(BranchParent):
145
145
  overload_cost=1000.0, min_firing_angle_f=-1.0, max_firing_angle_f=1.0, min_firing_angle_t=-1.0,
146
146
  max_firing_angle_t=1.0, contingency_factor=1.0, protection_rating_factor: float = 1.4,
147
147
  control_mode: HvdcControlType = HvdcControlType.type_1_Pset, dispatchable=True, angle_droop=0,
148
- capex=0, opex=0, build_status: BuildStatus = BuildStatus.Commissioned, n_lines: int = 1):
148
+ capex=0, opex=0, build_status: BuildStatus = BuildStatus.Commissioned,
149
+ dc_link_voltage: float = 200):
149
150
  """
150
151
  HVDC Line model
151
152
  :param bus_from: Bus from
@@ -199,6 +200,10 @@ class HvdcLine(BranchParent):
199
200
 
200
201
  self.r = float(r)
201
202
 
203
+ self.dc_link_voltage = float(dc_link_voltage)
204
+
205
+ # self.n_lines = int(n_lines)
206
+
202
207
  self.angle_droop = float(angle_droop)
203
208
 
204
209
  self.loss_factor = float(loss_factor)
@@ -238,8 +243,6 @@ class HvdcLine(BranchParent):
238
243
  self._Vset_t_prof: Vec = Profile(default_value=Vset_t, data_type=float)
239
244
  self._angle_droop_prof: Vec = Profile(default_value=angle_droop, data_type=float)
240
245
 
241
- self.n_lines = n_lines
242
-
243
246
  # Line locations
244
247
  self._locations: LineLocations = LineLocations()
245
248
 
@@ -248,11 +251,16 @@ class HvdcLine(BranchParent):
248
251
  self.register(key='control_mode', units='-', tpe=HvdcControlType, definition='Control type.')
249
252
  self.register(key='Pset', units='MW', tpe=float, definition='Set power flow.', profile_name='Pset_prof')
250
253
  self.register(key='r', units='Ohm', tpe=float, definition='line resistance.')
254
+ self.register(key='dc_link_voltage', units='kV', tpe=float,
255
+ definition='line voltage (only for compatibility, not used in calcs.)')
256
+
251
257
  self.register(key='angle_droop', units='MW/deg', tpe=float, definition='Power/angle rate control',
252
258
  profile_name='angle_droop_prof')
253
- self.register(key='n_lines', units='', tpe=int,
254
- definition='Number of parallel lines between the converter stations. '
255
- 'The rating will be equally divided')
259
+
260
+ # self.register(key='n_lines', units='', tpe=int,
261
+ # definition='Number of parallel lines between the converter stations. '
262
+ # 'The rating will be equally divided')
263
+
256
264
  self.register(key='Vset_f', units='p.u.', tpe=float, definition='Set voltage at the from side',
257
265
  profile_name='Vset_f_prof')
258
266
  self.register(key='Vset_t', units='p.u.', tpe=float, definition='Set voltage at the to side',
@@ -18,6 +18,7 @@
18
18
  from typing import Tuple, Union
19
19
  import numpy as np
20
20
  from GridCalEngine.Devices.Substation.bus import Bus
21
+ from GridCalEngine.Devices.Substation.connectivity_node import ConnectivityNode
21
22
  from GridCalEngine.Devices.Parents.physical_device import PhysicalDevice
22
23
  from GridCalEngine.Devices.Branches.winding import Winding
23
24
  from GridCalEngine.Devices.Branches.transformer_type import get_impedances
@@ -28,6 +29,7 @@ from GridCalEngine.enumerations import DeviceType
28
29
  def delta_to_star(z12: float, z23: float, z31: float) -> Tuple[float, float, float]:
29
30
  """
30
31
  Perform the delta->star transformation
32
+ See: https://www.electronics-tutorials.ws/dccircuits/dcp_10.html
31
33
  :param z12: 1 to 2 delta value
32
34
  :param z23: 2 to 3 delta value
33
35
  :param z31: 3 to 1 delta value
@@ -43,6 +45,23 @@ def delta_to_star(z12: float, z23: float, z31: float) -> Tuple[float, float, flo
43
45
  return 1e-20, 1e-20, 1e-20
44
46
 
45
47
 
48
+ def star_to_delta(z1: float, z2: float, z3: float) -> Tuple[float, float, float]:
49
+ """
50
+ Perform the star->delta transformation
51
+ See: https://www.electronics-tutorials.ws/dccircuits/dcp_10.html
52
+ :param z1: 0->1 impedance
53
+ :param z2: 0->2 impedance
54
+ :param z3: 0->3 impedance
55
+ :return: z12, z23, z31 impedances
56
+ """
57
+ zt = z1 * z2 + z2 * z3 + z3 * z1
58
+ z12 = zt / z3
59
+ z23 = zt / z2
60
+ z31 = zt / z1
61
+
62
+ return z12, z23, z31
63
+
64
+
46
65
  class Transformer3W(PhysicalDevice):
47
66
 
48
67
  def __init__(self, idtag: Union[str, None] = None,
@@ -50,6 +69,10 @@ class Transformer3W(PhysicalDevice):
50
69
  name: str = 'Branch',
51
70
  bus0: Union[None, Bus] = None,
52
71
  bus1: Bus = None, bus2: Bus = None, bus3: Bus = None,
72
+ cn0: Union[None, ConnectivityNode] = None,
73
+ cn1: ConnectivityNode = None,
74
+ cn2: ConnectivityNode = None,
75
+ cn3: ConnectivityNode = None,
53
76
  w1_idtag: Union[str, None] = None,
54
77
  w2_idtag: Union[str, None] = None,
55
78
  w3_idtag: Union[str, None] = None,
@@ -95,10 +118,23 @@ class Transformer3W(PhysicalDevice):
95
118
  bus0.Vnom = 1.0
96
119
  self.bus0 = bus0
97
120
 
121
+ if cn0 is None:
122
+ self.cn0 = ConnectivityNode(name=name + '_cn', Vnom=1.0, internal=True)
123
+ else:
124
+ cn0.is_internal = True
125
+ cn0.Vnom = 1.0
126
+ self.cn0 = cn0
127
+
128
+ self.cn0.default_bus = self.bus0
129
+
98
130
  self._bus1 = bus1
99
131
  self._bus2 = bus2
100
132
  self._bus3 = bus3
101
133
 
134
+ self._cn1 = cn1
135
+ self._cn2 = cn2
136
+ self._cn3 = cn3
137
+
102
138
  self.active = bool(active)
103
139
  self._active_prof = Profile(default_value=self.active, data_type=bool)
104
140
 
@@ -130,9 +166,21 @@ class Transformer3W(PhysicalDevice):
130
166
  self._Pfe: float = 0.0
131
167
  self._I0: float = 0.0
132
168
 
133
- self._winding1 = Winding(bus_from=self.bus0, idtag=w1_idtag, bus_to=bus1, HV=V1, LV=1.0, name=name + "_W1")
134
- self._winding2 = Winding(bus_from=self.bus0, idtag=w2_idtag, bus_to=bus2, HV=V2, LV=1.0, name=name + "_W2")
135
- self._winding3 = Winding(bus_from=self.bus0, idtag=w3_idtag, bus_to=bus3, HV=V3, LV=1.0, name=name + "_W3")
169
+ self._winding1 = Winding(bus_from=self.bus0, idtag=w1_idtag,
170
+ bus_to=bus1,
171
+ cn_from=self.cn0,
172
+ cn_to=self.cn1,
173
+ HV=V1, LV=1.0, name=name + "_W1")
174
+ self._winding2 = Winding(bus_from=self.bus0, idtag=w2_idtag,
175
+ bus_to=bus2,
176
+ cn_from=self.cn0,
177
+ cn_to=self.cn2,
178
+ HV=V2, LV=1.0, name=name + "_W2")
179
+ self._winding3 = Winding(bus_from=self.bus0, idtag=w3_idtag,
180
+ bus_to=bus3,
181
+ cn_from=self.cn0,
182
+ cn_to=self.cn3,
183
+ HV=V3, LV=1.0, name=name + "_W3")
136
184
 
137
185
  self.x = float(x)
138
186
  self.y = float(y)
@@ -143,6 +191,16 @@ class Transformer3W(PhysicalDevice):
143
191
  self.register(key='bus2', units='', tpe=DeviceType.BusDevice, definition='Bus 2.', editable=False)
144
192
  self.register(key='bus3', units='', tpe=DeviceType.BusDevice, definition='Bus 3.', editable=False)
145
193
 
194
+ self.register(key='cn0', units='', tpe=DeviceType.ConnectivityNodeDevice,
195
+ definition='Middle point connection cn.',
196
+ editable=False)
197
+ self.register(key='cn1', units='', tpe=DeviceType.ConnectivityNodeDevice, definition='ConnectivityNode 1.',
198
+ editable=False)
199
+ self.register(key='cn2', units='', tpe=DeviceType.ConnectivityNodeDevice, definition='ConnectivityNode 2.',
200
+ editable=False)
201
+ self.register(key='cn3', units='', tpe=DeviceType.ConnectivityNodeDevice, definition='ConnectivityNode 3.',
202
+ editable=False)
203
+
146
204
  self.register('active', units="", tpe=bool, definition='Is active?', profile_name="active_prof")
147
205
 
148
206
  self.register(key='winding1', units='', tpe=DeviceType.WindingDevice, definition='Winding 1.', editable=False)
@@ -269,6 +327,42 @@ class Transformer3W(PhysicalDevice):
269
327
  if obj is not None:
270
328
  self.winding3.set_hv_and_lv(self.winding3.HV, self.winding3.LV)
271
329
 
330
+ @property
331
+ def cn1(self) -> ConnectivityNode:
332
+ """
333
+ ConnectivityNode 1
334
+ """
335
+ return self._cn1
336
+
337
+ @cn1.setter
338
+ def cn1(self, obj: ConnectivityNode):
339
+ self._cn1 = obj
340
+ self.winding1.cn_to = obj
341
+
342
+ @property
343
+ def cn2(self) -> ConnectivityNode:
344
+ """
345
+ ConnectivityNode 2
346
+ """
347
+ return self._cn2
348
+
349
+ @cn2.setter
350
+ def cn2(self, obj: ConnectivityNode):
351
+ self._cn2 = obj
352
+ self.winding2.cn_to = obj
353
+
354
+ @property
355
+ def cn3(self) -> ConnectivityNode:
356
+ """
357
+ ConnectivityNode 3
358
+ """
359
+ return self._cn3
360
+
361
+ @cn3.setter
362
+ def cn3(self, obj: ConnectivityNode):
363
+ self._cn3 = obj
364
+ self.winding3.cn_to = obj
365
+
272
366
  @property
273
367
  def V1(self) -> float:
274
368
  """
@@ -326,6 +420,28 @@ class Transformer3W(PhysicalDevice):
326
420
  self.winding3.X = x3
327
421
  self.winding3.rate = self.rate3
328
422
 
423
+ def fill_from_star(self, r1: float, r2: float, r3: float, x1: float, x2: float, x3: float) -> None:
424
+ """
425
+ Fill from Star values
426
+ :param r1: resistance of the branch 1 (p.u.)
427
+ :param r2: resistance of the branch 2 (p.u.)
428
+ :param r3: resistance of the branch 3 (p.u.)
429
+ :param x1: reactance of the branch 1 (p.u.)
430
+ :param x2: reactance of the branch 2 (p.u.)
431
+ :param x3: reactance of the branch 3 (p.u.)
432
+ """
433
+ self._r12, self._r23, self._r31 = star_to_delta(z1=r1, z2=r2, z3=r3)
434
+ self._x12, self._x23, self._x31 = star_to_delta(z1=x1, z2=x2, z3=x3)
435
+
436
+ self.winding1.R = r1
437
+ self.winding1.X = x1
438
+
439
+ self.winding2.R = r2
440
+ self.winding2.X = x2
441
+
442
+ self.winding3.R = r3
443
+ self.winding3.X = x3
444
+
329
445
  @property
330
446
  def r12(self):
331
447
  """
@@ -135,6 +135,7 @@ class BaseDiagram:
135
135
  max_branch_width=5,
136
136
  min_bus_width=20,
137
137
  max_bus_width=20,
138
+ arrow_size=20,
138
139
  palette: Colormaps = Colormaps.GridCal,
139
140
  default_bus_voltage: float = 10):
140
141
  """
@@ -147,6 +148,7 @@ class BaseDiagram:
147
148
  :param max_branch_width:
148
149
  :param min_bus_width:
149
150
  :param max_bus_width:
151
+ :param arrow_size:
150
152
  :param palette:
151
153
  :param default_bus_voltage:
152
154
  """
@@ -169,6 +171,7 @@ class BaseDiagram:
169
171
  self._max_branch_width: float = max_branch_width
170
172
  self._min_bus_width: float = min_bus_width
171
173
  self._max_bus_width: float = max_bus_width
174
+ self._arrow_size: float = arrow_size
172
175
 
173
176
  self._palette = palette
174
177
  self._default_bus_voltage: float = default_bus_voltage
@@ -188,6 +191,10 @@ class BaseDiagram:
188
191
  # min_branch_width property
189
192
  @property
190
193
  def min_branch_width(self) -> float:
194
+ """
195
+
196
+ :return:
197
+ """
191
198
  return self._min_branch_width
192
199
 
193
200
  @min_branch_width.setter
@@ -197,6 +204,10 @@ class BaseDiagram:
197
204
  # max_branch_width property
198
205
  @property
199
206
  def max_branch_width(self) -> float:
207
+ """
208
+
209
+ :return:
210
+ """
200
211
  return self._max_branch_width
201
212
 
202
213
  @max_branch_width.setter
@@ -206,24 +217,48 @@ class BaseDiagram:
206
217
  # min_bus_width property
207
218
  @property
208
219
  def min_bus_width(self) -> float:
220
+ """
221
+
222
+ :return:
223
+ """
209
224
  return self._min_bus_width
210
225
 
211
226
  @min_bus_width.setter
212
227
  def min_bus_width(self, value: float):
213
228
  self._min_bus_width = value
214
229
 
215
- # max_bus_width property
230
+
216
231
  @property
217
232
  def max_bus_width(self) -> float:
233
+ """
234
+
235
+ :return:
236
+ """
218
237
  return self._max_bus_width
219
238
 
220
239
  @max_bus_width.setter
221
240
  def max_bus_width(self, value: float):
222
241
  self._max_bus_width = value
223
242
 
243
+ @property
244
+ def arrow_size(self) -> float:
245
+ """
246
+
247
+ :return:
248
+ """
249
+ return self._arrow_size
250
+
251
+ @arrow_size.setter
252
+ def arrow_size(self, value: float):
253
+ self._arrow_size = value
254
+
224
255
  # palette property
225
256
  @property
226
257
  def palette(self) -> Colormaps:
258
+ """
259
+
260
+ :return:
261
+ """
227
262
  return self._palette
228
263
 
229
264
  @palette.setter
@@ -234,6 +269,10 @@ class BaseDiagram:
234
269
  # default_bus_voltage property
235
270
  @property
236
271
  def default_bus_voltage(self) -> float:
272
+ """
273
+
274
+ :return:
275
+ """
237
276
  return self._default_bus_voltage
238
277
 
239
278
  @default_bus_voltage.setter
@@ -322,6 +361,8 @@ class BaseDiagram:
322
361
  "max_branch_width": self.max_branch_width,
323
362
  "min_bus_width": self.min_bus_width,
324
363
  "max_bus_width": self.max_bus_width,
364
+ "arrow_size": self.arrow_size,
365
+
325
366
  "palette": self.palette.value,
326
367
  "default_bus_voltage": self.default_bus_voltage,
327
368
  'data': data}
@@ -345,6 +386,7 @@ class BaseDiagram:
345
386
  self.max_branch_width: float = data.get("max_branch_width", 5)
346
387
  self.min_bus_width: float = data.get("min_bus_width", 20)
347
388
  self.max_bus_width: float = data.get("max_bus_width", 20)
389
+ self.arrow_size: float = data.get("arrow_size", 20)
348
390
  self.palette = Colormaps(data.get("palette", 'GridCal'))
349
391
  self.default_bus_voltage = data.get("default_bus_voltage", 10)
350
392
 
@@ -473,7 +515,8 @@ class BaseDiagram:
473
515
  min_branch_width: int = 5,
474
516
  max_branch_width=5,
475
517
  min_bus_width=20,
476
- max_bus_width=20):
518
+ max_bus_width=20,
519
+ arrow_size=20):
477
520
  """
478
521
  Set the size constraints
479
522
  :param use_flow_based_width:
@@ -481,15 +524,11 @@ class BaseDiagram:
481
524
  :param max_branch_width:
482
525
  :param min_bus_width:
483
526
  :param max_bus_width:
527
+ :param arrow_size:
484
528
  """
485
529
  self.use_flow_based_width: bool = use_flow_based_width
486
530
  self.min_branch_width: float = min_branch_width
487
531
  self.max_branch_width: float = max_branch_width
488
532
  self.min_bus_width: float = min_bus_width
489
533
  self.max_bus_width: float = max_bus_width
490
-
491
- # print(f"{self.use_flow_based_width}, "
492
- # f"{self.min_branch_width}, "
493
- # f"{self.max_branch_width}, "
494
- # f"{self.min_bus_width}, "
495
- # f"{self.max_bus_width}")
534
+ self.arrow_size = arrow_size
@@ -25,7 +25,7 @@ from GridCalEngine.enumerations import (DeviceType, TimeFrame, BuildStatus, Wind
25
25
  CpfParametrization, CpfStopAt, InvestmentEvaluationMethod, SolverType,
26
26
  InvestmentsEvaluationObjectives, NodalCapacityMethod, TimeGrouping,
27
27
  ZonalGrouping, MIPSolvers, AcOpfMode, SubstationTypes,
28
- BranchImpedanceMode, FaultType, TapChangerTypes)
28
+ BranchImpedanceMode, FaultType, TapChangerTypes, ContingencyOperationTypes)
29
29
 
30
30
  # types that can be assigned to a GridCal property
31
31
  GCPROP_TYPES = Union[
@@ -56,7 +56,8 @@ GCPROP_TYPES = Union[
56
56
  Type[BranchImpedanceMode],
57
57
  Type[FaultType],
58
58
  Type[TapChangerTypes],
59
- Type[SubstationTypes]
59
+ Type[SubstationTypes],
60
+ Type[ContingencyOperationTypes]
60
61
  ]
61
62
 
62
63