GridCalEngine 5.1.5__tar.gz → 5.1.7__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 (678) hide show
  1. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/generator_data.py +16 -0
  2. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/investment.py +6 -1
  3. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/hvdc_line.py +1 -1
  4. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/line_locations.py +1 -1
  5. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/base_diagram.py +4 -2
  6. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/graphic_location.py +8 -4
  7. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/multi_circuit.py +1 -1
  8. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +11 -6
  9. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +1 -1
  10. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +44 -27
  11. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/file_handler.py +12 -6
  12. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/excel_interface.py +17 -24
  13. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/pack_unpack.py +1 -1
  14. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/zip_interface.py +81 -43
  15. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +6 -5
  16. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Clustering/clustering_driver.py +5 -1
  17. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +1 -0
  18. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +1 -1
  19. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +42 -24
  20. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +1 -1
  21. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +10 -5
  22. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +5 -1
  23. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +14 -14
  24. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +12 -6
  25. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/opf_driver.py +1 -0
  26. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +11 -3
  27. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +11 -0
  28. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +9 -1
  29. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/__init__.py +1 -1
  30. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/blackout_driver.py +1 -1
  31. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +6 -1
  32. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/results_template.py +66 -10
  33. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/ips.py +1 -1
  34. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/__version__.py +1 -1
  35. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/basic_structures.py +21 -1
  36. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/enumerations.py +26 -1
  37. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/PKG-INFO +1 -1
  38. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/__init__.py +0 -0
  39. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/circuit_to_bentayga.py +0 -0
  40. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/circuit_to_data.py +0 -0
  41. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/circuit_to_newton_pa.py +0 -0
  42. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
  43. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Compilers/circuit_to_pgm.py +0 -0
  44. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/__init__.py +0 -0
  45. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/battery_data.py +0 -0
  46. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/branch_data.py +0 -0
  47. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/bus_data.py +0 -0
  48. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
  49. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
  50. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
  51. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
  52. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
  53. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
  54. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/load_data.py +0 -0
  55. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/numerical_circuit.py +0 -0
  56. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/DataStructures/shunt_data.py +0 -0
  57. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
  58. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/area.py +0 -0
  59. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
  60. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/community.py +0 -0
  61. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/contingency.py +0 -0
  62. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
  63. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/country.py +0 -0
  64. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/emission_gas.py +0 -0
  65. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/fuel.py +0 -0
  66. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/investments_group.py +0 -0
  67. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
  68. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
  69. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/region.py +0 -0
  70. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/technology.py +0 -0
  71. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
  72. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Associations/__init__.py +0 -0
  73. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Associations/generator_emission.py +0 -0
  74. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Associations/generator_fuel.py +0 -0
  75. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Associations/generator_technology.py +0 -0
  76. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/__init__.py +0 -0
  77. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/branch.py +0 -0
  78. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
  79. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/line.py +0 -0
  80. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/overhead_line_type.py +0 -0
  81. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
  82. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
  83. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/switch.py +0 -0
  84. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
  85. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/transformer.py +0 -0
  86. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/transformer3w.py +0 -0
  87. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
  88. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
  89. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/upfc.py +0 -0
  90. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/vsc.py +0 -0
  91. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/winding.py +0 -0
  92. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Branches/wire.py +0 -0
  93. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
  94. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
  95. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
  96. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
  97. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
  98. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
  99. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
  100. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
  101. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
  102. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
  103. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
  104. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/__init__.py +0 -0
  105. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/battery.py +0 -0
  106. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
  107. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
  108. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
  109. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/generator.py +0 -0
  110. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
  111. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/load.py +0 -0
  112. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/shunt.py +0 -0
  113. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
  114. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/__init__.py +0 -0
  115. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
  116. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
  117. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/editable_device.py +0 -0
  118. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
  119. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
  120. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
  121. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
  122. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/__init__.py +0 -0
  123. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/bus.py +0 -0
  124. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/busbar.py +0 -0
  125. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
  126. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/substation.py +0 -0
  127. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
  128. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/__init__.py +0 -0
  129. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/measurement.py +0 -0
  130. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/profile.py +0 -0
  131. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/sparse_array.py +0 -0
  132. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Devices/types.py +0 -0
  133. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/__init__.py +0 -0
  134. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/base/__init__.py +0 -0
  135. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/base/base_circuit.py +0 -0
  136. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/base/base_device.py +0 -0
  137. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/base/base_property.py +0 -0
  138. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/base/units.py +0 -0
  139. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/__init__.py +0 -0
  140. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
  141. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
  142. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
  143. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
  144. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
  145. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_poperty.py +0 -0
  146. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +0 -0
  147. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
  148. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
  149. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
  150. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
  151. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
  152. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
  153. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
  154. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
  155. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
  156. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
  157. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
  158. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
  159. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
  160. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
  161. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
  162. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
  163. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
  164. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
  165. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
  166. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
  167. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
  168. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
  169. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
  170. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
  171. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
  172. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
  173. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
  174. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
  175. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
  176. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
  177. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
  178. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
  179. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
  180. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
  181. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
  182. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
  183. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
  184. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
  185. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
  186. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
  187. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
  188. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
  189. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
  190. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
  191. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
  192. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
  193. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
  194. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
  195. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
  196. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
  197. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
  198. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
  199. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
  200. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
  201. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
  202. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
  203. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
  204. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
  205. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
  206. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
  207. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
  208. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
  209. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
  210. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
  211. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
  212. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
  213. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
  214. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
  215. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
  216. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
  217. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
  218. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
  219. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
  220. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
  221. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
  222. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
  223. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
  224. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
  225. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
  226. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
  227. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
  228. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
  229. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
  230. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
  231. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
  232. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
  233. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
  234. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
  235. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
  236. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
  237. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
  238. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
  239. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
  240. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
  241. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
  242. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
  243. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
  244. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
  245. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
  246. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
  247. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
  248. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
  249. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
  250. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
  251. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
  252. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
  253. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
  254. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
  255. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
  256. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
  257. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
  258. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
  259. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
  260. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
  261. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
  262. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
  263. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
  264. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
  265. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
  266. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
  267. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
  268. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
  269. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
  270. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
  271. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
  272. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
  273. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
  274. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
  275. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
  276. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
  277. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
  278. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
  279. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
  280. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
  281. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
  282. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
  283. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
  284. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
  285. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
  286. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
  287. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
  288. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
  289. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
  290. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
  291. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
  292. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
  293. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
  294. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
  295. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
  296. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
  297. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
  298. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
  299. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
  300. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
  301. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
  302. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
  303. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
  304. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
  305. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
  306. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
  307. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
  308. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
  309. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
  310. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
  311. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
  312. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
  313. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
  314. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
  315. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
  316. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
  317. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
  318. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
  319. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
  320. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
  321. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
  322. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
  323. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
  324. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
  325. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
  326. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
  327. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
  328. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
  329. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
  330. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
  331. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
  332. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
  333. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
  334. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
  335. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
  336. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
  337. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
  338. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
  339. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
  340. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
  341. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
  342. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
  343. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
  344. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
  345. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
  346. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
  347. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
  348. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
  349. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
  350. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
  351. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
  352. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
  353. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
  354. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
  355. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
  356. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
  357. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
  358. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
  359. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
  360. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
  361. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
  362. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
  363. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
  364. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
  365. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
  366. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
  367. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
  368. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
  369. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
  370. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
  371. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
  372. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
  373. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
  374. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
  375. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
  376. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
  377. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
  378. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
  379. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
  380. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
  381. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
  382. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
  383. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
  384. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
  385. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
  386. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
  387. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
  388. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
  389. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
  390. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
  391. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
  392. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
  393. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
  394. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
  395. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
  396. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
  397. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
  398. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
  399. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
  400. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
  401. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
  402. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
  403. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
  404. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
  405. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
  406. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
  407. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
  408. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
  409. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
  410. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
  411. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
  412. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
  413. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
  414. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
  415. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
  416. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
  417. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
  418. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
  419. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
  420. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
  421. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
  422. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
  423. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
  424. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
  425. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
  426. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
  427. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
  428. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
  429. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
  430. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
  431. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
  432. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
  433. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
  434. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
  435. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
  436. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
  437. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
  438. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
  439. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
  440. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +0 -0
  441. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
  442. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
  443. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
  444. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
  445. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
  446. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
  447. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
  448. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
  449. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
  450. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
  451. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
  452. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
  453. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
  454. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
  455. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
  456. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
  457. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
  458. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
  459. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
  460. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
  461. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
  462. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
  463. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
  464. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
  465. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
  466. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
  467. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
  468. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
  469. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
  470. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
  471. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/cim16/cim_parser.py +0 -0
  472. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/__init__.py +0 -0
  473. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/base_db.py +0 -0
  474. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
  475. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
  476. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/file_system.py +0 -0
  477. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
  478. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/dgs/__init__.py +0 -0
  479. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
  480. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/epc/__init__.py +0 -0
  481. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/epc/epc_parser.py +0 -0
  482. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/file_system.py +0 -0
  483. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/__init__.py +0 -0
  484. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
  485. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
  486. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
  487. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
  488. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
  489. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/__init__.py +0 -0
  490. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/matpower_branch_definitions.py +0 -0
  491. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/matpower_bus_definitions.py +0 -0
  492. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/matpower_gen_definitions.py +0 -0
  493. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/matpower_parser.py +0 -0
  494. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/matpower/matpower_storage_definitions.py +0 -0
  495. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/others/__init__.py +0 -0
  496. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/others/dpx_parser.py +0 -0
  497. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/others/ipa_parser.py +0 -0
  498. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/others/plx_parser.py +0 -0
  499. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
  500. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/__init__.py +0 -0
  501. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
  502. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/area.py +0 -0
  503. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/branch.py +0 -0
  504. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/bus.py +0 -0
  505. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/facts.py +0 -0
  506. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
  507. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/generator.py +0 -0
  508. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
  509. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
  510. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
  511. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/load.py +0 -0
  512. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/node.py +0 -0
  513. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/owner.py +0 -0
  514. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/psse_circuit.py +0 -0
  515. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
  516. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
  517. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/substation.py +0 -0
  518. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
  519. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
  520. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
  521. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
  522. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
  523. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/devices/zone.py +0 -0
  524. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
  525. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/raw_functions.py +0 -0
  526. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/raw_parser_legacy.py +0 -0
  527. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/raw_parser_writer.py +0 -0
  528. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/raw_to_gridcal.py +0 -0
  529. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/rawx_parser_legacy.py +0 -0
  530. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
  531. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/LICENSE.txt +0 -0
  532. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
  533. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
  534. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
  535. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
  536. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
  537. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
  538. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
  539. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
  540. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
  541. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +0 -0
  542. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +0 -0
  543. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
  544. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +0 -0
  545. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
  546. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
  547. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
  548. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +0 -0
  549. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
  550. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
  551. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
  552. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
  553. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
  554. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
  555. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
  556. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
  557. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
  558. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
  559. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/NumericalMethods/MVRSM_mo_pareto.py +0 -0
  560. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/NumericalMethods/MVRSM_mo_scaled.py +0 -0
  561. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/NumericalMethods/MVRSM_original.py +0 -0
  562. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/NumericalMethods/__init__.py +0 -0
  563. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/NumericalMethods/stop_crits.py +0 -0
  564. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
  565. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
  566. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
  567. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
  568. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
  569. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +0 -0
  570. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
  571. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
  572. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
  573. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
  574. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
  575. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_driver.py +0 -0
  576. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_opf.py +0 -0
  577. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
  578. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
  579. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +0 -0
  580. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
  581. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
  582. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_autodif.py +0 -0
  583. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
  584. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
  585. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/opf_options.py +0 -0
  586. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
  587. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/opf_ts_results.py +0 -0
  588. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
  589. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
  590. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/ac_jacobian.py +0 -0
  591. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/acdc_jacobian.py +0 -0
  592. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
  593. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/derivatives.py +0 -0
  594. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
  595. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
  596. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
  597. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
  598. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
  599. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquardt.py +0 -0
  600. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquardt_acdc.py +0 -0
  601. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
  602. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson.py +0 -0
  603. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_acdc.py +0 -0
  604. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_current.py +0 -0
  605. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_decoupled.py +0 -0
  606. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_ode.py +0 -0
  607. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
  608. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
  609. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +0 -0
  610. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +0 -0
  611. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +0 -0
  612. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
  613. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
  614. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +0 -0
  615. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
  616. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
  617. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
  618. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
  619. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
  620. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +0 -0
  621. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
  622. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
  623. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +0 -0
  624. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
  625. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -0
  626. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/reliability_iterable.py +0 -0
  627. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
  628. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
  629. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
  630. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
  631. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
  632. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +0 -0
  633. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/__init__.py +0 -0
  634. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/driver_template.py +0 -0
  635. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/driver_types.py +0 -0
  636. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Simulations/results_table.py +0 -0
  637. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/__init__.py +0 -0
  638. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/admittance_matrices.py +0 -0
  639. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/detect_substations.py +0 -0
  640. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/simulation_indices.py +0 -0
  641. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/topology.py +0 -0
  642. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Topology/topology_substation_reduction.py +0 -0
  643. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
  644. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
  645. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
  646. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
  647. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
  648. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
  649. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
  650. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
  651. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
  652. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/__init__.py +0 -0
  653. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/ortools_interface.py +0 -0
  654. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/pulp_interface.py +0 -0
  655. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
  656. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/__init__.py +0 -0
  657. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
  658. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/common.py +0 -0
  659. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
  660. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
  661. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
  662. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
  663. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
  664. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
  665. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
  666. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
  667. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Sparse/csc.py +0 -0
  668. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
  669. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/Sparse/utils.py +0 -0
  670. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/__init__.py +0 -0
  671. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
  672. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/ThirdParty/__init__.py +0 -0
  673. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/Utils/__init__.py +0 -0
  674. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/__init__.py +0 -0
  675. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/api.py +0 -0
  676. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/GridCalEngine/data_logger.py +0 -0
  677. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/setup.cfg +0 -0
  678. {GridCalEngine-5.1.5 → GridCalEngine-5.1.7}/setup.py +0 -0
@@ -306,3 +306,19 @@ class GeneratorData:
306
306
  :return:
307
307
  """
308
308
  return np.where(self.dispatchable == 1)[0]
309
+
310
+ def get_dispatchable_active_indices(self) -> IntVec:
311
+ """
312
+ Get the indices of dispatchable generators
313
+ :return:
314
+ """
315
+ x = (self.dispatchable * self.active).astype(int)
316
+ return np.where(x == 1)[0]
317
+
318
+ def get_non_dispatchable_indices(self) -> IntVec:
319
+ """
320
+ Get the indices of dispatchable generators
321
+ :return:
322
+ """
323
+ x = (~self.dispatchable * self.active).astype(int)
324
+ return np.where(x == 1)[0]
@@ -32,15 +32,17 @@ class Investment(EditableDevice):
32
32
  code='',
33
33
  CAPEX=0.0,
34
34
  OPEX=0.0,
35
+ status: bool = True,
35
36
  group: InvestmentsGroup = None,
36
37
  comment: str = ""):
37
38
  """
38
- Contingency
39
+ Investment
39
40
  :param idtag: String. Element unique identifier
40
41
  :param name: String. Contingency name
41
42
  :param code: String. Contingency code name
42
43
  :param CAPEX: Float. Capital expenditures
43
44
  :param OPEX: Float. Operating expenditures
45
+ :param status: If true the investment activates when applied, otherwise is deactivated
44
46
  :param group: ContingencyGroup. Contingency group
45
47
  :param comment: Comment
46
48
  """
@@ -57,12 +59,15 @@ class Investment(EditableDevice):
57
59
  self.CAPEX = CAPEX
58
60
  self.OPEX = OPEX
59
61
  self._group: InvestmentsGroup = group
62
+ self.status: bool = status
60
63
 
61
64
  self.register(key='device_idtag', units='', tpe=str, definition='Unique ID')
62
65
  self.register(key='CAPEX', units='Me', tpe=float,
63
66
  definition='Capital expenditures. This is the initial investment.')
64
67
  self.register(key='OPEX', units='Me', tpe=float,
65
68
  definition='Operation expenditures. Maintenance costs among other recurrent costs.')
69
+ self.register(key='status', units='', tpe=bool,
70
+ definition='If true the investment activates when applied, otherwise is deactivated.')
66
71
  self.register(key='group', units='', tpe=DeviceType.InvestmentsGroupDevice, definition='Investment group')
67
72
 
68
73
  @property
@@ -138,7 +138,7 @@ class HvdcLine(BranchParent):
138
138
 
139
139
  def __init__(self, bus_from: Bus = None, bus_to: Bus = None, name='HVDC Line', idtag=None, active=True, code='',
140
140
  rate=1.0, Pset=0.0, r=1e-20, loss_factor=0.0, Vset_f=1.0, Vset_t=1.0, length=1.0, mttf=0.0, mttr=0.0,
141
- overload_cost=1000.0, min_firing_angle_f=-1.0, max_firing_angle_f=1.0, min_firing_angle_t=-1.0,
141
+ overload_cost=1000.0, min_firing_angle_f=-1.0, max_firing_angle_f=1.0, min_firing_angle_t=-1.0,
142
142
  max_firing_angle_t=1.0, contingency_factor=1.0, protection_rating_factor: float = 1.4,
143
143
  control_mode: HvdcControlType = HvdcControlType.type_1_Pset, dispatchable=True, angle_droop=0,
144
144
  capex=0, opex=0, build_status: BuildStatus = BuildStatus.Commissioned, n_lines: int = 1):
@@ -116,7 +116,7 @@ class LineLocations(EditableDevice):
116
116
  values = np.array(data)
117
117
  self.set(data=values)
118
118
  else:
119
- self.data = np.zeros((0, 4))
119
+ self.data = list()
120
120
 
121
121
  def set(self, data: np.ndarray):
122
122
  """
@@ -82,14 +82,14 @@ class PointsGroup:
82
82
  return points
83
83
 
84
84
  def parse_data(self,
85
- data: Dict[str, Dict[str, Union[int, float, List[Tuple[float, float]]]]],
85
+ data: Dict[str, Dict[str, Union[int, float, bool, List[Tuple[float, float]]]]],
86
86
  obj_dict: Dict[str, ALL_DEV_TYPES],
87
87
  logger: Logger,
88
88
  category: str = "") -> None:
89
89
  """
90
90
  Parse file data ito this class
91
91
  :param data: json dictionary
92
- :param obj_dict: dicrtionary of relevant objects (idtag, object)
92
+ :param obj_dict: dictionary of relevant objects (idtag, object)
93
93
  :param logger: Logger
94
94
  :param category: category
95
95
  """
@@ -101,6 +101,7 @@ class PointsGroup:
101
101
 
102
102
  if api_object is None:
103
103
  # locations with no API object are not created
104
+ print()
104
105
  logger.add_error("Diagram location could not find API object",
105
106
  device_class=category,
106
107
  device=idtag,)
@@ -111,6 +112,7 @@ class PointsGroup:
111
112
  w=location['w'],
112
113
  h=location['h'],
113
114
  r=location['r'],
115
+ draw_labels=location.get('draw_labels', True),
114
116
  api_object=api_object)
115
117
  if 'latitude' in location:
116
118
  self.locations[idtag] = MapLocation(latitude=location['latitude'],
@@ -15,7 +15,7 @@
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
  from typing import Dict, List, Tuple, Union
18
- from GridCalEngine.Devices.Parents.editable_device import EditableDevice
18
+ from GridCalEngine.Devices.types import ALL_DEV_TYPES
19
19
 
20
20
 
21
21
  class GraphicLocation:
@@ -29,8 +29,9 @@ class GraphicLocation:
29
29
  h: int = 80,
30
30
  w: int = 80,
31
31
  r: float = 0,
32
- poly_line: List[Tuple[int, int]] = list(),
33
- api_object: EditableDevice = None):
32
+ poly_line: Union[None, List[Tuple[int, int]]] = None,
33
+ draw_labels: bool = True,
34
+ api_object: ALL_DEV_TYPES = None):
34
35
  """
35
36
  GraphicLocation
36
37
  :param x: x position (px)
@@ -39,6 +40,7 @@ class GraphicLocation:
39
40
  :param w: width (px)
40
41
  :param r: rotation (deg)
41
42
  :param poly_line: List of poits to represent a polyline, if this object is to use one
43
+ :param draw_labels: Draw labels?
42
44
  :param api_object: object to be linked to this representation
43
45
  """
44
46
  self.x = x
@@ -46,7 +48,8 @@ class GraphicLocation:
46
48
  self.h = h
47
49
  self.w = w
48
50
  self.r = r
49
- self.poly_line = poly_line
51
+ self.poly_line = list() if poly_line is None else poly_line
52
+ self.draw_labels = draw_labels
50
53
  self.api_object = api_object
51
54
 
52
55
  def get_properties_dict(self) -> Dict[str, Union[int, str]]:
@@ -60,4 +63,5 @@ class GraphicLocation:
60
63
  'w': self.w,
61
64
  'r': self.r,
62
65
  'poly_line': self.poly_line,
66
+ 'draw_labels': self.draw_labels,
63
67
  'api_object': self.api_object.idtag if self.api_object else ''}
@@ -2437,7 +2437,7 @@ class MultiCircuit:
2437
2437
 
2438
2438
  return data
2439
2439
 
2440
- def gat_all_elements_dict_by_type(self) -> dict[Callable[[], Any], Union[dict[str, ALL_DEV_TYPES], Any]]:
2440
+ def get_all_elements_dict_by_type(self) -> dict[Callable[[], Any], Union[dict[str, ALL_DEV_TYPES], Any]]:
2441
2441
  """
2442
2442
  Get a dictionary of all elements by type
2443
2443
  :return:
@@ -356,18 +356,23 @@ class CgmesDataParser(BaseCircuit):
356
356
  self.parsed_data[file_name] = file_cgmes_data
357
357
  profile = model_info.get('profile', '')
358
358
 
359
- for prof in profile:
360
- if prof in cgmes2_4_15_uri:
361
- self.cgmes_version = "2.4.15"
362
- elif prof in cgmes3_0_0_uri:
363
- self.cgmes_version = "3.0.0"
364
-
365
359
  if isinstance(profile, list):
360
+ for prof in profile:
361
+ if prof in cgmes2_4_15_uri:
362
+ self.cgmes_version = "2.4.15"
363
+ elif prof in cgmes3_0_0_uri:
364
+ self.cgmes_version = "3.0.0"
365
+
366
366
  if 'Boundary' in profile[0]:
367
367
  merge(self.boudary_set, file_cgmes_data, self.logger)
368
368
  else:
369
369
  merge(self.data, file_cgmes_data, self.logger)
370
370
  else:
371
+ if profile in cgmes2_4_15_uri:
372
+ self.cgmes_version = "2.4.15"
373
+ elif profile in cgmes3_0_0_uri:
374
+ self.cgmes_version = "3.0.0"
375
+
371
376
  if 'Boundary' in profile:
372
377
  merge(self.boudary_set, file_cgmes_data, self.logger)
373
378
  else:
@@ -154,7 +154,7 @@ class CimExporter:
154
154
  "description": "str"}
155
155
 
156
156
  for instance in self.cgmes_circuit.FullModel_list:
157
- instance_dict = instance.parsed_properties
157
+ instance_dict = instance.__dict__
158
158
  if self.is_in_profile(instance_profiles=instance_dict.get("profile"), model_profile=profile):
159
159
  element = Et.Element("md:FullModel", {"rdf:about": "urn:uuid:" + instance.rdfid})
160
160
  for attr_name, attr_value in instance_dict.items():
@@ -1,6 +1,6 @@
1
1
  from GridCalEngine.Devices import MultiCircuit
2
2
  from GridCalEngine.Devices.Substation.bus import Bus
3
- from GridCalEngine.IO.cim.cgmes.base import get_new_rdfid, form_rdfid
3
+ from GridCalEngine.IO.cim.cgmes.base import get_new_rdfid, form_rdfid, rfid2uuid
4
4
  from GridCalEngine.IO.cim.cgmes.cgmes_circuit import CgmesCircuit
5
5
  from GridCalEngine.IO.cim.cgmes.cgmes_v2_4_15.devices.full_model import FullModel
6
6
  from GridCalEngine.IO.cim.cgmes.base import Base
@@ -38,33 +38,36 @@ class ReferenceManager:
38
38
  # pass # TODO
39
39
 
40
40
 
41
- def find_object_by_uuid(object_list, target_uuid): # TODO move to CGMES utils
41
+ def find_object_by_uuid(cgmes_model: CgmesCircuit, object_list, target_uuid): # TODO move to CGMES utils
42
42
  """
43
43
  Finds an object with the specified uuid
44
44
  in the given object_list from a CGMES Circuit.
45
45
 
46
46
  Args:
47
+ cgmes_model:
47
48
  object_list (list[MyObject]): List of MyObject instances.
48
49
  target_uuid (str): The uuid to search for.
49
50
 
50
51
  Returns:
51
52
  MyObject or None: The found object or None if not found.
52
53
  """
54
+ boundary_obj_dict = cgmes_model.all_objects_dict_boundary
55
+ if boundary_obj_dict is not None:
56
+ for k, obj in boundary_obj_dict.items():
57
+ if rfid2uuid(k) == target_uuid:
58
+ return obj
53
59
  for obj in object_list:
54
60
  if obj.uuid == target_uuid:
55
61
  return obj
56
62
  return None
57
63
 
58
64
 
59
- def find_object_by_tn_uuid(object_list: List[cgmes.VoltageLevel], target_uuid):
60
- """ for Voltage Levels.. """
61
- for obj in object_list:
62
- if obj.TopologicalNode.uuid == target_uuid:
63
- return obj
64
- return None
65
-
66
-
67
- def find_object_by_vnom(object_list: List[cgmes.BaseVoltage], target_vnom):
65
+ def find_object_by_vnom(cgmes_model: CgmesCircuit, object_list: List[cgmes.BaseVoltage], target_vnom):
66
+ boundary_obj_list = cgmes_model.elements_by_type_boundary.get("BaseVoltage")
67
+ if boundary_obj_list is not None:
68
+ for obj in boundary_obj_list:
69
+ if obj.nominalVoltage == target_vnom:
70
+ return obj
68
71
  for obj in object_list:
69
72
  if obj.nominalVoltage == target_vnom:
70
73
  return obj
@@ -174,12 +177,11 @@ def create_cgmes_headers(cgmes_model: CgmesCircuit, desc: str = "", scenariotime
174
177
 
175
178
  fm_list[0].DependentOn = [eqbd_id]
176
179
  fm_list[1].DependentOn = [fm_list[0].rdfid]
180
+ fm_list[2].DependentOn = [fm_list[0].rdfid]
177
181
  if tpbd_id != "":
178
- fm_list[2].DependentOn = [eqbd_id, tpbd_id, fm_list[0].rdfid]
179
- fm_list[3].DependentOn = [tpbd_id, fm_list[0].rdfid, fm_list[1].rdfid, fm_list[2].rdfid]
182
+ fm_list[3].DependentOn = [tpbd_id, fm_list[1].rdfid, fm_list[2].rdfid]
180
183
  else:
181
- fm_list[2].DependentOn = [eqbd_id, fm_list[0].rdfid]
182
- fm_list[3].DependentOn = [fm_list[0].rdfid, fm_list[1].rdfid, fm_list[2].rdfid]
184
+ fm_list[3].DependentOn = [fm_list[1].rdfid, fm_list[2].rdfid]
183
185
  except TypeError:
184
186
  print("Missing default boundary files")
185
187
  fm_list[1].DependentOn = [fm_list[0].rdfid]
@@ -203,6 +205,7 @@ def create_cgmes_terminal(bus: Bus,
203
205
  # term.ConductingEquipment = BusBarSection
204
206
  term.connected = True
205
207
  tn = find_object_by_uuid(
208
+ cgmes_model=cgmes_model,
206
209
  object_list=cgmes_model.TopologicalNode_list,
207
210
  target_uuid=bus.idtag
208
211
  )
@@ -327,13 +330,22 @@ def get_cgmes_subgeograpical_regions(multi_circuit_model: MultiCircuit,
327
330
  pass
328
331
 
329
332
 
333
+ def get_base_voltage_from_boundary(cgmes_model: CgmesCircuit, vnom: float):
334
+ bv_list = cgmes_model.elements_by_type_boundary.get("BaseVoltage")
335
+ if bv_list is not None:
336
+ for bv in bv_list:
337
+ if bv.nominalVoltage == vnom:
338
+ return bv
339
+ return None
340
+
341
+
330
342
  def get_cgmes_base_voltages(multi_circuit_model: MultiCircuit,
331
343
  cgmes_model: CgmesCircuit,
332
344
  logger: DataLogger) -> None:
333
345
  base_volt_set = set()
334
346
  for bus in multi_circuit_model.buses:
335
347
 
336
- if bus.Vnom not in base_volt_set:
348
+ if bus.Vnom not in base_volt_set and get_base_voltage_from_boundary(cgmes_model, vnom=bus.Vnom) is None:
337
349
  base_volt_set.add(bus.Vnom)
338
350
 
339
351
  new_rdf_id = get_new_rdfid()
@@ -352,6 +364,7 @@ def get_cgmes_substations(multi_circuit_model: MultiCircuit,
352
364
  substation = cgmes.Substation(rdfid=form_rdfid(mc_elm.idtag))
353
365
  substation.name = mc_elm.name
354
366
  substation.Region = find_object_by_uuid(
367
+ cgmes_model=cgmes_model,
355
368
  object_list=cgmes_model.SubGeographicalRegion_list,
356
369
  target_uuid=mc_elm.idtag # TODO Community.idtag!
357
370
  )
@@ -367,6 +380,7 @@ def get_cgmes_voltage_levels(multi_circuit_model: MultiCircuit,
367
380
  vl = cgmes.VoltageLevel(rdfid=form_rdfid(mc_elm.idtag))
368
381
  vl.name = mc_elm.name
369
382
  vl.BaseVoltage = find_object_by_vnom(
383
+ cgmes_model=cgmes_model,
370
384
  object_list=cgmes_model.BaseVoltage_list,
371
385
  target_vnom=mc_elm.Vnom
372
386
  )
@@ -375,6 +389,7 @@ def get_cgmes_voltage_levels(multi_circuit_model: MultiCircuit,
375
389
 
376
390
  if mc_elm.substation is not None:
377
391
  substation: cgmes.Substation = find_object_by_uuid(
392
+ cgmes_model=cgmes_model,
378
393
  object_list=cgmes_model.Substation_list,
379
394
  target_uuid=mc_elm.substation.idtag
380
395
  )
@@ -397,12 +412,14 @@ def get_cgmes_tn_nodes(multi_circuit_model: MultiCircuit,
397
412
  tn = cgmes.TopologicalNode(rdfid=bus.idtag)
398
413
  tn.name = bus.name
399
414
  tn.BaseVoltage = find_object_by_vnom(
415
+ cgmes_model=cgmes_model,
400
416
  object_list=cgmes_model.BaseVoltage_list,
401
417
  target_vnom=bus.Vnom
402
418
  )
403
419
 
404
420
  if bus.voltage_level is not None: # VoltageLevel
405
421
  vl: cgmes.VoltageLevel = find_object_by_uuid(
422
+ cgmes_model=cgmes_model,
406
423
  object_list=cgmes_model.VoltageLevel_list,
407
424
  target_uuid=bus.voltage_level.idtag
408
425
  )
@@ -426,9 +443,9 @@ def get_cgmes_cn_nodes(multi_circuit_model: MultiCircuit,
426
443
 
427
444
  cn = cgmes.ConnectivityNode(rdfid=form_rdfid(mc_elm.idtag))
428
445
  cn.name = mc_elm.name
429
- tn = None
430
446
  if mc_elm.default_bus is not None:
431
447
  tn: cgmes.TopologicalNode = find_object_by_uuid(
448
+ cgmes_model=cgmes_model,
432
449
  object_list=cgmes_model.TopologicalNode_list,
433
450
  target_uuid=mc_elm.default_bus.idtag
434
451
  )
@@ -438,12 +455,12 @@ def get_cgmes_cn_nodes(multi_circuit_model: MultiCircuit,
438
455
  tn.ConnectivityNodes = cn # link back
439
456
  else:
440
457
  logger.add_error(msg='No TopologinalNode found',
441
- device=cn,
458
+ device=cn.name,
442
459
  device_class=cn.tpe)
443
460
  else:
444
461
  logger.add_error(msg='Connectivity Node has no default bus',
445
- device=mc_elm,
446
- device_class=gcdev.ConnectivityNode)
462
+ device=mc_elm.name,
463
+ device_class=mc_elm.device_type)
447
464
  # print(f'Topological node not found for cn: {cn.name}')
448
465
 
449
466
  cgmes_model.add(cn)
@@ -535,8 +552,9 @@ def get_cgmes_equivalent_injections(multicircuit_model: MultiCircuit,
535
552
  ei.name = mc_elm.name
536
553
  ei.p = mc_elm.P
537
554
  ei.q = mc_elm.Q
538
- ei.BaseVoltage = find_object_by_attribute(cgmes_model.BaseVoltage_list, "nominalVoltage",
539
- mc_elm.bus.Vnom)
555
+ ei.BaseVoltage = find_object_by_vnom(cgmes_model=cgmes_model,
556
+ object_list=cgmes_model.BaseVoltage_list,
557
+ target_vnom=mc_elm.bus.Vnom)
540
558
 
541
559
  cgmes_model.add(ei)
542
560
 
@@ -558,11 +576,10 @@ def get_cgmes_ac_line_segments(multicircuit_model: MultiCircuit,
558
576
  line = cgmes.ACLineSegment(rdfid=form_rdfid(mc_elm.idtag))
559
577
  line.description = mc_elm.code
560
578
  line.name = mc_elm.name
561
- line.BaseVoltage = find_object_by_attribute(
562
- object_list=cgmes_model.BaseVoltage_list,
563
- target_attr_name="nominalVoltage",
564
- target_value=mc_elm.get_max_bus_nominal_voltage()
565
- ) # which Vnom we need?
579
+ line.BaseVoltage = find_object_by_vnom(cgmes_model=cgmes_model,
580
+ object_list=cgmes_model.BaseVoltage_list,
581
+ target_vnom=mc_elm.get_max_bus_nominal_voltage()
582
+ ) # which Vnom we need?
566
583
  vnom = line.BaseVoltage.nominalVoltage
567
584
 
568
585
  if vnom is not None:
@@ -48,6 +48,8 @@ from GridCalEngine.IO.gridcal.h5_interface import save_h5, open_h5
48
48
  from GridCalEngine.IO.raw.rawx_parser_writer import parse_rawx, write_rawx
49
49
  from GridCalEngine.IO.others.pypsa_parser import parse_netcdf, parse_hdf5
50
50
  from GridCalEngine.Devices.multi_circuit import MultiCircuit
51
+ from GridCalEngine.Simulations.results_template import DriverToSave
52
+ from GridCalEngine.enumerations import CGMESVersions
51
53
 
52
54
 
53
55
  class FileSavingOptions:
@@ -58,21 +60,25 @@ class FileSavingOptions:
58
60
  def __init__(self,
59
61
  cgmes_boundary_set: str = "",
60
62
  simulation_drivers: List[DriverTemplate] = None,
61
- sessions: List[Any] = None,
62
- dictionary_of_json_files: Dict[str, Dict[str, Any]] = None):
63
+ sessions_data: List[DriverToSave] = None,
64
+ dictionary_of_json_files: Dict[str, Dict[str, Any]] = None,
65
+ cgmes_version: CGMESVersions = CGMESVersions.v2_4_15):
63
66
  """
64
67
  Constructor
65
68
  :param cgmes_boundary_set: CGMES boundary set zip file path
66
69
  :param simulation_drivers: List of Simulation Drivers
67
- :param sessions: List of sessions
70
+ :param sessions_data: List of sessions_data
68
71
  :param dictionary_of_json_files: Dictionary of json files
72
+ :param cgmes_version: Version to use with CGMES
69
73
  """
70
74
 
75
+ self.cgmes_vesrion: CGMESVersions = cgmes_version
76
+
71
77
  self.cgmes_boundary_set: str = cgmes_boundary_set
72
78
 
73
79
  self.simulation_drivers = simulation_drivers if simulation_drivers else list()
74
80
 
75
- self.sessions = sessions if sessions else list()
81
+ self.sessions_data: List[DriverToSave] = sessions_data if sessions_data else list()
76
82
 
77
83
  self.dictionary_of_json_files = dictionary_of_json_files if dictionary_of_json_files else dict()
78
84
 
@@ -125,7 +131,7 @@ class FileOpen:
125
131
  _, file_extension = os.path.splitext(f)
126
132
  if file_extension.lower() not in ['.xml', '.zip']:
127
133
  raise Exception('Loading multiple files that are not XML/Zip (xml or zip is for CIM or CGMES)')
128
- import time
134
+
129
135
  data_parser = CgmesDataParser(text_func=text_func, progress_func=progress_func, logger=self.cgmes_logger)
130
136
  data_parser.load_files(files=self.file_name)
131
137
  self.cgmes_circuit = CgmesCircuit(cgmes_version=data_parser.cgmes_version, text_func=text_func,
@@ -398,7 +404,7 @@ class FileSave:
398
404
  save_gridcal_data_to_zip(dfs=dfs,
399
405
  filename_zip=self.file_name,
400
406
  model_data=model_data,
401
- sessions=self.options.sessions,
407
+ sessions_data=self.options.sessions_data,
402
408
  diagrams=self.circuit.diagrams,
403
409
  json_files=self.options.dictionary_of_json_files,
404
410
  text_func=self.text_func,
@@ -195,7 +195,7 @@ def load_from_xls(filename: str) -> Dict[str, pd.DataFrame]:
195
195
  # pandas does not read complex numbers right,
196
196
  # so when we expect a complex number input, parse directly
197
197
  for c in df.columns.values:
198
- df[c] = df[c].apply(lambda x: np.complex(x))
198
+ df[c] = df[c].apply(lambda x: complex(x))
199
199
 
200
200
  data[name] = df
201
201
 
@@ -246,16 +246,23 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
246
246
  attr = 'template'
247
247
 
248
248
  if hasattr(obj_, attr):
249
- conv = obj_.registered_properties[attr].tpe # get the type converter
250
- if conv is None:
251
- setattr(obj_, attr, values[a])
252
- elif conv is dev.BranchType:
253
- # cbr = BranchTypeConverter(None)
254
- setattr(obj_, attr, dev.BranchType(values[a]))
255
- elif isinstance(conv, DeviceType):
256
- pass
249
+
250
+ prop = obj_.registered_properties.get(attr, None)
251
+
252
+ if prop is not None:
253
+ conv = prop.tpe # get the type converter
254
+ if conv is None:
255
+ setattr(obj_, attr, values[a])
256
+ elif conv is dev.BranchType:
257
+ # cbr = BranchTypeConverter(None)
258
+ setattr(obj_, attr, dev.BranchType(values[a]))
259
+ elif isinstance(conv, DeviceType):
260
+ pass
261
+ else:
262
+ setattr(obj_, attr, conv(values[a]))
257
263
  else:
258
- setattr(obj_, attr, conv(values[a]))
264
+ # the property wasn't found
265
+ pass
259
266
  else:
260
267
 
261
268
  if attr in ['Y', 'Z', 'I', 'S', 'seq_resistance', 'seq_admittance', 'Zf']:
@@ -315,7 +322,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
315
322
  set_object_attributes(obj, hdr, vals[i, :])
316
323
  bus_dict[obj.name] = obj
317
324
  circuit.add_bus(obj)
318
- obj.ensure_profiles_exist(circuit.time_profile)
319
325
  else:
320
326
  circuit.logger.add_warning('No buses in the file!')
321
327
 
@@ -372,7 +378,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
372
378
  obj.name += f"{circuit.get_loads_number()} @{bus.name}"
373
379
 
374
380
  circuit.add_load(bus, api_obj=obj)
375
- obj.ensure_profiles_exist(circuit.time_profile)
376
381
  else:
377
382
  circuit.logger.add_warning('No loads in the file!')
378
383
 
@@ -414,7 +419,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
414
419
 
415
420
  obj.bus = bus
416
421
  circuit.add_generator(bus=bus, api_obj=obj)
417
- obj.ensure_profiles_exist(circuit.time_profile)
418
422
  else:
419
423
  circuit.logger.add_warning('No controlled generator in the file!')
420
424
 
@@ -454,7 +458,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
454
458
  obj.name += str(circuit.get_batteries_number() + 1) + '@' + bus.name
455
459
 
456
460
  circuit.add_battery(bus=bus, api_obj=obj)
457
- obj.ensure_profiles_exist(circuit.time_profile)
458
461
  else:
459
462
  circuit.logger.add_warning('No battery in the file!')
460
463
 
@@ -495,7 +498,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
495
498
 
496
499
  obj.bus = bus
497
500
  circuit.add_static_generator(bus=bus, api_obj=obj)
498
- obj.ensure_profiles_exist(circuit.time_profile)
499
501
  else:
500
502
  circuit.logger.add_warning('No static generator in the file!')
501
503
 
@@ -525,7 +527,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
525
527
 
526
528
  obj.bus = bus
527
529
  circuit.add_shunt(bus=bus, api_obj=obj)
528
- obj.ensure_profiles_exist(circuit.time_profile)
529
530
  else:
530
531
  circuit.logger.add_warning('No shunt in the file!')
531
532
 
@@ -635,7 +636,6 @@ def interprete_excel_v2(circuit: MultiCircuit, data):
635
636
 
636
637
  # set the branch
637
638
  circuit.add_branch(obj)
638
- obj.ensure_profiles_exist(circuit.time_profile)
639
639
 
640
640
  else:
641
641
  circuit.logger.add_warning('No Branches in the file!')
@@ -732,7 +732,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
732
732
  set_object_attributes(obj, hdr, vals[i, :])
733
733
  bus_dict[obj.name] = obj
734
734
  circuit.add_bus(obj)
735
- obj.ensure_profiles_exist(circuit.time_profile)
736
735
  else:
737
736
  circuit.logger.add_warning('No buses in the file!')
738
737
 
@@ -778,7 +777,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
778
777
 
779
778
  obj.bus = bus
780
779
  circuit.add_load(bus=bus, api_obj=obj)
781
- obj.ensure_profiles_exist(circuit.time_profile)
782
780
  else:
783
781
  circuit.logger.add_warning('No loads in the file!')
784
782
 
@@ -833,7 +831,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
833
831
 
834
832
  obj.bus = bus
835
833
  circuit.add_generator(bus=bus, api_obj=obj)
836
- obj.ensure_profiles_exist(circuit.time_profile)
837
834
  else:
838
835
  circuit.logger.add_warning('No controlled generator in the file!')
839
836
 
@@ -880,7 +877,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
880
877
 
881
878
  obj.bus = bus
882
879
  circuit.add_battery(bus=bus, api_obj=obj)
883
- obj.ensure_profiles_exist(circuit.time_profile)
884
880
  else:
885
881
  circuit.logger.add_warning('No battery in the file!')
886
882
 
@@ -931,7 +927,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
931
927
 
932
928
  obj.bus = bus
933
929
  circuit.add_static_generator(bus=bus, api_obj=obj)
934
- obj.ensure_profiles_exist(circuit.time_profile)
935
930
  else:
936
931
  circuit.logger.add_warning('No static generator in the file!')
937
932
 
@@ -982,7 +977,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
982
977
 
983
978
  obj.bus = bus
984
979
  circuit.add_shunt(bus=bus, api_obj=obj)
985
- obj.ensure_profiles_exist(circuit.time_profile)
986
980
  else:
987
981
  circuit.logger.add_warning('No shunt in the file!')
988
982
 
@@ -1099,7 +1093,6 @@ def interpret_excel_v3(circuit: MultiCircuit, data):
1099
1093
 
1100
1094
  # set the branch
1101
1095
  circuit.add_branch(obj)
1102
- obj.ensure_profiles_exist(circuit.time_profile)
1103
1096
 
1104
1097
  if 'branch_active_prof' in data.keys():
1105
1098
  val = data['branch_active_prof'].values[:, i]
@@ -1315,7 +1315,7 @@ def parse_gridcal_data(data: Dict[str, Union[str, float, Dict, pd.DataFrame, Dic
1315
1315
  if 'diagrams' in data.keys():
1316
1316
 
1317
1317
  if len(data['diagrams']):
1318
- obj_dict = circuit.gat_all_elements_dict_by_type()
1318
+ obj_dict = circuit.get_all_elements_dict_by_type()
1319
1319
 
1320
1320
  for diagram_dict in data['diagrams']:
1321
1321