GridCalEngine 5.1.39__tar.gz → 5.1.41__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 (719) hide show
  1. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/circuit_to_bentayga.py +12 -0
  2. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/circuit_to_newton_pa.py +6 -0
  3. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/circuit_to_pgm.py +6 -0
  4. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/numerical_circuit.py +8 -0
  5. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/assets.py +14 -0
  6. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/multi_circuit.py +2 -2
  7. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/profile.py +24 -17
  8. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/__init__.py +3 -0
  9. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/remote.py +69 -1
  10. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +19 -1
  11. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +59 -0
  12. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +48 -4
  13. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +6 -0
  14. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +6 -0
  15. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/sparse_array.py +5 -5
  16. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/__version__.py +1 -1
  17. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/enumerations.py +7 -0
  18. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/PKG-INFO +1 -1
  19. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/__init__.py +0 -0
  20. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/circuit_to_data.py +0 -0
  21. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
  22. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/__init__.py +0 -0
  23. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/battery_data.py +0 -0
  24. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/branch_data.py +0 -0
  25. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/bus_data.py +0 -0
  26. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
  27. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
  28. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
  29. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
  30. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
  31. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/generator_data.py +0 -0
  32. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
  33. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/load_data.py +0 -0
  34. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/shunt_data.py +0 -0
  35. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/DataStructures/vsc_data.py +0 -0
  36. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
  37. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/area.py +0 -0
  38. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
  39. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/community.py +0 -0
  40. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/contingency.py +0 -0
  41. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
  42. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/country.py +0 -0
  43. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/inter_aggregation_info.py +0 -0
  44. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/investment.py +0 -0
  45. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/investments_group.py +0 -0
  46. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
  47. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
  48. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/region.py +0 -0
  49. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
  50. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Associations/__init__.py +0 -0
  51. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Associations/association.py +0 -0
  52. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Associations/emission_gas.py +0 -0
  53. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Associations/fuel.py +0 -0
  54. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Associations/technology.py +0 -0
  55. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/__init__.py +0 -0
  56. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/branch.py +0 -0
  57. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
  58. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/hvdc_line.py +0 -0
  59. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/line.py +0 -0
  60. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/line_locations.py +0 -0
  61. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/overhead_line_type.py +0 -0
  62. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
  63. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
  64. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/switch.py +0 -0
  65. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
  66. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/transformer.py +0 -0
  67. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/transformer3w.py +0 -0
  68. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
  69. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
  70. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/upfc.py +0 -0
  71. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/vsc.py +0 -0
  72. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/winding.py +0 -0
  73. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Branches/wire.py +0 -0
  74. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
  75. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/base_diagram.py +0 -0
  76. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/graphic_location.py +0 -0
  77. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
  78. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
  79. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/palettes.py +0 -0
  80. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
  81. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
  82. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
  83. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
  84. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
  85. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
  86. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
  87. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
  88. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/__init__.py +0 -0
  89. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/battery.py +0 -0
  90. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
  91. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
  92. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
  93. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/generator.py +0 -0
  94. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
  95. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/load.py +0 -0
  96. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/shunt.py +0 -0
  97. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
  98. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/__init__.py +0 -0
  99. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
  100. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
  101. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/editable_device.py +0 -0
  102. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
  103. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
  104. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
  105. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/physical_device.py +0 -0
  106. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
  107. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/__init__.py +0 -0
  108. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/bus.py +0 -0
  109. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/busbar.py +0 -0
  110. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
  111. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/substation.py +0 -0
  112. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
  113. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/__init__.py +0 -0
  114. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/comparison.py +0 -0
  115. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/measurement.py +0 -0
  116. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Devices/types.py +0 -0
  117. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/base/__init__.py +0 -0
  118. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/base/base_circuit.py +0 -0
  119. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/base/base_device.py +0 -0
  120. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/base/base_property.py +0 -0
  121. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/base/units.py +0 -0
  122. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/__init__.py +0 -0
  123. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
  124. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
  125. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/__init__.py +0 -0
  126. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_2_4_15_assets.py +0 -0
  127. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_3_0_0_assets.py +0 -0
  128. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
  129. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +0 -0
  130. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
  131. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
  132. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +0 -0
  133. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_poperty.py +0 -0
  134. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +0 -0
  135. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
  136. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
  137. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
  138. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
  139. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
  140. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
  141. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
  142. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
  143. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
  144. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
  145. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
  146. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
  147. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
  148. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
  149. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
  150. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
  151. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
  152. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
  153. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
  154. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
  155. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
  156. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
  157. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
  158. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
  159. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
  160. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
  161. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
  162. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
  163. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
  164. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
  165. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
  166. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
  167. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
  168. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
  169. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
  170. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
  171. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
  172. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
  173. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
  174. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
  175. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
  176. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
  177. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
  178. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
  179. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
  180. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
  181. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
  182. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
  183. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
  184. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
  185. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
  186. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
  187. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
  188. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
  189. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
  190. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
  191. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
  192. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
  193. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
  194. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
  195. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
  196. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
  197. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
  198. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
  199. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
  200. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
  201. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
  202. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
  203. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
  204. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
  205. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
  206. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
  207. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
  208. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
  209. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
  210. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
  211. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
  212. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
  213. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
  214. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
  215. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
  216. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
  217. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
  218. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
  219. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
  220. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
  221. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
  222. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
  223. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
  224. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
  225. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
  226. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
  227. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
  228. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
  229. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
  230. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
  231. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
  232. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
  233. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
  234. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
  235. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
  236. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
  237. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
  238. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
  239. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
  240. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
  241. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
  242. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
  243. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
  244. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
  245. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
  246. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
  247. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
  248. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
  249. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
  250. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
  251. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
  252. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
  253. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
  254. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
  255. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
  256. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
  257. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
  258. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
  259. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
  260. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
  261. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
  262. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
  263. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
  264. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
  265. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
  266. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
  267. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
  268. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
  269. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
  270. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
  271. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
  272. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
  273. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
  274. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
  275. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
  276. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
  277. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
  278. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
  279. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
  280. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
  281. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
  282. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
  283. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
  284. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
  285. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
  286. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
  287. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
  288. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
  289. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
  290. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
  291. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
  292. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
  293. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/analog_control.py +0 -0
  294. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
  295. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
  296. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
  297. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
  298. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
  299. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
  300. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
  301. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
  302. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
  303. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
  304. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
  305. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
  306. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
  307. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
  308. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
  309. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
  310. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
  311. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
  312. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
  313. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
  314. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
  315. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
  316. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control.py +0 -0
  317. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
  318. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
  319. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
  320. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
  321. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
  322. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
  323. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
  324. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
  325. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
  326. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
  327. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
  328. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
  329. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
  330. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
  331. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
  332. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
  333. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
  334. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
  335. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
  336. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
  337. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
  338. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
  339. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
  340. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
  341. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
  342. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
  343. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
  344. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
  345. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
  346. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
  347. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
  348. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
  349. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
  350. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
  351. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
  352. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
  353. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
  354. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
  355. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
  356. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
  357. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
  358. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
  359. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
  360. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
  361. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
  362. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
  363. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
  364. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
  365. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
  366. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
  367. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
  368. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
  369. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
  370. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
  371. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
  372. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/io_point.py +0 -0
  373. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
  374. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
  375. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit.py +0 -0
  376. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit_set.py +0 -0
  377. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
  378. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
  379. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
  380. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
  381. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
  382. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
  383. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
  384. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement.py +0 -0
  385. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement_value.py +0 -0
  386. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/mutual_coupling.py +0 -0
  387. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
  388. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
  389. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
  390. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
  391. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
  392. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
  393. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
  394. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
  395. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
  396. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
  397. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
  398. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
  399. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
  400. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
  401. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
  402. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
  403. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
  404. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
  405. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
  406. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
  407. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
  408. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
  409. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
  410. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
  411. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
  412. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
  413. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
  414. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
  415. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
  416. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
  417. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
  418. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
  419. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
  420. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_cond_eq.py +0 -0
  421. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
  422. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
  423. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
  424. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
  425. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
  426. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
  427. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
  428. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
  429. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
  430. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
  431. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
  432. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
  433. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
  434. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
  435. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
  436. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
  437. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +0 -0
  438. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
  439. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
  440. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
  441. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
  442. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
  443. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
  444. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
  445. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
  446. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
  447. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
  448. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
  449. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
  450. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
  451. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
  452. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
  453. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
  454. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
  455. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
  456. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
  457. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
  458. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
  459. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
  460. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
  461. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
  462. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
  463. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +0 -0
  464. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/rdfs_infos.py +0 -0
  465. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cgmes/rdfs_serializations.py +0 -0
  466. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
  467. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
  468. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
  469. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
  470. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
  471. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/cim16/cim_parser.py +0 -0
  472. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/__init__.py +0 -0
  473. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/base_db.py +0 -0
  474. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
  475. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
  476. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/file_system.py +0 -0
  477. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
  478. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/dgs/__init__.py +0 -0
  479. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
  480. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/epc/__init__.py +0 -0
  481. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/epc/epc_parser.py +0 -0
  482. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/file_handler.py +0 -0
  483. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/file_system.py +0 -0
  484. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/__init__.py +0 -0
  485. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/catalogue.py +0 -0
  486. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
  487. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/excel_interface.py +0 -0
  488. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
  489. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
  490. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
  491. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/pack_unpack.py +0 -0
  492. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/results_export.py +0 -0
  493. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
  494. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/gridcal/zip_interface.py +0 -0
  495. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/__init__.py +0 -0
  496. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/matpower_branch_definitions.py +0 -0
  497. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/matpower_bus_definitions.py +0 -0
  498. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/matpower_gen_definitions.py +0 -0
  499. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/matpower_parser.py +0 -0
  500. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/matpower/matpower_storage_definitions.py +0 -0
  501. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/others/__init__.py +0 -0
  502. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/others/dpx_parser.py +0 -0
  503. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/others/ipa_parser.py +0 -0
  504. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/others/plx_parser.py +0 -0
  505. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
  506. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/__init__.py +0 -0
  507. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
  508. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/area.py +0 -0
  509. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/branch.py +0 -0
  510. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/bus.py +0 -0
  511. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/facts.py +0 -0
  512. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
  513. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/generator.py +0 -0
  514. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
  515. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
  516. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
  517. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/load.py +0 -0
  518. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/node.py +0 -0
  519. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/owner.py +0 -0
  520. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/psse_circuit.py +0 -0
  521. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
  522. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
  523. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/substation.py +0 -0
  524. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
  525. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
  526. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
  527. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
  528. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
  529. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/devices/zone.py +0 -0
  530. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
  531. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/raw_functions.py +0 -0
  532. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/raw_parser_legacy.py +0 -0
  533. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/raw_parser_writer.py +0 -0
  534. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/raw_to_gridcal.py +0 -0
  535. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/rawx_parser_legacy.py +0 -0
  536. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
  537. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/LICENSE.txt +0 -0
  538. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
  539. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
  540. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_options.py +0 -0
  541. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +0 -0
  542. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
  543. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
  544. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Clustering/clustering_driver.py +0 -0
  545. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
  546. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
  547. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
  548. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
  549. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
  550. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +0 -0
  551. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +0 -0
  552. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +0 -0
  553. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
  554. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +0 -0
  555. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +0 -0
  556. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +0 -0
  557. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
  558. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
  559. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +0 -0
  560. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
  561. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +0 -0
  562. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
  563. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
  564. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +0 -0
  565. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
  566. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
  567. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
  568. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/__init__.py +0 -0
  569. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/ac_jacobian.py +0 -0
  570. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/acdc_jacobian.py +0 -0
  571. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/csc_derivatives.py +0 -0
  572. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/csr_derivatives.py +0 -0
  573. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Derivatives/matpower_derivatives.py +0 -0
  574. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
  575. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
  576. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
  577. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
  578. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
  579. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/NSGA_3.py +0 -0
  580. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/__init__.py +0 -0
  581. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/mixed_variable_NSGA_2.py +0 -0
  582. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/random_eval.py +0 -0
  583. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/stop_crits.py +0 -0
  584. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
  585. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
  586. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
  587. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
  588. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
  589. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +0 -0
  590. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +0 -0
  591. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
  592. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
  593. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
  594. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
  595. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
  596. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_driver.py +0 -0
  597. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_opf.py +0 -0
  598. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
  599. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
  600. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +0 -0
  601. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
  602. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NodalCapacity/__init__.py +0 -0
  603. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_options.py +0 -0
  604. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_driver.py +0 -0
  605. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_results.py +0 -0
  606. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
  607. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +0 -0
  608. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_autodif.py +0 -0
  609. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
  610. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
  611. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +0 -0
  612. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/opf_driver.py +0 -0
  613. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/opf_options.py +0 -0
  614. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
  615. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +0 -0
  616. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/opf_ts_results.py +0 -0
  617. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
  618. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
  619. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
  620. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
  621. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
  622. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
  623. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
  624. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
  625. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquadt_fx.py +0 -0
  626. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
  627. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_fx.py +0 -0
  628. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_advanced_formulation.py +0 -0
  629. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_basic_formulation.py +0 -0
  630. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/pf_formulation_template.py +0 -0
  631. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/powell_fx.py +0 -0
  632. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
  633. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
  634. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +0 -0
  635. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +0 -0
  636. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
  637. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
  638. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
  639. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
  640. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +0 -0
  641. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_options.py +0 -0
  642. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
  643. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
  644. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
  645. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +0 -0
  646. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
  647. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
  648. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/__init__.py +0 -0
  649. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/blackout_driver.py +0 -0
  650. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
  651. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -0
  652. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/reliability_iterable.py +0 -0
  653. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
  654. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
  655. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
  656. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
  657. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
  658. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +0 -0
  659. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/__init__.py +0 -0
  660. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/driver_template.py +0 -0
  661. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/driver_types.py +0 -0
  662. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/options_template.py +0 -0
  663. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/results_table.py +0 -0
  664. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/results_template.py +0 -0
  665. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Simulations/types.py +0 -0
  666. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/__init__.py +0 -0
  667. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/admittance_matrices.py +0 -0
  668. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/detect_substations.py +0 -0
  669. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/simulation_indices.py +0 -0
  670. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/topology.py +0 -0
  671. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/topology_processor.py +0 -0
  672. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Topology/topology_substation_reduction.py +0 -0
  673. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
  674. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
  675. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
  676. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
  677. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
  678. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
  679. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
  680. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
  681. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
  682. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/__init__.py +0 -0
  683. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/ortools_interface.py +0 -0
  684. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/pulp_interface.py +0 -0
  685. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
  686. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_pareto.py +0 -0
  687. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_scaled.py +0 -0
  688. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_original.py +0 -0
  689. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/__init__.py +0 -0
  690. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
  691. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/common.py +0 -0
  692. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/ips.py +0 -0
  693. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
  694. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
  695. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
  696. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
  697. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/non_dominated_sorting.py +0 -0
  698. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/nsga3.py +0 -0
  699. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/numerical_stability.py +0 -0
  700. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
  701. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
  702. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
  703. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
  704. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/csc.py +0 -0
  705. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/csc2.py +0 -0
  706. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
  707. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/Sparse/utils.py +0 -0
  708. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/__init__.py +0 -0
  709. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
  710. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/ThirdParty/__init__.py +0 -0
  711. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/__init__.py +0 -0
  712. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/scores.py +0 -0
  713. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/Utils/zip_file_mgmt.py +0 -0
  714. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/__init__.py +0 -0
  715. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/api.py +0 -0
  716. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/basic_structures.py +0 -0
  717. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/GridCalEngine/data_logger.py +0 -0
  718. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/setup.cfg +0 -0
  719. {GridCalEngine-5.1.39 → GridCalEngine-5.1.41}/setup.py +0 -0
@@ -693,12 +693,24 @@ def bentayga_linear_matrices(circuit: MultiCircuit, distributed_slack=False):
693
693
 
694
694
 
695
695
  def translate_bentayga_pf_results(grid: MultiCircuit, res) -> PowerFlowResults:
696
+ """
697
+
698
+ :param grid:
699
+ :param res:
700
+ :return:
701
+ """
696
702
  results = PowerFlowResults(n=grid.get_bus_number(),
697
703
  m=grid.get_branch_number_wo_hvdc(),
698
704
  n_hvdc=grid.get_hvdc_number(),
705
+ n_gen=grid.get_generators_number(),
706
+ n_batt=grid.get_batteries_number(),
707
+ n_sh=grid.get_shunt_like_device_number(),
699
708
  bus_names=res.names,
700
709
  branch_names=res.names,
701
710
  hvdc_names=res.hvdc_names,
711
+ gen_names=grid.get_generator_names(),
712
+ batt_names=grid.get_battery_names(),
713
+ sh_names=grid.get_shunt_like_devices_names(),
702
714
  bus_types=res.bus_types)
703
715
 
704
716
  results.voltage = res.V[0, :]
@@ -1518,9 +1518,15 @@ def translate_newton_pa_pf_results(grid: MultiCircuit, res: "npa.PowerFlowResult
1518
1518
  results = PowerFlowResults(n=grid.get_bus_number(),
1519
1519
  m=grid.get_branch_number_wo_hvdc(),
1520
1520
  n_hvdc=grid.get_hvdc_number(),
1521
+ n_gen=grid.get_generators_number(),
1522
+ n_batt=grid.get_batteries_number(),
1523
+ n_sh=grid.get_shunt_like_device_number(),
1521
1524
  bus_names=res.bus_names,
1522
1525
  branch_names=res.branch_names,
1523
1526
  hvdc_names=res.hvdc_names,
1527
+ gen_names=grid.get_generator_names(),
1528
+ batt_names=grid.get_battery_names(),
1529
+ sh_names=grid.get_shunt_like_devices_names(),
1524
1530
  bus_types=res.bus_types)
1525
1531
 
1526
1532
  results.voltage = res.voltage[0, :]
@@ -669,9 +669,15 @@ def translate_pgm_results(grid: MultiCircuit, pf_res) -> PowerFlowResults:
669
669
  results = PowerFlowResults(n=nc.nbus,
670
670
  m=nc.nbr,
671
671
  n_hvdc=nc.nhvdc,
672
+ n_gen=nc.ngen,
673
+ n_batt=nc.nbatt,
674
+ n_sh=nc.nshunt,
672
675
  bus_names=nc.bus_names,
673
676
  branch_names=nc.branch_names,
674
677
  hvdc_names=nc.hvdc_names,
678
+ gen_names=nc.generator_names,
679
+ batt_names=nc.battery_names,
680
+ sh_names=nc.shunt_names,
675
681
  bus_types=nc.bus_types)
676
682
 
677
683
  if pf_res is None:
@@ -765,6 +765,14 @@ class NumericalCircuit:
765
765
  """
766
766
  return self.battery_data.names
767
767
 
768
+ @property
769
+ def shunt_names(self):
770
+ """
771
+
772
+ :return:
773
+ """
774
+ return self.shunt_data.names
775
+
768
776
  @property
769
777
  def hvdc_names(self):
770
778
  """
@@ -4370,6 +4370,17 @@ class Assets:
4370
4370
  elms += lst
4371
4371
  return elms
4372
4372
 
4373
+ def get_shunt_like_devices_names(self) -> StrVec:
4374
+ """
4375
+ Get a list of all devices names that can inject or subtract power from a node
4376
+ :return: Array of Shunt devices' names
4377
+ """
4378
+ elms = list()
4379
+ for lst in self.get_shunt_like_devices_lists():
4380
+ for elm in lst:
4381
+ elms.append(elm.name)
4382
+ return np.array(elms)
4383
+
4373
4384
  def get_shunt_like_device_number(self) -> int:
4374
4385
  """
4375
4386
  Get a list of all devices that can inject or subtract power from a node
@@ -4674,6 +4685,9 @@ class Assets:
4674
4685
  elif device_type == DeviceType.BranchDevice:
4675
4686
  return self.get_branches_wo_hvdc()
4676
4687
 
4688
+ elif device_type == DeviceType.ShuntLikeDevice:
4689
+ return self.get_shunt_like_devices()
4690
+
4677
4691
  elif device_type == DeviceType.NoDevice:
4678
4692
  return list()
4679
4693
 
@@ -333,11 +333,11 @@ class MultiCircuit(Assets):
333
333
 
334
334
  return cpy
335
335
 
336
- def build_graph(self):
336
+ def build_graph(self) -> nx.MultiDiGraph:
337
337
  """
338
338
  Returns a networkx DiGraph object of the grid.
339
339
  """
340
- graph = nx.DiGraph()
340
+ graph = nx.MultiDiGraph()
341
341
 
342
342
  bus_dictionary = dict()
343
343
 
@@ -255,7 +255,7 @@ class Profile:
255
255
  else:
256
256
  return 0.0
257
257
 
258
- def set(self, arr: NumericVec):
258
+ def set(self, arr: NumericVec) -> bool:
259
259
  """
260
260
  Set array value
261
261
  :param arr:
@@ -278,31 +278,38 @@ class Profile:
278
278
  if isinstance(base, np.bool_):
279
279
  base = bool(base)
280
280
 
281
- self._is_sparse = True
282
- self._sparse_array = SparseArray(data_type=self.dtype)
281
+ if check_type(dtype=self.dtype, value=base):
282
+ self._is_sparse = True
283
+ self._sparse_array = SparseArray(data_type=self.dtype)
283
284
 
284
- if most_common_count > 1:
285
- if isinstance(arr, np.ndarray):
286
- data, indptr = compress_array_numba(arr, base)
287
- data_map = {i: x for i, x in zip(indptr, data)} # this is to use a native python dict
285
+ if most_common_count > 1:
286
+ if isinstance(arr, np.ndarray):
287
+ data, indptr = compress_array_numba(arr, base)
288
+ data_map = {i: x for i, x in zip(indptr, data)} # this is to use a native python dict
289
+ else:
290
+ raise Exception('Unknown profile type' + str(type(arr)))
288
291
  else:
289
- raise Exception('Unknown profile type' + str(type(arr)))
290
- else:
291
- data_map = dict()
292
+ data_map = dict()
292
293
 
293
- self._sparse_array.create(size=len(arr),
294
- default_value=base,
295
- data=data_map)
296
- check_type(dtype=self.dtype, value=base)
294
+ self._sparse_array.create(size=len(arr),
295
+ default_value=base,
296
+ data=data_map)
297
+ else:
298
+ print("Cannot set sparse array because the type check failed")
299
+ return False
297
300
  else:
298
- check_type(dtype=self.dtype, value=arr[0])
299
- self._is_sparse = False
300
- self._dense_array = arr
301
+ if check_type(dtype=self.dtype, value=arr[0]):
302
+ self._is_sparse = False
303
+ self._dense_array = arr
304
+ else:
305
+ print("Cannot set dense array because the type check failed")
306
+ return False
301
307
  else:
302
308
  self._is_sparse = False
303
309
  self._dense_array = arr
304
310
 
305
311
  self._initialized = True
312
+ return True
306
313
 
307
314
  def __eq__(self, other: "Profile") -> bool:
308
315
  """
@@ -16,3 +16,6 @@ from GridCalEngine.IO.matpower.matpower_parser import parse_matpower_file, get_m
16
16
  from GridCalEngine.IO.raw.raw_parser_legacy import PSSeParser
17
17
 
18
18
  from GridCalEngine.IO.file_handler import FileOpen, FileSave, FileSavingOptions
19
+
20
+ from GridCalEngine.IO.gridcal.remote import (gather_model_as_jsons_for_communication, RemoteInstruction,
21
+ SimulationTypes, send_json_data, get_certificate_path, get_certificate)
@@ -15,12 +15,15 @@
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
17
  import os
18
+ import requests
19
+ import asyncio
18
20
  from typing import Dict, Union, Any
19
21
  from uuid import uuid4, getnode
20
22
  from GridCalEngine.Devices.multi_circuit import MultiCircuit
21
23
  from GridCalEngine.enumerations import (SimulationTypes, JobStatus)
24
+ from GridCalEngine.basic_structures import Logger
22
25
  from GridCalEngine.IO.gridcal.pack_unpack import gather_model_as_jsons
23
- from GridCalEngine.IO.gridcal.zip_interface import save_results_in_zip
26
+ from GridCalEngine.IO.file_system import get_create_gridcal_folder
24
27
 
25
28
 
26
29
  class RemoteInstruction:
@@ -137,6 +140,49 @@ class RemoteJob:
137
140
  self.instruction = RemoteInstruction(data=data['instruction'])
138
141
 
139
142
 
143
+ def get_certificate_path() -> str:
144
+ """
145
+ Get a path to the certificates
146
+ :return:
147
+ """
148
+ return os.path.join(get_create_gridcal_folder(), "server_cert.pem")
149
+
150
+
151
+ def get_certificate(base_url: str, certificate_path: str, pwd: str, logger: Logger = Logger()) -> bool:
152
+ """
153
+ Try connecting to the server
154
+ :return: ok?
155
+ """
156
+ # Make a GET request to the root endpoint
157
+ try:
158
+ response = requests.get(f"{base_url}/get_cert",
159
+ headers={"API-Key": pwd},
160
+ verify=False,
161
+ timeout=2)
162
+
163
+ # Save the certificate to a file
164
+
165
+ with open(certificate_path, "wb") as cert_file:
166
+ cert_file.write(response.content)
167
+
168
+ # Check if the request was successful
169
+ if response.status_code == 200:
170
+ # Print the response body
171
+ # print("Response Body:", response.json())
172
+ # self.data_model.parse_data(data=response.json())
173
+ return True
174
+ else:
175
+ # Print error message
176
+ logger.add_error(msg=f"Response error", value=response.text)
177
+ return False
178
+ except ConnectionError as e:
179
+ logger.add_error(msg=f"Connection error", value=str(e))
180
+ return False
181
+ except Exception as e:
182
+ logger.add_error(msg=f"General exception error", value=str(e))
183
+ return False
184
+
185
+
140
186
  def gather_model_as_jsons_for_communication(circuit: MultiCircuit,
141
187
  instruction: RemoteInstruction) -> Dict[str, Dict[str, Dict[str, str]]]:
142
188
  """
@@ -160,3 +206,25 @@ def gather_model_as_jsons_for_communication(circuit: MultiCircuit,
160
206
  return data
161
207
 
162
208
 
209
+ def send_json_data(json_data: Dict[str, Union[str, Dict[str, Dict[str, str]]]],
210
+ endpoint_url: str,
211
+ certificate: str) -> Any:
212
+ """
213
+ Send a file along with instructions about the file
214
+ :param json_data: Json with te model
215
+ :param endpoint_url: Web socket URL to connect to
216
+ :param certificate: SSL certificate path
217
+ :return service response
218
+ """
219
+
220
+ response = asyncio.get_event_loop().run_until_complete(
221
+ requests.post(
222
+ url=endpoint_url,
223
+ json=json_data,
224
+ stream=True,
225
+ verify=certificate
226
+ )
227
+ )
228
+
229
+ # return server response
230
+ return response.json()
@@ -63,9 +63,15 @@ class PowerFlowDriver(DriverTemplate):
63
63
  self.results = PowerFlowResults(n=0,
64
64
  m=0,
65
65
  n_hvdc=0,
66
+ n_gen=0,
67
+ n_batt=0,
68
+ n_sh=0,
66
69
  bus_names=np.empty(0, dtype=object),
67
70
  branch_names=np.empty(0, dtype=object),
68
71
  hvdc_names=np.empty(0, dtype=object),
72
+ gen_names=np.empty(0, dtype=object),
73
+ batt_names=np.empty(0, dtype=object),
74
+ sh_names=np.empty(0, dtype=object),
69
75
  bus_types=np.empty(0))
70
76
 
71
77
  self.convergence_reports = list()
@@ -79,7 +85,7 @@ class PowerFlowDriver(DriverTemplate):
79
85
  """
80
86
  return list()
81
87
 
82
- def add_report(self):
88
+ def add_report(self) -> None:
83
89
  """
84
90
  Add a report of the results (in-place)
85
91
  """
@@ -137,9 +143,15 @@ class PowerFlowDriver(DriverTemplate):
137
143
  self.results = PowerFlowResults(n=self.grid.get_bus_number(),
138
144
  m=self.grid.get_branch_number_wo_hvdc(),
139
145
  n_hvdc=self.grid.get_hvdc_number(),
146
+ n_gen=self.grid.get_generators_number(),
147
+ n_batt=self.grid.get_batteries_number(),
148
+ n_sh=self.grid.get_shunt_like_device_number(),
140
149
  bus_names=res.bus_names,
141
150
  branch_names=res.branch_names,
142
151
  hvdc_names=res.hvdc_names,
152
+ gen_names=self.grid.get_generator_names(),
153
+ batt_names=self.grid.get_battery_names(),
154
+ sh_names=self.grid.get_shunt_like_devices_names(),
143
155
  bus_types=res.bus_types)
144
156
 
145
157
  self.results = translate_newton_pa_pf_results(self.grid, res)
@@ -153,9 +165,15 @@ class PowerFlowDriver(DriverTemplate):
153
165
  self.results = PowerFlowResults(n=self.grid.get_bus_number(),
154
166
  m=self.grid.get_branch_number_wo_hvdc(),
155
167
  n_hvdc=self.grid.get_hvdc_number(),
168
+ n_gen=self.grid.get_generators_number(),
169
+ n_batt=self.grid.get_batteries_number(),
170
+ n_sh=self.grid.get_shunt_like_device_number(),
156
171
  bus_names=res.names,
157
172
  branch_names=res.names,
158
173
  hvdc_names=res.hvdc_names,
174
+ gen_names=self.grid.get_generator_names(),
175
+ batt_names=self.grid.get_battery_names(),
176
+ sh_names=self.grid.get_shunt_like_devices_names(),
159
177
  bus_types=res.bus_types)
160
178
 
161
179
  self.results = translate_bentayga_pf_results(self.grid, res)
@@ -82,9 +82,15 @@ class PowerFlowResults(ResultsTemplate):
82
82
  n: int,
83
83
  m: int,
84
84
  n_hvdc: int,
85
+ n_gen: int,
86
+ n_batt: int,
87
+ n_sh: int,
85
88
  bus_names: np.ndarray,
86
89
  branch_names: np.ndarray,
87
90
  hvdc_names: np.ndarray,
91
+ gen_names: np.ndarray,
92
+ batt_names: np.ndarray,
93
+ sh_names: np.ndarray,
88
94
  bus_types: np.ndarray,
89
95
  clustering_results=None):
90
96
  """
@@ -137,6 +143,19 @@ class PowerFlowResults(ResultsTemplate):
137
143
  ResultTypes.HvdcPowerFrom,
138
144
  ResultTypes.HvdcPowerTo
139
145
  ],
146
+
147
+ ResultTypes.GeneratorResults: [
148
+ ResultTypes.GeneratorReactivePower,
149
+ ],
150
+
151
+ ResultTypes.BatteryResults: [
152
+ ResultTypes.BatteryReactivePower,
153
+ ],
154
+
155
+ ResultTypes.ShuntResults: [
156
+ ResultTypes.ShuntReactivePower,
157
+ ],
158
+
140
159
  ResultTypes.AreaResults: [
141
160
  ResultTypes.InterAreaExchange,
142
161
  ResultTypes.ActivePowerFlowPerArea,
@@ -156,6 +175,9 @@ class PowerFlowResults(ResultsTemplate):
156
175
  self.bus_names: StrVec = bus_names
157
176
  self.branch_names: StrVec = branch_names
158
177
  self.hvdc_names: StrVec = hvdc_names
178
+ self.gen_names = gen_names
179
+ self.batt_names = batt_names
180
+ self.sh_names = sh_names
159
181
  self.bus_types: IntVec = bus_types
160
182
 
161
183
  # vars for the inter-area computation
@@ -187,6 +209,10 @@ class PowerFlowResults(ResultsTemplate):
187
209
  self.hvdc_Pt: Vec = np.zeros(n_hvdc)
188
210
  self.hvdc_loading: Vec = np.zeros(n_hvdc)
189
211
 
212
+ self.gen_q: Vec = np.zeros(n_gen)
213
+ self.battery_q: Vec = np.zeros(n_batt)
214
+ self.shunt_q: Vec = np.zeros(n_sh)
215
+
190
216
  self.island_number = 0
191
217
 
192
218
  self.plot_bars_limit: int = 100
@@ -755,6 +781,39 @@ class PowerFlowResults(ResultsTemplate):
755
781
  ylabel='(MW)',
756
782
  units='(MW)')
757
783
 
784
+ elif result_type == ResultTypes.GeneratorReactivePower:
785
+
786
+ return ResultsTable(data=self.gen_q,
787
+ index=self.gen_names,
788
+ idx_device_type=DeviceType.GeneratorDevice,
789
+ columns=[result_type.value],
790
+ cols_device_type=DeviceType.NoDevice,
791
+ title=result_type.value,
792
+ ylabel='(MVAr)',
793
+ units='(MVAr)')
794
+
795
+ elif result_type == ResultTypes.BatteryReactivePower:
796
+
797
+ return ResultsTable(data=self.battery_q,
798
+ index=self.batt_names,
799
+ idx_device_type=DeviceType.BatteryDevice,
800
+ columns=[result_type.value],
801
+ cols_device_type=DeviceType.NoDevice,
802
+ title=result_type.value,
803
+ ylabel='(MVAr)',
804
+ units='(MVAr)')
805
+
806
+ elif result_type == ResultTypes.ShuntReactivePower:
807
+
808
+ return ResultsTable(data=self.shunt_q,
809
+ index=self.sh_names,
810
+ idx_device_type=DeviceType.ShuntLikeDevice,
811
+ columns=[result_type.value],
812
+ cols_device_type=DeviceType.NoDevice,
813
+ title=result_type.value,
814
+ ylabel='(MVAr)',
815
+ units='(MVAr)')
816
+
758
817
  else:
759
818
  raise Exception('Unsupported result type: ' + str(result_type))
760
819
 
@@ -36,7 +36,7 @@ from GridCalEngine.DataStructures.numerical_circuit import compile_numerical_cir
36
36
  from GridCalEngine.Simulations.PowerFlow.NumericalMethods.discrete_controls import compute_slack_distribution
37
37
  from GridCalEngine.Devices.Substation.bus import Bus
38
38
  from GridCalEngine.Devices.Aggregation.area import Area
39
- from GridCalEngine.basic_structures import CxVec, CscMat
39
+ from GridCalEngine.basic_structures import CxVec, CscMat, Vec
40
40
 
41
41
  if TYPE_CHECKING: # Only imports the below statements during type checking
42
42
  from GridCalEngine.Simulations.OPF.opf_results import OptimalPowerFlowResults
@@ -489,9 +489,15 @@ def single_island_pf(nc: NumericalCircuit,
489
489
  results = PowerFlowResults(n=nc.nbus,
490
490
  m=nc.nbr,
491
491
  n_hvdc=nc.nhvdc,
492
+ n_gen=nc.ngen,
493
+ n_batt=nc.nbatt,
494
+ n_sh=nc.nshunt,
492
495
  bus_names=nc.bus_names,
493
496
  branch_names=nc.branch_names,
494
497
  hvdc_names=nc.hvdc_names,
498
+ gen_names=nc.generator_names,
499
+ batt_names=nc.battery_names,
500
+ sh_names=nc.shunt_names,
495
501
  bus_types=bus_types)
496
502
 
497
503
  results.Sbus = solution.Scalc * nc.Sbase # MVA
@@ -551,9 +557,9 @@ def power_flow_post_process(
551
557
  Sbus[vd] = V[vd] * np.conj(Ybus[vd, :] @ V)
552
558
 
553
559
  # Reactive power at the pv nodes
554
- P = Sbus[pv].real
555
- Q = (V[pv] * np.conj(Ybus[pv, :] @ V)).imag
556
- Sbus[pv] = P + 1j * Q # keep the original P injection and set the calculated reactive power
560
+ P_pv = Sbus[pv].real
561
+ Q_pv = (V[pv] * np.conj(Ybus[pv, :] @ V)).imag
562
+ Sbus[pv] = P_pv + 1j * Q_pv # keep the original P injection and set the calculated reactive power for PV nodes
557
563
 
558
564
  # Branches current, loading, etc
559
565
  Vf = V[calculation_inputs.branch_data.F]
@@ -601,6 +607,35 @@ def power_flow_post_process(
601
607
  return Sfb, Stb, If, It, Vbranch, loading, losses, Sbus
602
608
 
603
609
 
610
+ def split_reactive_power_into_devices(nc: NumericalCircuit, Qbus: Vec) -> Tuple[Vec, Vec, Vec]:
611
+ """
612
+ This function splits the reactive power of the power flow solution (nbus) into reactive power per device that
613
+ is able to control reactive power as an injection (generators, batteries, shunts)
614
+ :param nc: NumericalCircuit
615
+ :param Qbus: Array of nodal reactive power (nbus)
616
+ :return: Qgen (ngen), Qbatt (nbatt), Qsh (nsh)
617
+ """
618
+ q_max_total = nc.generator_data.C_bus_elm @ (
619
+ nc.generator_data.qmax * nc.generator_data.active * nc.generator_data.controllable)
620
+
621
+ q_max_total += nc.battery_data.C_bus_elm @ (
622
+ nc.battery_data.qmax * nc.battery_data.active * nc.battery_data.controllable)
623
+
624
+ q_max_total += nc.shunt_data.C_bus_elm @ (
625
+ nc.shunt_data.qmax * nc.shunt_data.active * nc.shunt_data.controllable)
626
+
627
+ bus_idx = nc.generator_data.get_bus_indices()
628
+ Qgen = Qbus[bus_idx] * nc.generator_data.qmax / (q_max_total[bus_idx] + 1e-20)
629
+
630
+ bus_idx = nc.battery_data.get_bus_indices()
631
+ Qbatt = Qbus[bus_idx] * nc.battery_data.qmax / (q_max_total[bus_idx] + 1e-20)
632
+
633
+ bus_idx = nc.shunt_data.get_bus_indices()
634
+ Qsh = Qbus[bus_idx] * nc.shunt_data.qmax / (q_max_total[bus_idx] + 1e-20)
635
+
636
+ return Qgen, Qbatt, Qsh
637
+
638
+
604
639
  def multi_island_pf_nc(nc: NumericalCircuit,
605
640
  options: PowerFlowOptions,
606
641
  logger=Logger(),
@@ -621,9 +656,15 @@ def multi_island_pf_nc(nc: NumericalCircuit,
621
656
  n=nc.nbus,
622
657
  m=nc.nbr,
623
658
  n_hvdc=nc.nhvdc,
659
+ n_gen=nc.ngen,
660
+ n_batt=nc.nbatt,
661
+ n_sh=nc.nshunt,
624
662
  bus_names=nc.bus_data.names,
625
663
  branch_names=nc.branch_data.names,
626
664
  hvdc_names=nc.hvdc_data.names,
665
+ gen_names=nc.generator_names,
666
+ batt_names=nc.battery_names,
667
+ sh_names=nc.shunt_names,
627
668
  bus_types=nc.bus_data.bus_types,
628
669
  )
629
670
 
@@ -743,6 +784,9 @@ def multi_island_pf_nc(nc: NumericalCircuit,
743
784
  results.hvdc_loading = loading_hvdc
744
785
  results.hvdc_losses = Losses_hvdc * nc.Sbase
745
786
 
787
+ # do the reactive power partition and store the values
788
+ results.gen_q, results.battery_q, results.shunt_q = split_reactive_power_into_devices(nc=nc, Qbus=results.Sbus.imag)
789
+
746
790
  return results
747
791
 
748
792
 
@@ -114,9 +114,15 @@ class StateEstimationResults(PowerFlowResults):
114
114
  n=n,
115
115
  m=m,
116
116
  n_hvdc=0,
117
+ n_gen=0,
118
+ n_batt=0,
119
+ n_sh=0,
117
120
  bus_names=bus_names,
118
121
  branch_names=branch_names,
119
122
  hvdc_names=hvdc_names,
123
+ gen_names=np.empty(0, dtype=object),
124
+ batt_names=np.empty(0, dtype=object),
125
+ sh_names=np.empty(0, dtype=object),
120
126
  bus_types=bus_types)
121
127
 
122
128
 
@@ -132,9 +132,15 @@ class StochasticPowerFlowDriver(DriverTemplate):
132
132
  avg_res = PowerFlowResults(n=numerical_circuit.nbus,
133
133
  m=numerical_circuit.nbr,
134
134
  n_hvdc=numerical_circuit.nhvdc,
135
+ n_gen=numerical_circuit.ngen,
136
+ n_batt=numerical_circuit.nbatt,
137
+ n_sh=numerical_circuit.nshunt,
135
138
  bus_names=numerical_circuit.bus_names,
136
139
  branch_names=numerical_circuit.branch_names,
137
140
  hvdc_names=numerical_circuit.hvdc_names,
141
+ gen_names=numerical_circuit.generator_names,
142
+ batt_names=numerical_circuit.battery_names,
143
+ sh_names=numerical_circuit.shunt_names,
138
144
  bus_types=numerical_circuit.bus_types)
139
145
 
140
146
  variance_sum = 0.0
@@ -35,19 +35,19 @@ def check_type(dtype: PROFILE_TYPES, value: Any) -> bool:
35
35
  """
36
36
  tpe = type(value)
37
37
  if tpe in [bool, np.bool_]:
38
- assert dtype == bool
38
+ return dtype == bool
39
39
  elif tpe in [int, np.int32, np.int64]:
40
- assert dtype == int or dtype == float
40
+ return dtype == int or dtype == float
41
41
  elif tpe in [float, np.float32, np.float64]:
42
- assert dtype == float
42
+ return dtype == float
43
43
  elif issubclass(tpe, Enum):
44
- assert tpe == dtype # check that the enum type is the same
44
+ return tpe == dtype # check that the enum type is the same
45
45
 
46
46
  elif isinstance(dtype, DeviceType):
47
47
  return True
48
48
 
49
49
  elif dtype == Vec:
50
- assert isinstance(value, np.ndarray) or value is None
50
+ return isinstance(value, np.ndarray) or value is None
51
51
 
52
52
  else:
53
53
  raise Exception("Sparse array type value Not recognized")
@@ -16,7 +16,7 @@ import datetime
16
16
  _current_year_ = datetime.datetime.now().year
17
17
 
18
18
  # do not forget to keep a three-number version!!!
19
- __GridCalEngine_VERSION__ = "5.1.39"
19
+ __GridCalEngine_VERSION__ = "5.1.41"
20
20
 
21
21
  url = 'https://github.com/SanPen/GridCal'
22
22
 
@@ -974,6 +974,7 @@ class DeviceType(Enum):
974
974
  GeneratorDevice = 'Generator'
975
975
  StaticGeneratorDevice = 'Static Generator'
976
976
  ShuntDevice = 'Shunt'
977
+ ShuntLikeDevice = 'Shunt like devices'
977
978
  UpfcDevice = 'UPFC' # unified power flow controller
978
979
  ExternalGridDevice = 'External grid'
979
980
  LoadLikeDevice = 'Load like'
@@ -1483,12 +1484,17 @@ class ResultTypes(Enum):
1483
1484
  LoadShedding = 'Load shedding'
1484
1485
  GeneratorShedding = 'Generator shedding'
1485
1486
  GeneratorPower = 'Generator power'
1487
+ GeneratorReactivePower = 'Generator reactive power'
1486
1488
  GeneratorCost = 'Generator cost'
1487
1489
  GeneratorFuels = 'Generator fuels'
1488
1490
  GeneratorEmissions = 'Generator emissions'
1489
1491
  GeneratorProducing = 'Generator producing'
1490
1492
  GeneratorStartingUp = 'Generator starting up'
1491
1493
  GeneratorShuttingDown = 'Generator shutting down'
1494
+
1495
+ BatteryReactivePower = 'Battery reactive power'
1496
+ ShuntReactivePower = 'Shunt reactive power'
1497
+
1492
1498
  BusVoltagePolarPlot = 'Voltage plot'
1493
1499
  BusNodalCapacity = "Nodal capacity"
1494
1500
 
@@ -1663,6 +1669,7 @@ class ResultTypes(Enum):
1663
1669
  GeneratorResults = 'Generators'
1664
1670
  LoadResults = 'Loads'
1665
1671
  BatteryResults = 'Batteries'
1672
+ ShuntResults = 'Shunt like devices'
1666
1673
  StatisticResults = 'Statistics'
1667
1674
 
1668
1675
  # fluid
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: GridCalEngine
3
- Version: 5.1.39
3
+ Version: 5.1.41
4
4
  Summary: GridCal is a Power Systems simulation program intended for professional use and research
5
5
  Home-page: https://github.com/SanPen/GridCal
6
6
  Author: Santiago Peñate Vera et. Al.