GridCalEngine 5.3.25__tar.gz → 5.3.26__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 (777) hide show
  1. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_data.py +51 -3
  2. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/generator_data.py +12 -0
  3. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/investment.py +5 -4
  4. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/investments_group.py +7 -2
  5. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +1 -1
  6. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_driver.py +1 -1
  7. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +51 -14
  8. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/opf_driver.py +1 -1
  9. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/opf_options.py +3 -0
  10. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +6 -2
  11. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/opf_ts_results.py +32 -3
  12. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_advanced_formulation.py +4 -4
  13. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_generalized_formulation.py +19 -32
  14. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +5 -5
  15. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +10 -0
  16. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/pulp_interface.py +3 -6
  17. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/common.py +2 -21
  18. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/__version__.py +1 -1
  19. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/basic_structures.py +1 -1
  20. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/enumerations.py +9 -9
  21. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/PKG-INFO +1 -1
  22. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/__init__.py +0 -0
  23. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_bentayga.py +0 -0
  24. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_gslv.py +0 -0
  25. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_newton_pa.py +0 -0
  26. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
  27. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Compilers/circuit_to_pgm.py +0 -0
  28. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/__init__.py +0 -0
  29. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/active_branch_data.py +0 -0
  30. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/battery_data.py +0 -0
  31. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/branch_parent_data.py +0 -0
  32. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/bus_data.py +0 -0
  33. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
  34. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
  35. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
  36. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
  37. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
  38. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
  39. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/load_data.py +0 -0
  40. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/numerical_circuit.py +0 -0
  41. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/passive_branch_data.py +0 -0
  42. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/shunt_data.py +0 -0
  43. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/DataStructures/vsc_data.py +0 -0
  44. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
  45. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/area.py +0 -0
  46. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
  47. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/community.py +0 -0
  48. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/contingency.py +0 -0
  49. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
  50. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/country.py +0 -0
  51. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/facility.py +0 -0
  52. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/inter_aggregation_info.py +0 -0
  53. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
  54. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
  55. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/region.py +0 -0
  56. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/remedial_action.py +0 -0
  57. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/remedial_action_group.py +0 -0
  58. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
  59. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Associations/__init__.py +0 -0
  60. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Associations/association.py +0 -0
  61. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Associations/emission_gas.py +0 -0
  62. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Associations/fuel.py +0 -0
  63. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Associations/technology.py +0 -0
  64. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/__init__.py +0 -0
  65. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/branch.py +0 -0
  66. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
  67. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/hvdc_line.py +0 -0
  68. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/line.py +0 -0
  69. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/line_locations.py +0 -0
  70. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/overhead_line_type.py +0 -0
  71. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
  72. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
  73. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/switch.py +0 -0
  74. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
  75. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/transformer.py +0 -0
  76. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/transformer3w.py +0 -0
  77. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
  78. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
  79. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/upfc.py +0 -0
  80. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/vsc.py +0 -0
  81. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/winding.py +0 -0
  82. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Branches/wire.py +0 -0
  83. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
  84. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/base_diagram.py +0 -0
  85. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/graphic_location.py +0 -0
  86. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
  87. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
  88. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/palettes.py +0 -0
  89. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
  90. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
  91. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
  92. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
  93. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
  94. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
  95. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
  96. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
  97. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/__init__.py +0 -0
  98. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/battery.py +0 -0
  99. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
  100. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
  101. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
  102. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/generator.py +0 -0
  103. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
  104. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/load.py +0 -0
  105. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/shunt.py +0 -0
  106. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
  107. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/__init__.py +0 -0
  108. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
  109. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
  110. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/editable_device.py +0 -0
  111. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
  112. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
  113. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
  114. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/physical_device.py +0 -0
  115. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
  116. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/__init__.py +0 -0
  117. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/bus.py +0 -0
  118. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/busbar.py +0 -0
  119. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
  120. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/substation.py +0 -0
  121. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
  122. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/__init__.py +0 -0
  123. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/admittance_matrix.py +0 -0
  124. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/assets.py +0 -0
  125. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/comparison.py +0 -0
  126. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/measurement.py +0 -0
  127. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/multi_circuit.py +0 -0
  128. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/profile.py +0 -0
  129. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Devices/types.py +0 -0
  130. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/__init__.py +0 -0
  131. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/base/__init__.py +0 -0
  132. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/base/base_circuit.py +0 -0
  133. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/base/base_device.py +0 -0
  134. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/base/base_property.py +0 -0
  135. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/base/units.py +0 -0
  136. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/__init__.py +0 -0
  137. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
  138. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
  139. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_assets/__init__.py +0 -0
  140. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_2_4_15_assets.py +0 -0
  141. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_3_0_0_assets.py +0 -0
  142. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
  143. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_create_instances.py +0 -0
  144. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +0 -0
  145. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
  146. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
  147. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +0 -0
  148. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_property.py +0 -0
  149. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +0 -0
  150. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
  151. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
  152. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
  153. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
  154. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
  155. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
  156. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
  157. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
  158. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
  159. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
  160. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
  161. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
  162. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
  163. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
  164. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
  165. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
  166. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
  167. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
  168. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
  169. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
  170. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
  171. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
  172. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
  173. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
  174. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
  175. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
  176. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
  177. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
  178. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
  179. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
  180. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
  181. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
  182. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
  183. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
  184. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
  185. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
  186. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
  187. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
  188. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
  189. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
  190. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
  191. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
  192. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
  193. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
  194. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
  195. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
  196. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
  197. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
  198. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
  199. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
  200. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
  201. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
  202. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
  203. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
  204. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
  205. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
  206. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
  207. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
  208. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
  209. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
  210. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
  211. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
  212. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
  213. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
  214. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
  215. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
  216. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
  217. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
  218. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
  219. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
  220. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
  221. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
  222. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
  223. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
  224. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
  225. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
  226. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
  227. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
  228. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
  229. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
  230. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
  231. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
  232. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
  233. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
  234. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
  235. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
  236. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
  237. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
  238. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
  239. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
  240. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
  241. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
  242. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
  243. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
  244. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
  245. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
  246. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
  247. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
  248. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
  249. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
  250. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
  251. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
  252. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
  253. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
  254. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
  255. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
  256. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
  257. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
  258. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
  259. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
  260. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
  261. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
  262. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
  263. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
  264. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
  265. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
  266. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
  267. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
  268. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
  269. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
  270. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
  271. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
  272. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
  273. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
  274. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
  275. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
  276. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
  277. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
  278. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
  279. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
  280. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
  281. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
  282. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
  283. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
  284. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
  285. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
  286. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
  287. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
  288. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
  289. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
  290. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
  291. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
  292. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
  293. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
  294. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
  295. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
  296. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
  297. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
  298. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
  299. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
  300. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
  301. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
  302. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
  303. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
  304. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
  305. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
  306. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
  307. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
  308. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/analog_control.py +0 -0
  309. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
  310. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
  311. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
  312. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
  313. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
  314. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
  315. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
  316. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
  317. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
  318. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
  319. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
  320. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
  321. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
  322. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
  323. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
  324. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
  325. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
  326. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
  327. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
  328. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
  329. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
  330. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
  331. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control.py +0 -0
  332. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
  333. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
  334. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
  335. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
  336. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
  337. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
  338. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
  339. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
  340. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
  341. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
  342. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
  343. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
  344. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
  345. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
  346. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
  347. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
  348. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
  349. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
  350. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
  351. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
  352. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
  353. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
  354. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
  355. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
  356. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
  357. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
  358. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
  359. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
  360. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
  361. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
  362. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
  363. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
  364. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
  365. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
  366. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
  367. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
  368. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
  369. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
  370. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
  371. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
  372. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
  373. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
  374. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
  375. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
  376. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
  377. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
  378. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
  379. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
  380. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
  381. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
  382. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
  383. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
  384. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
  385. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
  386. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
  387. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/io_point.py +0 -0
  388. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
  389. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
  390. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit.py +0 -0
  391. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit_set.py +0 -0
  392. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
  393. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
  394. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
  395. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
  396. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
  397. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
  398. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
  399. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement.py +0 -0
  400. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement_value.py +0 -0
  401. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/mutual_coupling.py +0 -0
  402. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
  403. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
  404. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
  405. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
  406. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
  407. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
  408. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
  409. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
  410. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
  411. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
  412. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
  413. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
  414. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
  415. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
  416. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
  417. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
  418. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
  419. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
  420. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
  421. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
  422. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
  423. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
  424. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
  425. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
  426. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
  427. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
  428. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
  429. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
  430. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
  431. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
  432. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
  433. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
  434. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
  435. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_cond_eq.py +0 -0
  436. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
  437. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
  438. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
  439. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
  440. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
  441. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
  442. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
  443. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
  444. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
  445. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
  446. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
  447. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
  448. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
  449. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
  450. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
  451. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
  452. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +0 -0
  453. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
  454. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
  455. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
  456. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
  457. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
  458. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
  459. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
  460. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
  461. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
  462. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
  463. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
  464. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
  465. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
  466. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
  467. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
  468. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
  469. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
  470. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
  471. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
  472. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
  473. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
  474. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
  475. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
  476. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
  477. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
  478. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +0 -0
  479. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/rdfs_infos.py +0 -0
  480. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cgmes/rdfs_serializations.py +0 -0
  481. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
  482. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
  483. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
  484. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
  485. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
  486. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/cim16/cim_parser.py +0 -0
  487. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/__init__.py +0 -0
  488. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/base_db.py +0 -0
  489. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
  490. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
  491. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/file_system.py +0 -0
  492. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
  493. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/dgs/__init__.py +0 -0
  494. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
  495. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/epc/__init__.py +0 -0
  496. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/epc/epc_parser.py +0 -0
  497. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/file_handler.py +0 -0
  498. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/file_system.py +0 -0
  499. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/__init__.py +0 -0
  500. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/catalogue.py +0 -0
  501. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
  502. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/excel_interface.py +0 -0
  503. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
  504. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
  505. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
  506. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/pack_unpack.py +0 -0
  507. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/remote.py +0 -0
  508. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/results_export.py +0 -0
  509. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
  510. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/gridcal/zip_interface.py +0 -0
  511. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/__init__.py +0 -0
  512. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/area.py +0 -0
  513. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/branch.py +0 -0
  514. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/branch_dc.py +0 -0
  515. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/bus.py +0 -0
  516. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/bus_dc.py +0 -0
  517. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/converter_dc.py +0 -0
  518. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/generator.py +0 -0
  519. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/legacy/__init__.py +0 -0
  520. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/legacy/matpower_branch_definitions.py +0 -0
  521. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/legacy/matpower_bus_definitions.py +0 -0
  522. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/legacy/matpower_gen_definitions.py +0 -0
  523. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/legacy/matpower_parser.py +0 -0
  524. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/matpower_circuit.py +0 -0
  525. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/matpower_to_gridcal.py +0 -0
  526. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/matpower/matpower_utils.py +0 -0
  527. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/__init__.py +0 -0
  528. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/dpx_parser.py +0 -0
  529. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/ipa_parser.py +0 -0
  530. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/pandapower_parser.py +0 -0
  531. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/plx_parser.py +0 -0
  532. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
  533. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/__init__.py +0 -0
  534. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
  535. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/area.py +0 -0
  536. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/branch.py +0 -0
  537. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/bus.py +0 -0
  538. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/facts.py +0 -0
  539. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
  540. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/generator.py +0 -0
  541. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
  542. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/impedance_correction_table.py +0 -0
  543. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
  544. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
  545. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/load.py +0 -0
  546. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/multi_section_line.py +0 -0
  547. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/node.py +0 -0
  548. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/owner.py +0 -0
  549. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/psse_circuit.py +0 -0
  550. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
  551. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
  552. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/substation.py +0 -0
  553. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
  554. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
  555. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
  556. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
  557. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
  558. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/devices/zone.py +0 -0
  559. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
  560. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/raw_functions.py +0 -0
  561. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/raw_parser_writer.py +0 -0
  562. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/raw_to_gridcal.py +0 -0
  563. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/raw_writer_comment_map.py +0 -0
  564. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
  565. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/__init__.py +0 -0
  566. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/__init__.py +0 -0
  567. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_base.py +0 -0
  568. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_circuit.py +0 -0
  569. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_comment.py +0 -0
  570. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_exchange_power.py +0 -0
  571. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_line.py +0 -0
  572. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_node.py +0 -0
  573. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_transformer.py +0 -0
  574. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_transformer_regulation.py +0 -0
  575. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/devices/ucte_transformer_tap_table.py +0 -0
  576. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/IO/ucte/ucte_to_gridcal.py +0 -0
  577. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/LICENSE.txt +0 -0
  578. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
  579. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
  580. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ATC/available_transfer_capacity_options.py +0 -0
  581. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +0 -0
  582. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
  583. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
  584. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Clustering/clustering_driver.py +0 -0
  585. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
  586. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
  587. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
  588. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
  589. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
  590. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +0 -0
  591. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +0 -0
  592. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
  593. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +0 -0
  594. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +0 -0
  595. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +0 -0
  596. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
  597. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
  598. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +0 -0
  599. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
  600. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +0 -0
  601. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
  602. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
  603. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +0 -0
  604. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
  605. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
  606. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
  607. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Derivatives/__init__.py +0 -0
  608. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Derivatives/ac_jacobian.py +0 -0
  609. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Derivatives/csc_derivatives.py +0 -0
  610. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Derivatives/csr_derivatives.py +0 -0
  611. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Derivatives/matpower_derivatives.py +0 -0
  612. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
  613. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
  614. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
  615. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
  616. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
  617. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/NSGA_3.py +0 -0
  618. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/__init__.py +0 -0
  619. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/mixed_variable_NSGA_2.py +0 -0
  620. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/random_eval.py +0 -0
  621. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/stop_crits.py +0 -0
  622. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
  623. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
  624. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
  625. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
  626. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
  627. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +0 -0
  628. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +0 -0
  629. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
  630. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
  631. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
  632. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
  633. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
  634. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_driver.py +0 -0
  635. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_opf.py +0 -0
  636. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
  637. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
  638. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +0 -0
  639. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
  640. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NodalCapacity/__init__.py +0 -0
  641. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_options.py +0 -0
  642. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_results.py +0 -0
  643. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/Formulations/__init__.py +0 -0
  644. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/Formulations/ac_opf_problem.py +0 -0
  645. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
  646. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +0 -0
  647. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
  648. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_new.py +0 -0
  649. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/NumericalMethods/newton_raphson_ips_fx.py +0 -0
  650. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
  651. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
  652. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
  653. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/Formulations/__init__.py +0 -0
  654. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_basic_formulation.py +0 -0
  655. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_formulation_template.py +0 -0
  656. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
  657. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
  658. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
  659. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
  660. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
  661. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
  662. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
  663. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquadt_fx.py +0 -0
  664. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
  665. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_fx.py +0 -0
  666. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/powell_fx.py +0 -0
  667. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
  668. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
  669. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +0 -0
  670. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +0 -0
  671. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +0 -0
  672. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
  673. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
  674. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
  675. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
  676. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +0 -0
  677. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_options.py +0 -0
  678. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
  679. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
  680. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
  681. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +0 -0
  682. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
  683. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
  684. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/StateEstimation/state_estimation_inputs.py +0 -0
  685. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +0 -0
  686. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/__init__.py +0 -0
  687. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/blackout_driver.py +0 -0
  688. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
  689. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -0
  690. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/reliability_iterable.py +0 -0
  691. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +0 -0
  692. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
  693. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
  694. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
  695. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
  696. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
  697. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +0 -0
  698. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/__init__.py +0 -0
  699. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/driver_handler.py +0 -0
  700. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/driver_template.py +0 -0
  701. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/options_template.py +0 -0
  702. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/results_table.py +0 -0
  703. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/results_template.py +0 -0
  704. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Simulations/types.py +0 -0
  705. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/__init__.py +0 -0
  706. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/admittance_matrices.py +0 -0
  707. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/detect_substations.py +0 -0
  708. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/simulation_indices.py +0 -0
  709. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/topology.py +0 -0
  710. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Topology/topology_processor.py +0 -0
  711. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
  712. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
  713. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
  714. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
  715. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
  716. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
  717. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
  718. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
  719. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
  720. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/__init__.py +0 -0
  721. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
  722. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_pareto.py +0 -0
  723. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_scaled.py +0 -0
  724. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/MVRSM_original.py +0 -0
  725. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/__init__.py +0 -0
  726. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
  727. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/ips.py +0 -0
  728. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
  729. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
  730. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
  731. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
  732. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/non_dominated_sorting.py +0 -0
  733. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/nsga3.py +0 -0
  734. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/numerical_stability.py +0 -0
  735. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
  736. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
  737. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
  738. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
  739. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/csc.py +0 -0
  740. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/csc2.py +0 -0
  741. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
  742. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/sparse_array.py +0 -0
  743. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/Sparse/utils.py +0 -0
  744. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/__init__.py +0 -0
  745. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
  746. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/__init__.py +0 -0
  747. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/__init__.py +0 -0
  748. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/__init__.py +0 -0
  749. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/copt_api.py +0 -0
  750. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_cmd.py +0 -0
  751. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_py.py +0 -0
  752. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_cmd.py +0 -0
  753. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_py.py +0 -0
  754. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_cmd.py +0 -0
  755. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_py.py +0 -0
  756. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver.py +0 -0
  757. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver_cmd.py +0 -0
  758. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/scip_api.py +0 -0
  759. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/apis/xpress_api.py +0 -0
  760. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/constants.py +0 -0
  761. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/model/__init__.py +0 -0
  762. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_objects.py +0 -0
  763. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_problem.py +0 -0
  764. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/mps_lp.py +0 -0
  765. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/paths.py +0 -0
  766. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/pulp.py +0 -0
  767. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/sparse.py +0 -0
  768. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/ThirdParty/pulp/utilities.py +0 -0
  769. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/__init__.py +0 -0
  770. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/progress_bar.py +0 -0
  771. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/scores.py +0 -0
  772. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/Utils/zip_file_mgmt.py +0 -0
  773. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/__init__.py +0 -0
  774. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/api.py +0 -0
  775. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/GridCalEngine/data_logger.py +0 -0
  776. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/setup.cfg +0 -0
  777. {gridcalengine-5.3.25 → gridcalengine-5.3.26}/setup.py +0 -0
@@ -655,6 +655,7 @@ def fill_generator_parent(
655
655
  data.min_time_down[k] = elm.MinTimeDown
656
656
 
657
657
  data.dispatchable[k] = elm.enabled_dispatch
658
+ data.capex[k] = elm.capex
658
659
 
659
660
  data.snom[k] = elm.Snom
660
661
 
@@ -1074,6 +1075,14 @@ def fill_controllable_branch(
1074
1075
  value=elm.vset,
1075
1076
  expected_value=bus_data.Vbus[bus_idx])
1076
1077
 
1078
+ # modify the voltage angle guess using the phase
1079
+ if ctrl_data.tap_angle[ii] != 0:
1080
+ f = bus_dict[elm.bus_from]
1081
+ t = bus_dict[elm.bus_to]
1082
+ Vm = abs(bus_data.Vbus[f])
1083
+ Va = np.angle(bus_data.Vbus[f], deg=False)
1084
+ bus_data.Vbus[f] = Vm * np.exp(1j * (Va + ctrl_data.tap_angle[ii]))
1085
+
1077
1086
 
1078
1087
  def get_branch_data(
1079
1088
  data: PassiveBranchData,
@@ -1913,6 +1922,7 @@ def compile_numerical_circuit_at(circuit: MultiCircuit,
1913
1922
  control_taps_modules: bool = True,
1914
1923
  control_taps_phase: bool = True,
1915
1924
  control_remote_voltage: bool = True,
1925
+ fill_gep: bool = False,
1916
1926
  logger=Logger()) -> NumericalCircuit:
1917
1927
  """
1918
1928
  Compile a NumericalCircuit from a MultiCircuit
@@ -1927,6 +1937,7 @@ def compile_numerical_circuit_at(circuit: MultiCircuit,
1927
1937
  :param control_taps_modules: control taps modules?
1928
1938
  :param control_taps_phase: control taps phase?
1929
1939
  :param control_remote_voltage: control remote voltage?
1940
+ :param fill_gep: fill generation expansion planning parameters?
1930
1941
  :param logger: Logger instance
1931
1942
  :return: NumericalCircuit instance
1932
1943
  """
@@ -1935,7 +1946,8 @@ def compile_numerical_circuit_at(circuit: MultiCircuit,
1935
1946
  time_series = t_idx is not None
1936
1947
 
1937
1948
  bus_voltage_used = np.zeros(circuit.get_bus_number(), dtype=bool)
1938
-
1949
+ ngen = circuit.get_generators_number()
1950
+ nbatt = circuit.get_batteries_number()
1939
1951
  # declare the numerical circuit
1940
1952
  nc = NumericalCircuit(
1941
1953
  nbus=circuit.get_bus_number(),
@@ -1945,8 +1957,8 @@ def compile_numerical_circuit_at(circuit: MultiCircuit,
1945
1957
  nhvdc=circuit.get_hvdc_number(),
1946
1958
  nvsc=circuit.get_vsc_number(),
1947
1959
  nload=circuit.get_load_like_device_number(),
1948
- ngen=circuit.get_generators_number(),
1949
- nbatt=circuit.get_batteries_number(),
1960
+ ngen=ngen,
1961
+ nbatt=nbatt,
1950
1962
  nshunt=circuit.get_shunt_like_device_number(),
1951
1963
  nfluidnode=circuit.get_fluid_nodes_number(),
1952
1964
  nfluidturbine=circuit.get_fluid_turbines_number(),
@@ -2111,6 +2123,42 @@ def compile_numerical_circuit_at(circuit: MultiCircuit,
2111
2123
  t_idx=t_idx
2112
2124
  )
2113
2125
 
2126
+
2127
+ if fill_gep:
2128
+
2129
+ # formulate the investment
2130
+ gen_dict = {elm.idtag: (idx, elm) for idx, elm in enumerate(circuit.generators)}
2131
+ batt_dict = {elm.idtag: (idx, elm) for idx, elm in enumerate(circuit.batteries)}
2132
+
2133
+ for investment in circuit.investments:
2134
+
2135
+
2136
+
2137
+ # search in generators
2138
+ data = gen_dict.get(investment.device_idtag, None)
2139
+ if data is not None:
2140
+ idx, elm = data
2141
+
2142
+ if investment.CAPEX != 0.0: # overwrite the base capex
2143
+ nc.generator_data.capex[idx] = investment.CAPEX
2144
+
2145
+ nc.generator_data.is_candidate[idx] = True
2146
+ nc.generator_data.discount_rate[idx] = investment.group.discount_rate
2147
+ else:
2148
+
2149
+ # search in batteries
2150
+ data = batt_dict.get(investment.device_idtag, None)
2151
+ if data is not None:
2152
+ idx, elm = data
2153
+
2154
+ if investment.CAPEX != 0.0: # overwrite the base capex
2155
+ nc.battery_data.capex[idx] = investment.CAPEX
2156
+
2157
+ nc.battery_data.is_candidate[idx] = True
2158
+ nc.battery_data.discount_rate[idx] = investment.group.discount_rate
2159
+ else:
2160
+ logger.add_error("Could not find investment device", value=investment.device_idtag)
2161
+
2114
2162
  nc.bus_dict = bus_dict
2115
2163
  nc.consolidate_information()
2116
2164
 
@@ -68,6 +68,10 @@ class GeneratorData:
68
68
  self.min_time_up: Vec = np.zeros(nelm, dtype=float)
69
69
  self.min_time_down: Vec = np.zeros(nelm, dtype=float)
70
70
 
71
+ self.capex: Vec = np.zeros(nelm, dtype=float)
72
+ self.discount_rate: Vec = np.zeros(nelm, dtype=float)
73
+ self.is_candidate: BoolVec = np.zeros(nelm, dtype=bool)
74
+
71
75
  self.original_idx = np.zeros(nelm, dtype=int)
72
76
 
73
77
  self.name_to_idx: dict = dict()
@@ -138,6 +142,10 @@ class GeneratorData:
138
142
  data.min_time_up = self.min_time_up[elm_idx]
139
143
  data.min_time_down = self.min_time_down[elm_idx]
140
144
 
145
+ data.capex = self.capex[elm_idx]
146
+ data.discount_rate = self.discount_rate[elm_idx]
147
+ data.is_candidate = self.is_candidate[elm_idx]
148
+
141
149
  data.original_idx = elm_idx
142
150
 
143
151
  return data
@@ -211,6 +219,10 @@ class GeneratorData:
211
219
  data.min_time_up = self.min_time_up.copy()
212
220
  data.min_time_down = self.min_time_down.copy()
213
221
 
222
+ data.capex = self.capex.copy()
223
+ data.discount_rate = self.discount_rate.copy()
224
+ data.is_candidate = self.is_candidate.copy()
225
+
214
226
  data.original_idx = self.original_idx
215
227
 
216
228
  return data
@@ -45,15 +45,16 @@ class Investment(EditableDevice):
45
45
  # Contingency type
46
46
  self.device_idtag: str = device_idtag
47
47
  self.CAPEX: float = CAPEX
48
- self.OPEX: float = OPEX
48
+ # self.OPEX: float = OPEX
49
49
  self._group: InvestmentsGroup = group
50
50
  self.status: bool = status
51
51
 
52
52
  self.register(key='device_idtag', units='', tpe=str, definition='Unique ID')
53
53
  self.register(key='CAPEX', units='M€', tpe=float,
54
- definition='Capital expenditures. This is the initial investment.')
55
- self.register(key='OPEX', units='M€', tpe=float,
56
- definition='Operation expenditures. Maintenance costs among other recurrent costs.')
54
+ definition='Capital expenditures. This is the investment value, '
55
+ 'it overrides the CAPEX value of the device if it exits.')
56
+ # self.register(key='OPEX', units='M€', tpe=float,
57
+ # definition='Operation expenditures. Maintenance costs among other recurrent costs.')
57
58
  self.register(key='status', units='', tpe=bool,
58
59
  definition='If true the investment activates when applied, otherwise is deactivated.')
59
60
  self.register(key='group', units='', tpe=DeviceType.InvestmentsGroupDevice, definition='Investment group')
@@ -16,13 +16,15 @@ class InvestmentsGroup(EditableDevice):
16
16
  idtag: Union[str, None] = None,
17
17
  name: str = "InvestmentGroup",
18
18
  category: str = '',
19
- comment: str = ""):
19
+ comment: str = "",
20
+ discount_rate=5):
20
21
  """
21
22
  Contingency group
22
23
  :param idtag: Unique identifier
23
24
  :param name: contingency group name
24
25
  :param category: tag to category the group
25
26
  :param comment: comment
27
+ :param discount_rate: discount rate (%)
26
28
  """
27
29
 
28
30
  EditableDevice.__init__(self,
@@ -35,4 +37,7 @@ class InvestmentsGroup(EditableDevice):
35
37
  # Contingency type
36
38
  self.category = category
37
39
 
38
- self.register(key='category', units='', tpe=str, definition='Some tag to category the contingency group')
40
+ self.discount_rate = discount_rate
41
+
42
+ self.register(key='category', units='', tpe=str, definition='Some tag to category the investment group')
43
+ self.register(key='discount_rate', units='%', tpe=float, definition='Investment group discount rate')
@@ -98,7 +98,7 @@ def optimal_linear_contingency_analysis(grid: MultiCircuit,
98
98
  skip_generation_limits=False,
99
99
  consider_contingencies=True,
100
100
  contingency_groups_used=linear_multiple_contingencies.contingency_groups_used,
101
- unit_Commitment=False,
101
+ unit_commitment=False,
102
102
  ramp_constraints=False,
103
103
  all_generators_fixed=True,
104
104
  lodf_threshold=options.lin_options.lodf_threshold,
@@ -142,7 +142,7 @@ class NodalCapacityTimeSeriesDriver(TimeSeriesDriverTemplate):
142
142
  skip_generation_limits=self.opf_options.skip_generation_limits,
143
143
  consider_contingencies=self.opf_options.consider_contingencies,
144
144
  contingency_groups_used=self.opf_options.contingency_groups_used,
145
- unit_Commitment=self.opf_options.unit_commitment,
145
+ unit_commitment=self.opf_options.unit_commitment,
146
146
  ramp_constraints=self.opf_options.unit_commitment,
147
147
  all_generators_fixed=False,
148
148
  lodf_threshold=self.opf_options.lodf_tolerance,
@@ -195,8 +195,7 @@ class GenerationVars:
195
195
  self.starting_up = np.zeros((nt, n_elm), dtype=object)
196
196
  self.shutting_down = np.zeros((nt, n_elm), dtype=object)
197
197
  self.cost = np.zeros((nt, n_elm), dtype=object)
198
- # self.fuel = np.zeros((nt, n_elm), dtype=object)
199
- # self.emissions = np.zeros((nt, n_elm), dtype=object)
198
+ self.invested = np.zeros((nt, n_elm), dtype=object)
200
199
 
201
200
  def get_values(self,
202
201
  Sbase: float,
@@ -222,8 +221,7 @@ class GenerationVars:
222
221
  data.starting_up[t, i] = model.get_value(self.starting_up[t, i])
223
222
  data.shutting_down[t, i] = model.get_value(self.shutting_down[t, i])
224
223
  data.cost[t, i] = model.get_value(self.cost[t, i])
225
- # data.fuel[t, i] = model.get_value(self.fuel[t, i])
226
- # data.emissions[t, i] = model.get_value(self.emissions[t, i])
224
+ data.invested[t, i] = model.get_value(self.invested[t, i])
227
225
 
228
226
  # format the arrays appropriately
229
227
  data.p = data.p.astype(float, copy=False)
@@ -232,8 +230,7 @@ class GenerationVars:
232
230
  data.starting_up = data.starting_up.astype(bool, copy=False)
233
231
  data.shutting_down = data.shutting_down.astype(bool, copy=False)
234
232
  data.cost = data.cost.astype(float, copy=False)
235
- # data.fuel = (gen_fuel_rates_matrix.T * data.p.T).T
236
- # data.emissions = (gen_emissions_rates_matrix.T * data.p.T).T
233
+ data.invested = data.invested.astype(bool, copy=False)
237
234
 
238
235
  return data
239
236
 
@@ -271,6 +268,8 @@ class BatteryVars(GenerationVars):
271
268
  data.producing[t, i] = model.get_value(self.producing[t, i])
272
269
  data.starting_up[t, i] = model.get_value(self.starting_up[t, i])
273
270
  data.shutting_down[t, i] = model.get_value(self.shutting_down[t, i])
271
+ data.cost[t, i] = model.get_value(self.cost[t, i])
272
+ data.invested[t, i] = model.get_value(self.invested[t, i])
274
273
 
275
274
  # format the arrays appropriately
276
275
  data.p = data.p.astype(float, copy=False)
@@ -279,6 +278,8 @@ class BatteryVars(GenerationVars):
279
278
  data.producing = data.producing.astype(int, copy=False)
280
279
  data.starting_up = data.starting_up.astype(int, copy=False)
281
280
  data.shutting_down = data.shutting_down.astype(int, copy=False)
281
+ data.cost = data.cost.astype(float, copy=False)
282
+ data.invested = data.invested.astype(bool, copy=False)
282
283
 
283
284
  return data
284
285
 
@@ -664,7 +665,8 @@ def add_linear_generation_formulation(t: Union[int, None],
664
665
  skip_generation_limits: bool,
665
666
  all_generators_fixed: bool,
666
667
  vd: IntVec,
667
- nodal_capacity_active: bool):
668
+ nodal_capacity_active: bool,
669
+ generation_expansion_planning: bool):
668
670
  """
669
671
  Add MIP generation formulation
670
672
  :param t: time step
@@ -680,6 +682,7 @@ def add_linear_generation_formulation(t: Union[int, None],
680
682
  instead of resorting to dispatchable status
681
683
  :param vd: slack indices
682
684
  :param nodal_capacity_active: nodal capacity active?
685
+ :param generation_expansion_planning: generation expansion plan?
683
686
  :return objective function
684
687
  """
685
688
  f_obj = 0.0
@@ -691,6 +694,9 @@ def add_linear_generation_formulation(t: Union[int, None],
691
694
  else:
692
695
  id_gen_nonvd = []
693
696
 
697
+ year = time_array[t].year - time_array[0].year
698
+
699
+
694
700
  # add generation stuff
695
701
  for k in range(gen_data_t.nelm):
696
702
 
@@ -773,6 +779,30 @@ def add_linear_generation_formulation(t: Union[int, None],
773
779
  prob.add_cst(
774
780
  cst=gen_vars.p[t, k] - gen_vars.p[t - 1, k] <= gen_data_t.ramp_up[k] / Sbase * dt
775
781
  )
782
+
783
+ # Generation Expansion Planning
784
+ if gen_data_t.is_candidate[k] and generation_expansion_planning:
785
+
786
+ money_factor = np.power(1.0 + gen_data_t.discount_rate[k] / 100.0, year)
787
+
788
+ # declare the investment binary
789
+ gen_vars.invested[t, k] = prob.add_int(lb=0, ub=1, name=join("Ig_", [t, k]))
790
+
791
+ # add the investment cost to the objective
792
+ f_obj += gen_vars.invested[t, k] * (gen_data_t.pmax[k] / Sbase) * gen_data_t.capex[k] * money_factor
793
+
794
+ if t > 0:
795
+ # installation persistence
796
+ prob.add_cst(gen_vars.invested[t - 1, k] <= gen_vars.invested[t, k],
797
+ name=join("persist_", [t, k]))
798
+
799
+ # maximum production constraint
800
+ prob.add_cst(gen_vars.p[t, k] <= (gen_data_t.pmax[k] / Sbase) * gen_vars.invested[t, k],
801
+ name=join("max_prod_", [t, k]))
802
+ else:
803
+ # is invested for already
804
+ gen_vars.invested[t, k] = 1
805
+
776
806
  else:
777
807
 
778
808
  # it is NOT dispatchable
@@ -827,6 +857,7 @@ def add_linear_battery_formulation(t: Union[int, None],
827
857
  unit_commitment: bool,
828
858
  ramp_constraints: bool,
829
859
  skip_generation_limits: bool,
860
+ generation_expansion_planning: bool,
830
861
  energy_0: Vec):
831
862
  """
832
863
  Add MIP generation formulation
@@ -839,6 +870,7 @@ def add_linear_battery_formulation(t: Union[int, None],
839
870
  :param unit_commitment: formulate unit commitment?
840
871
  :param ramp_constraints: formulate ramp constraints?
841
872
  :param skip_generation_limits: skip the generation limits?
873
+ :param generation_expansion_planning: generation expansion planning?
842
874
  :param energy_0: initial value of the energy stored
843
875
  :return objective function
844
876
  """
@@ -916,7 +948,7 @@ def add_linear_battery_formulation(t: Union[int, None],
916
948
  if len(time_array) > 1:
917
949
  dt = (time_array[t] - time_array[t - 1]).seconds / 3600.0
918
950
  else:
919
- dt = 1.0
951
+ dt = 1.0
920
952
 
921
953
  if ramp_constraints and t is not None:
922
954
  if t > 0:
@@ -1540,8 +1572,9 @@ def run_linear_opf_ts(grid: MultiCircuit,
1540
1572
  skip_generation_limits: bool = False,
1541
1573
  consider_contingencies: bool = False,
1542
1574
  contingency_groups_used: Union[List[ContingencyGroup], None] = None,
1543
- unit_Commitment: bool = False,
1575
+ unit_commitment: bool = False,
1544
1576
  ramp_constraints: bool = False,
1577
+ generation_expansion_planning: bool = False,
1545
1578
  all_generators_fixed: bool = False,
1546
1579
  lodf_threshold: float = 0.001,
1547
1580
  maximize_inter_area_flow: bool = False,
@@ -1566,10 +1599,11 @@ def run_linear_opf_ts(grid: MultiCircuit,
1566
1599
  :param skip_generation_limits: Skip the generation limits?
1567
1600
  :param consider_contingencies: Consider the contingencies?
1568
1601
  :param contingency_groups_used: List of contingency groups to use
1569
- :param unit_Commitment: Formulate unit commitment?
1602
+ :param unit_commitment: Formulate unit commitment?
1570
1603
  :param ramp_constraints: Formulate ramp constraints?
1604
+ :param generation_expansion_planning: Generation expansion planning?
1571
1605
  :param all_generators_fixed: All generators take their snapshot or profile values
1572
- instead of resorting to dispatcheable status
1606
+ instead of resorting to dispatchable status
1573
1607
  :param lodf_threshold: LODF threshold value to consider contingencies
1574
1608
  :param maximize_inter_area_flow: Maximize the inter-area flow?
1575
1609
  :param inter_aggregation_info: Inter rea (or country, etc) information
@@ -1658,6 +1692,7 @@ def run_linear_opf_ts(grid: MultiCircuit,
1658
1692
  t_idx=global_t_idx, # yes, this is not a bug
1659
1693
  bus_dict=bus_dict,
1660
1694
  areas_dict=areas_dict,
1695
+ fill_gep=generation_expansion_planning,
1661
1696
  logger=logger
1662
1697
  )
1663
1698
 
@@ -1688,12 +1723,13 @@ def run_linear_opf_ts(grid: MultiCircuit,
1688
1723
  gen_data_t=nc.generator_data,
1689
1724
  gen_vars=mip_vars.gen_vars,
1690
1725
  prob=lp_model,
1691
- unit_commitment=unit_Commitment,
1726
+ unit_commitment=unit_commitment,
1692
1727
  ramp_constraints=ramp_constraints,
1693
1728
  skip_generation_limits=skip_generation_limits,
1694
1729
  all_generators_fixed=all_generators_fixed,
1695
1730
  vd=indices.vd,
1696
- nodal_capacity_active=active_nodal_capacity
1731
+ nodal_capacity_active=active_nodal_capacity,
1732
+ generation_expansion_planning=generation_expansion_planning,
1697
1733
  )
1698
1734
 
1699
1735
  # formulate batteries --------------------------------------------------------------------------------------
@@ -1708,9 +1744,10 @@ def run_linear_opf_ts(grid: MultiCircuit,
1708
1744
  batt_data_t=nc.battery_data,
1709
1745
  batt_vars=mip_vars.batt_vars,
1710
1746
  prob=lp_model,
1711
- unit_commitment=unit_Commitment,
1747
+ unit_commitment=unit_commitment,
1712
1748
  ramp_constraints=ramp_constraints,
1713
1749
  skip_generation_limits=skip_generation_limits,
1750
+ generation_expansion_planning=generation_expansion_planning,
1714
1751
  energy_0=energy_0
1715
1752
  )
1716
1753
 
@@ -135,7 +135,7 @@ class OptimalPowerFlowDriver(TimeSeriesDriverTemplate):
135
135
  skip_generation_limits=self.options.skip_generation_limits,
136
136
  consider_contingencies=self.options.consider_contingencies,
137
137
  contingency_groups_used=self.options.contingency_groups_used,
138
- unit_Commitment=self.options.unit_commitment,
138
+ unit_commitment=self.options.unit_commitment,
139
139
  ramp_constraints=False,
140
140
  all_generators_fixed=False,
141
141
  lodf_threshold=self.options.lodf_tolerance,
@@ -32,6 +32,7 @@ class OptimalPowerFlowOptions(OptionsTemplate):
32
32
  maximize_flows=False,
33
33
  inter_aggregation_info: InterAggregationInfo | None = None,
34
34
  unit_commitment=False,
35
+ generation_expansion_planning: bool = False,
35
36
  export_model_fname: Union[None, str] = None,
36
37
  generate_report=False,
37
38
  ips_method: SolverType = SolverType.NR,
@@ -95,6 +96,8 @@ class OptimalPowerFlowOptions(OptionsTemplate):
95
96
 
96
97
  self.unit_commitment = unit_commitment
97
98
 
99
+ self.generation_expansion_planning = generation_expansion_planning
100
+
98
101
  self.max_va = 6.28
99
102
 
100
103
  self.max_vm = 1.0
@@ -117,8 +117,9 @@ class OptimalPowerFlowTimeSeriesDriver(TimeSeriesDriverTemplate):
117
117
  skip_generation_limits=self.options.skip_generation_limits,
118
118
  consider_contingencies=self.options.consider_contingencies,
119
119
  contingency_groups_used=self.options.contingency_groups_used,
120
- unit_Commitment=self.options.unit_commitment,
120
+ unit_commitment=self.options.unit_commitment,
121
121
  ramp_constraints=self.options.unit_commitment,
122
+ generation_expansion_planning=self.options.generation_expansion_planning,
122
123
  all_generators_fixed=False,
123
124
  lodf_threshold=self.options.lodf_tolerance,
124
125
  maximize_inter_area_flow=self.options.maximize_flows,
@@ -146,6 +147,7 @@ class OptimalPowerFlowTimeSeriesDriver(TimeSeriesDriverTemplate):
146
147
  self.results.generator_producing = opf_vars.gen_vars.producing
147
148
  self.results.generator_starting_up = opf_vars.gen_vars.starting_up
148
149
  self.results.generator_shutting_down = opf_vars.gen_vars.shedding
150
+ self.results.generator_invested = opf_vars.gen_vars.invested
149
151
 
150
152
  self.results.Sf = opf_vars.branch_vars.flows
151
153
  self.results.St = -opf_vars.branch_vars.flows
@@ -286,8 +288,9 @@ class OptimalPowerFlowTimeSeriesDriver(TimeSeriesDriverTemplate):
286
288
  skip_generation_limits=self.options.skip_generation_limits,
287
289
  consider_contingencies=self.options.consider_contingencies,
288
290
  contingency_groups_used=self.options.contingency_groups_used,
289
- unit_Commitment=self.options.unit_commitment,
291
+ unit_commitment=self.options.unit_commitment,
290
292
  ramp_constraints=self.options.unit_commitment,
293
+ generation_expansion_planning=self.options.generation_expansion_planning,
291
294
  all_generators_fixed=False,
292
295
  lodf_threshold=self.options.lodf_tolerance,
293
296
  maximize_inter_area_flow=self.options.maximize_flows,
@@ -314,6 +317,7 @@ class OptimalPowerFlowTimeSeriesDriver(TimeSeriesDriverTemplate):
314
317
  self.results.generator_producing[time_indices, :] = opf_vars.gen_vars.producing
315
318
  self.results.generator_starting_up[time_indices, :] = opf_vars.gen_vars.starting_up
316
319
  self.results.generator_shutting_down[time_indices, :] = opf_vars.gen_vars.shedding
320
+ self.results.generator_invested[time_indices, :] = opf_vars.gen_vars.invested
317
321
 
318
322
  self.results.Sf[time_indices, :] = opf_vars.branch_vars.flows
319
323
  self.results.St[time_indices, :] = -opf_vars.branch_vars.flows
@@ -91,13 +91,15 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
91
91
  ResultTypes.GeneratorCost,
92
92
  ResultTypes.GeneratorProducing,
93
93
  ResultTypes.GeneratorStartingUp,
94
- ResultTypes.GeneratorShuttingDown
94
+ ResultTypes.GeneratorShuttingDown,
95
+ ResultTypes.GeneratorInvested,
95
96
  ],
96
97
 
97
98
  ResultTypes.ShuntResults: [ResultTypes.ShuntReactivePower],
98
99
 
99
100
  ResultTypes.BatteryResults: [ResultTypes.BatteryPower,
100
- ResultTypes.BatteryEnergy],
101
+ ResultTypes.BatteryEnergy,
102
+ ResultTypes.BatteryInvested,],
101
103
 
102
104
  ResultTypes.LoadResults: [ResultTypes.LoadShedding],
103
105
 
@@ -175,11 +177,13 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
175
177
  self.generator_producing = np.zeros((nt, ngen), dtype=bool)
176
178
  self.generator_starting_up = np.zeros((nt, ngen), dtype=bool)
177
179
  self.generator_shutting_down = np.zeros((nt, ngen), dtype=bool)
180
+ self.generator_invested = np.zeros((nt, ngen), dtype=bool)
178
181
 
179
182
  self.shunt_like_reactive_power = np.zeros((nt, nsh), dtype=float)
180
183
 
181
184
  self.battery_power = np.zeros((nt, nbat), dtype=float)
182
185
  self.battery_energy = np.zeros((nt, nbat), dtype=float)
186
+ self.battery_invested = np.zeros((nt, nbat), dtype=bool)
183
187
 
184
188
  self.fluid_node_current_level = np.zeros((nt, n_fluid_node), dtype=float)
185
189
  self.fluid_node_flow_in = np.zeros((nt, n_fluid_node), dtype=float)
@@ -244,6 +248,7 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
244
248
  self.register(name='generator_producing', tpe=Mat)
245
249
  self.register(name='generator_starting_up', tpe=Mat)
246
250
  self.register(name='generator_shutting_down', tpe=Mat)
251
+ self.register(name='generator_invested', tpe=Mat)
247
252
 
248
253
  self.register(name='shunt_like_reactive_power', tpe=Mat)
249
254
 
@@ -261,7 +266,7 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
261
266
 
262
267
  :param nc:
263
268
  """
264
- rates = nc.Rates.T
269
+ rates = nc.passive_branch_data.rates.T
265
270
  self.loading = self.Sf / (rates + 1e-9)
266
271
 
267
272
  def set_at(self, t, res: OptimalPowerFlowResults):
@@ -632,6 +637,18 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
632
637
  xlabel='',
633
638
  units='')
634
639
 
640
+ elif result_type == ResultTypes.GeneratorInvested:
641
+
642
+ return ResultsTable(data=self.generator_invested,
643
+ index=pd.to_datetime(self.time_array),
644
+ idx_device_type=DeviceType.TimeDevice,
645
+ columns=self.generator_names,
646
+ cols_device_type=DeviceType.GeneratorDevice,
647
+ title=str(result_type.value),
648
+ ylabel='',
649
+ xlabel='',
650
+ units='')
651
+
635
652
  elif result_type == ResultTypes.ShuntReactivePower:
636
653
 
637
654
  return ResultsTable(data=self.shunt_like_reactive_power,
@@ -668,6 +685,18 @@ class OptimalPowerFlowTimeSeriesResults(ResultsTemplate):
668
685
  xlabel='',
669
686
  units='(MWh)')
670
687
 
688
+ elif result_type == ResultTypes.BatteryInvested:
689
+
690
+ return ResultsTable(data=self.battery_invested,
691
+ index=pd.to_datetime(self.time_array),
692
+ idx_device_type=DeviceType.TimeDevice,
693
+ columns=self.battery_names,
694
+ cols_device_type=DeviceType.BatteryDevice,
695
+ title=str(result_type.value),
696
+ ylabel='(MWh)',
697
+ xlabel='',
698
+ units='(MWh)')
699
+
671
700
  elif result_type == ResultTypes.SystemFuel:
672
701
 
673
702
  return ResultsTable(data=self.system_fuel,
@@ -347,7 +347,7 @@ class PfAdvancedFormulation(PfFormulationTemplate):
347
347
 
348
348
  def x2var(self, x: Vec) -> None:
349
349
  """
350
- Convert X to decission variables
350
+ Convert X to decision variables
351
351
  :param x: solution vector
352
352
  """
353
353
  a = len(self.idx_dVa)
@@ -363,7 +363,7 @@ class PfAdvancedFormulation(PfFormulationTemplate):
363
363
 
364
364
  def var2x(self) -> Vec:
365
365
  """
366
- Convert the internal decission variables into the vector
366
+ Convert the internal decision variables into the vector
367
367
  :return: Vector
368
368
  """
369
369
  return np.r_[
@@ -456,7 +456,7 @@ class PfAdvancedFormulation(PfFormulationTemplate):
456
456
  Qt - self.nc.active_branch_data.Qset[self.idx_dQt]
457
457
  ]
458
458
 
459
- # compute the rror
459
+ # compute the error
460
460
  return compute_fx_error(_f), x
461
461
 
462
462
  def update(self, x: Vec, update_controls: bool = False) -> Tuple[float, bool, Vec, Vec]:
@@ -630,7 +630,7 @@ class PfAdvancedFormulation(PfFormulationTemplate):
630
630
  # recompute the error based on the new Scalc and S0
631
631
  self._f = self.fx()
632
632
 
633
- # compute the rror
633
+ # compute the error
634
634
  self._error = compute_fx_error(self._f)
635
635
 
636
636
  # converged?