GridCalEngine 5.3.39__tar.gz → 5.3.40__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.
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_gslv.py +19 -104
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +17 -9
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +29 -18
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +14 -10
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/cim_parser.py +9 -4
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/file_handler.py +4 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/zip_interface.py +2 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_basic_formulation.py +6 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_generalized_formulation.py +59 -42
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_fx.py +14 -14
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +5 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +27 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/admittance_matrices.py +1 -1
- gridcalengine-5.3.40/GridCalEngine/Utils/ThirdParty/gslv/__init__.py +0 -0
- gridcalengine-5.3.40/GridCalEngine/Utils/ThirdParty/gslv/gslv_activation.py +107 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/__version__.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/data_logger.py +35 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/PKG-INFO +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_bentayga.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_newton_pa.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Compilers/circuit_to_pgm.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/active_branch_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/battery_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/branch_parent_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/bus_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/generator_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/load_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/numerical_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/passive_branch_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/shunt_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/DataStructures/vsc_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/community.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/contingency.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/country.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/facility.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/inter_aggregation_info.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/investment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/investments_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/remedial_action.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/remedial_action_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Associations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Associations/association.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Associations/emission_gas.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Associations/fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Associations/technology.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/hvdc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/line_locations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/overhead_line_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/transformer3w.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/upfc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/vsc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/winding.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Branches/wire.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/base_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/graphic_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/palettes.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/battery.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/editable_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/physical_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/admittance_matrix.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/comparison.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/multi_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/profile.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Devices/types.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/base/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/base/base_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/base/base_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/base/base_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/base/units.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_assets/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_2_4_15_assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_3_0_0_assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_create_instances.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/analog_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/io_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement_value.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/mutual_coupling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_cond_eq.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/rdfs_infos.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/rdfs_serializations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/base_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/file_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/dgs/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/epc/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/epc/epc_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/file_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/catalogue.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/excel_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/pack_unpack.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/remote.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/results_export.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/branch_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/bus_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/converter_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/legacy/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/legacy/matpower_branch_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/legacy/matpower_bus_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/legacy/matpower_gen_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/legacy/matpower_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/matpower_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/matpower_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/matpower/matpower_utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/dpx_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/ipa_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/pandapower_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/plx_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/facts.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/impedance_correction_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/multi_section_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/owner.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/psse_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/devices/zone.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/raw_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/raw_parser_writer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/raw_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/raw_writer_comment_map.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_base.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_comment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_exchange_power.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_transformer_regulation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/devices/ucte_transformer_tap_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/ucte/ucte_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/LICENSE.txt +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ATC/available_transfer_capacity_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Clustering/clustering_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Derivatives/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Derivatives/ac_jacobian.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Derivatives/csc_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Derivatives/csr_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Derivatives/matpower_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/NSGA_3.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/mixed_variable_NSGA_2.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/random_eval.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/stop_crits.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_opf.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NodalCapacity/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/Formulations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/Formulations/ac_opf_problem.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_new.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/NumericalMethods/newton_raphson_ips_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/opf_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/opf_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/opf_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/Formulations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_advanced_formulation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_formulation_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquadt_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/powell_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/StateEstimation/state_estimation_inputs.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/adequacy_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/blackout_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/reliability.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/reliability_iterable.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/driver_handler.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/driver_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/options_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/results_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/results_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Simulations/types.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/detect_substations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/simulation_indices.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/topology.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Topology/topology_processor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/pulp_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_pareto.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_scaled.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/MVRSM_original.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/common.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/ips.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/non_dominated_sorting.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/nsga3.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/numerical_stability.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/csc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/csc2.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/sparse_array.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/Sparse/utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/copt_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/scip_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/apis/xpress_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/constants.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/model/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_objects.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_problem.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/mps_lp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/paths.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/pulp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/sparse.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/ThirdParty/pulp/utilities.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/progress_bar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/scores.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/Utils/zip_file_mgmt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/basic_structures.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/enumerations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/setup.cfg +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.40}/setup.py +0 -0
@@ -3,28 +3,30 @@
|
|
3
3
|
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
4
|
# SPDX-License-Identifier: MPL-2.0
|
5
5
|
from __future__ import annotations
|
6
|
-
import os.path
|
7
6
|
import time
|
8
|
-
import warnings
|
9
7
|
import numpy as np
|
10
8
|
from typing import List, Dict, Union, Tuple, TYPE_CHECKING
|
11
9
|
|
12
|
-
from GridCalEngine import
|
10
|
+
from GridCalEngine.Utils.ThirdParty.gslv.gslv_activation import (pg, build_status_dict, tap_module_control_mode_dict,
|
11
|
+
tap_phase_control_mode_dict, hvdc_control_mode_dict,
|
12
|
+
group_type_dict, contingency_ops_type_dict,
|
13
|
+
contingency_method_dict, converter_control_type_dict,
|
14
|
+
bus_type_dict,
|
15
|
+
GSLV_AVAILABLE, GSLV_VERSION,
|
16
|
+
GSLV_RECOMMENDED_VERSION)
|
13
17
|
from GridCalEngine.DataStructures.branch_parent_data import BranchParentData
|
14
18
|
from GridCalEngine.basic_structures import IntVec, Vec
|
15
19
|
from GridCalEngine.Devices.profile import Profile
|
16
20
|
from GridCalEngine.Devices.multi_circuit import MultiCircuit
|
17
|
-
from GridCalEngine.enumerations import (HvdcControlType, SolverType, TimeGrouping,
|
18
|
-
ZonalGrouping, MIPSolvers, ContingencyMethod, ContingencyOperationTypes,
|
19
|
-
BuildStatus, BranchGroupTypes, ConverterControlType)
|
20
21
|
import GridCalEngine.Devices as dev
|
21
22
|
from GridCalEngine.Simulations.PowerFlow.power_flow_options import PowerFlowOptions
|
22
23
|
from GridCalEngine.Simulations.PowerFlow.power_flow_results import PowerFlowResults
|
23
|
-
|
24
|
+
from GridCalEngine import TapModuleControl, TapPhaseControl
|
25
|
+
from GridCalEngine.enumerations import SolverType
|
24
26
|
from GridCalEngine.DataStructures.numerical_circuit import NumericalCircuit
|
25
27
|
|
26
|
-
|
27
|
-
from GridCalEngine.basic_structures import
|
28
|
+
|
29
|
+
from GridCalEngine.basic_structures import Logger
|
28
30
|
|
29
31
|
if TYPE_CHECKING: # Only imports the below statements during type checking
|
30
32
|
from GridCalEngine.Simulations.OPF.opf_results import OptimalPowerFlowResults
|
@@ -33,97 +35,6 @@ if TYPE_CHECKING: # Only imports the below statements during type checking
|
|
33
35
|
from GridCalEngine.Simulations.ContingencyAnalysis.contingency_analysis_options import ContingencyAnalysisOptions
|
34
36
|
from GridCalEngine.Simulations.ContingencyAnalysis.contingency_analysis_results import ContingencyAnalysisResults
|
35
37
|
|
36
|
-
GSLV_RECOMMENDED_VERSION = "0.2.0"
|
37
|
-
GSLV_VERSION = ''
|
38
|
-
GSLV_AVAILABLE = False
|
39
|
-
try:
|
40
|
-
import pygslv as pg
|
41
|
-
|
42
|
-
pg.activate(os.path.join(get_create_gridcal_folder(), "license.gslv"), verbose=True)
|
43
|
-
|
44
|
-
# activate
|
45
|
-
if not pg.isLicensed():
|
46
|
-
# license not found
|
47
|
-
GSLV_AVAILABLE = False
|
48
|
-
else:
|
49
|
-
# already activated
|
50
|
-
GSLV_AVAILABLE = True
|
51
|
-
GSLV_VERSION = pg.get_version()
|
52
|
-
|
53
|
-
if GSLV_AVAILABLE:
|
54
|
-
if GSLV_VERSION < GSLV_RECOMMENDED_VERSION:
|
55
|
-
warnings.warn(f"Recommended version for GSLV is {GSLV_RECOMMENDED_VERSION} "
|
56
|
-
f"instead of {GSLV_VERSION}")
|
57
|
-
|
58
|
-
build_status_dict = {
|
59
|
-
BuildStatus.Planned: pg.BuildStatus.Planned,
|
60
|
-
BuildStatus.Commissioned: pg.BuildStatus.Commissioned,
|
61
|
-
BuildStatus.Candidate: pg.BuildStatus.Candidate,
|
62
|
-
BuildStatus.Decommissioned: pg.BuildStatus.Decommissioned,
|
63
|
-
BuildStatus.PlannedDecommission: pg.BuildStatus.PlannedDecommission,
|
64
|
-
}
|
65
|
-
|
66
|
-
tap_module_control_mode_dict = {
|
67
|
-
TapModuleControl.fixed: pg.TapModuleControl.fixed,
|
68
|
-
TapModuleControl.Qf: pg.TapModuleControl.Qf,
|
69
|
-
TapModuleControl.Qt: pg.TapModuleControl.Qt,
|
70
|
-
TapModuleControl.Vm: pg.TapModuleControl.Vm,
|
71
|
-
}
|
72
|
-
|
73
|
-
tap_phase_control_mode_dict = {
|
74
|
-
TapPhaseControl.fixed: pg.TapPhaseControl.fixed,
|
75
|
-
TapPhaseControl.Pf: pg.TapPhaseControl.Pf,
|
76
|
-
TapPhaseControl.Pt: pg.TapPhaseControl.Pt,
|
77
|
-
}
|
78
|
-
|
79
|
-
hvdc_control_mode_dict = {
|
80
|
-
HvdcControlType.type_0_free: pg.HvdcControlType.type_0_free,
|
81
|
-
HvdcControlType.type_1_Pset: pg.HvdcControlType.type_1_Pset,
|
82
|
-
}
|
83
|
-
|
84
|
-
group_type_dict = {
|
85
|
-
BranchGroupTypes.GenericGroup: pg.BranchGroupTypes.GenericGroup,
|
86
|
-
BranchGroupTypes.TransformerGroup: pg.BranchGroupTypes.TransformerGroup,
|
87
|
-
BranchGroupTypes.LineSegmentsGroup: pg.BranchGroupTypes.LineSegmentsGroup,
|
88
|
-
}
|
89
|
-
|
90
|
-
contingency_ops_type_dict = {
|
91
|
-
ContingencyOperationTypes.Active: pg.ContingencyOperationTypes.Active,
|
92
|
-
ContingencyOperationTypes.PowerPercentage: pg.ContingencyOperationTypes.PowerPercentage,
|
93
|
-
}
|
94
|
-
|
95
|
-
contingency_method_dict = {
|
96
|
-
ContingencyMethod.PTDF: pg.ContingencyMethod.PTDF,
|
97
|
-
ContingencyMethod.PowerFlow: pg.ContingencyMethod.PowerFlow,
|
98
|
-
ContingencyMethod.HELM: pg.ContingencyMethod.HELM,
|
99
|
-
}
|
100
|
-
|
101
|
-
converter_control_type_dict = {
|
102
|
-
ConverterControlType.Vm_dc: pg.ConverterControlType.Vm_dc,
|
103
|
-
ConverterControlType.Vm_ac: pg.ConverterControlType.Vm_ac,
|
104
|
-
ConverterControlType.Va_ac: pg.ConverterControlType.Va_ac,
|
105
|
-
ConverterControlType.Qac: pg.ConverterControlType.Q_ac,
|
106
|
-
ConverterControlType.Pdc: pg.ConverterControlType.P_dc,
|
107
|
-
ConverterControlType.Pac: pg.ConverterControlType.P_ac,
|
108
|
-
}
|
109
|
-
|
110
|
-
bus_type_dict = {
|
111
|
-
BusMode.PQ_tpe.value: pg.BusMode.PQ,
|
112
|
-
BusMode.PV_tpe.value: pg.BusMode.PV,
|
113
|
-
BusMode.Slack_tpe.value: pg.BusMode.Slack,
|
114
|
-
BusMode.P_tpe.value: pg.BusMode.P,
|
115
|
-
BusMode.PQV_tpe.value: pg.BusMode.PQV,
|
116
|
-
}
|
117
|
-
|
118
|
-
except ImportError as e:
|
119
|
-
pg = None
|
120
|
-
GSLV_AVAILABLE = False
|
121
|
-
GSLV_VERSION = ''
|
122
|
-
build_status_dict = dict()
|
123
|
-
tap_module_control_mode_dict = dict()
|
124
|
-
tap_phase_control_mode_dict = dict()
|
125
|
-
contingency_ops_type_dict = dict()
|
126
|
-
contingency_method_dict = dict()
|
127
38
|
|
128
39
|
|
129
40
|
def get_gslv_mip_solvers_list() -> List[str]:
|
@@ -2493,10 +2404,10 @@ def translate_gslv_pf_results(grid: MultiCircuit, res: "pg.PowerFlowResults", lo
|
|
2493
2404
|
results.loading = res.loading[0, :]
|
2494
2405
|
results.losses = res.losses[0, :]
|
2495
2406
|
# results.Vbranch = res.Vbranch[0, :]
|
2496
|
-
|
2497
|
-
|
2498
|
-
|
2499
|
-
results.
|
2407
|
+
results.If = res.If[0, :]
|
2408
|
+
results.It = res.It[0, :]
|
2409
|
+
|
2410
|
+
results.tap_module = res.tap_module[0, :]
|
2500
2411
|
results.tap_angle = res.tap_angle[0, :]
|
2501
2412
|
# results.F = res.F
|
2502
2413
|
# results.T = res.T
|
@@ -2512,6 +2423,10 @@ def translate_gslv_pf_results(grid: MultiCircuit, res: "pg.PowerFlowResults", lo
|
|
2512
2423
|
results.loading_vsc = res.loading_vsc[0, :]
|
2513
2424
|
results.losses_vsc = res.losses_vsc[0, :]
|
2514
2425
|
|
2426
|
+
results.gen_q = res.gen_q[0, :]
|
2427
|
+
results.battery_q = res.battery_q[0, :]
|
2428
|
+
results.shunt_q = res.shunt_q[0, :]
|
2429
|
+
|
2515
2430
|
# logger.add_info("gslv time", value=res.time_array[0])
|
2516
2431
|
|
2517
2432
|
# results.bus_area_indices = grid.get_bus_area_indices()
|
{gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py
RENAMED
@@ -167,10 +167,11 @@ def merge(A: Dict[str, Dict[str, Dict[str, str]]],
|
|
167
167
|
pass
|
168
168
|
|
169
169
|
|
170
|
-
def read_cgmes_files(cim_files: Union[List[str], str]) -> Dict[str, List[str]]:
|
170
|
+
def read_cgmes_files(cim_files: Union[List[str], str], logger: DataLogger) -> Dict[str, List[str]]:
|
171
171
|
"""
|
172
172
|
Reads a list of .zip or xml into a dictionary of file name -> list of text lines
|
173
173
|
:param cim_files: list of file names
|
174
|
+
:param logger: DataLogger instance
|
174
175
|
:return: dictionary of file name -> list of text lines
|
175
176
|
"""
|
176
177
|
# read files and sort them in the preferred reading order
|
@@ -189,21 +190,28 @@ def read_cgmes_files(cim_files: Union[List[str], str]) -> Dict[str, List[str]]:
|
|
189
190
|
elif file_extension == '.zip':
|
190
191
|
# read the content of a zip file
|
191
192
|
d = get_xml_from_zip(file_name_zip=f)
|
192
|
-
|
193
|
-
|
193
|
+
if d is not None:
|
194
|
+
for key, value in d.items():
|
195
|
+
data[key] = value
|
196
|
+
else:
|
197
|
+
logger.add_error("BadZipFile", value=f)
|
198
|
+
print(f"BadZipFile {f}")
|
194
199
|
else:
|
195
200
|
name, file_extension = os.path.splitext(cim_files)
|
196
201
|
|
197
202
|
if file_extension == '.xml':
|
198
|
-
|
199
|
-
|
200
|
-
file_ptr.close()
|
203
|
+
with open(cim_files, 'rb') as file_ptr:
|
204
|
+
data[name] = get_xml_content(file_ptr=file_ptr)
|
201
205
|
|
202
206
|
elif file_extension == '.zip':
|
203
207
|
# read the content of a zip file
|
204
208
|
d = get_xml_from_zip(file_name_zip=cim_files)
|
205
|
-
|
206
|
-
|
209
|
+
if d is not None:
|
210
|
+
for key, value in d.items():
|
211
|
+
data[key] = value
|
212
|
+
else:
|
213
|
+
logger.add_error("BadZipFile", value=cim_files)
|
214
|
+
print(f"BadZipFile {cim_files}")
|
207
215
|
|
208
216
|
return data
|
209
217
|
|
@@ -324,7 +332,7 @@ class CgmesDataParser(BaseCircuit):
|
|
324
332
|
"http://iec.ch/TC57/ns/CIM/StateVariables-EU/3.0",
|
325
333
|
"http://iec.ch/TC57/ns/CIM/Topology-EU/3.0"]
|
326
334
|
# import the cim files' content into a dictionary
|
327
|
-
data = read_cgmes_files(files)
|
335
|
+
data = read_cgmes_files(cim_files=files, logger=self.logger)
|
328
336
|
# Parse the files
|
329
337
|
i = 0
|
330
338
|
for file_name, file_data in data.items():
|
@@ -21,6 +21,32 @@ import xml.etree.ElementTree as Et
|
|
21
21
|
import xml.dom.minidom
|
22
22
|
|
23
23
|
|
24
|
+
def get_available_cgmes_profiles(cgmes_version: CGMESVersions):
|
25
|
+
if cgmes_version == CGMESVersions.v2_4_15:
|
26
|
+
return {
|
27
|
+
"EQ": ["http://entsoe.eu/CIM/EquipmentCore/3/1",
|
28
|
+
"http://entsoe.eu/CIM/EquipmentShortCircuit/3/1",
|
29
|
+
"http://entsoe.eu/CIM/EquipmentOperation/3/1"],
|
30
|
+
"SSH": ["http://entsoe.eu/CIM/SteadyStateHypothesis/1/1"],
|
31
|
+
"TP": ["http://entsoe.eu/CIM/Topology/4/1"],
|
32
|
+
"SV": ["http://entsoe.eu/CIM/StateVariables/4/1"],
|
33
|
+
"GL": ["http://entsoe.eu/CIM/GeographicalLocation/2/1"]
|
34
|
+
}
|
35
|
+
elif cgmes_version == CGMESVersions.v3_0_0:
|
36
|
+
return {
|
37
|
+
"EQ": ["http://iec.ch/TC57/ns/CIM/CoreEquipment-EU/3.0"],
|
38
|
+
"OP": ["http://iec.ch/TC57/ns/CIM/Operation-EU/3.0"],
|
39
|
+
"SC": ["http://iec.ch/TC57/ns/CIM/ShortCircuit-EU/3.0"],
|
40
|
+
"SSH": ["http://iec.ch/TC57/ns/CIM/SteadyStateHypothesis-EU/3.0"],
|
41
|
+
"TP": ["http://iec.ch/TC57/ns/CIM/Topology-EU/3.0"],
|
42
|
+
"SV": ["http://iec.ch/TC57/ns/CIM/StateVariables-EU/3.0"],
|
43
|
+
"GL": ["http://iec.ch/TC57/ns/CIM/GeographicalLocation-EU/3.0"]
|
44
|
+
}
|
45
|
+
else:
|
46
|
+
print(f"CGMES Version not suported {cgmes_version.value}")
|
47
|
+
return dict()
|
48
|
+
|
49
|
+
|
24
50
|
class CimExporter:
|
25
51
|
def __init__(self, cgmes_circuit: CgmesCircuit, profiles_to_export: List[cgmesProfile], one_file_per_profile: bool):
|
26
52
|
self.cgmes_circuit = cgmes_circuit
|
@@ -48,15 +74,7 @@ class CimExporter:
|
|
48
74
|
"xmlns:entsoe": "http://entsoe.eu/CIM/SchemaExtension/3/1#",
|
49
75
|
"xmlns:rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
|
50
76
|
}
|
51
|
-
self.profile_uris =
|
52
|
-
"EQ": ["http://entsoe.eu/CIM/EquipmentCore/3/1",
|
53
|
-
"http://entsoe.eu/CIM/EquipmentShortCircuit/3/1",
|
54
|
-
"http://entsoe.eu/CIM/EquipmentOperation/3/1"],
|
55
|
-
"SSH": ["http://entsoe.eu/CIM/SteadyStateHypothesis/1/1"],
|
56
|
-
"TP": ["http://entsoe.eu/CIM/Topology/4/1"],
|
57
|
-
"SV": ["http://entsoe.eu/CIM/StateVariables/4/1"],
|
58
|
-
"GL": ["http://entsoe.eu/CIM/GeographicalLocation/2/1"]
|
59
|
-
}
|
77
|
+
self.profile_uris = get_available_cgmes_profiles(cgmes_version=cgmes_circuit.cgmes_version)
|
60
78
|
|
61
79
|
self.enum_dict = dict()
|
62
80
|
self.about_dict = dict()
|
@@ -101,15 +119,8 @@ class CimExporter:
|
|
101
119
|
"xmlns:eu": "http://iec.ch/TC57/CIM100-European#",
|
102
120
|
"xmlns:rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
|
103
121
|
}
|
104
|
-
self.profile_uris =
|
105
|
-
|
106
|
-
"OP": ["http://iec.ch/TC57/ns/CIM/Operation-EU/3.0"],
|
107
|
-
"SC": ["http://iec.ch/TC57/ns/CIM/ShortCircuit-EU/3.0"],
|
108
|
-
"SSH": ["http://iec.ch/TC57/ns/CIM/SteadyStateHypothesis-EU/3.0"],
|
109
|
-
"TP": ["http://iec.ch/TC57/ns/CIM/Topology-EU/3.0"],
|
110
|
-
"SV": ["http://iec.ch/TC57/ns/CIM/StateVariables-EU/3.0"],
|
111
|
-
"GL": ["http://iec.ch/TC57/ns/CIM/GeographicalLocation-EU/3.0"]
|
112
|
-
}
|
122
|
+
self.profile_uris = get_available_cgmes_profiles(cgmes_version=cgmes_circuit.cgmes_version)
|
123
|
+
|
113
124
|
self.enum_dict = dict()
|
114
125
|
self.about_dict = dict()
|
115
126
|
for s_i, p_i, o_i in rdf_serialization.triples((None, RDF.type, RDFS.Class)):
|
{gridcalengine-5.3.39 → gridcalengine-5.3.40}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py
RENAMED
@@ -279,7 +279,7 @@ def get_gcdev_buses(cgmes_model: CgmesCircuit,
|
|
279
279
|
gc_model: MultiCircuit,
|
280
280
|
v_dict: Dict[str, Tuple[float, float]],
|
281
281
|
cn_look_up: CnLookup,
|
282
|
-
logger: DataLogger) -> Dict[str, gcdev.Bus]:
|
282
|
+
logger: DataLogger) -> Tuple[Dict[str, gcdev.Bus], bool]:
|
283
283
|
"""
|
284
284
|
Convert the TopologicalNodes to Buses (CalculationNodes)
|
285
285
|
|
@@ -289,7 +289,7 @@ def get_gcdev_buses(cgmes_model: CgmesCircuit,
|
|
289
289
|
:param cn_look_up: CnLookup
|
290
290
|
:param logger: DataLogger
|
291
291
|
:return: dictionary relating the TopologicalNode uuid to the gcdev CalculationNode
|
292
|
-
Dict[str, gcdev.Bus]
|
292
|
+
Dict[str, gcdev.Bus], fatal error?
|
293
293
|
"""
|
294
294
|
|
295
295
|
slack_id = get_slack_id(cgmes_model.cgmes_assets.SynchronousMachine_list)
|
@@ -310,11 +310,12 @@ def get_gcdev_buses(cgmes_model: CgmesCircuit,
|
|
310
310
|
device_class=tp_node.tpe,
|
311
311
|
device_property="nominalVoltage")
|
312
312
|
elif nominal_voltage is None:
|
313
|
-
logger.add_error(msg='Nominal voltage is None. :(',
|
313
|
+
logger.add_error(msg='Nominal voltage is None. Maybe boundary was not attached for import :(',
|
314
314
|
device=tp_node.rdfid,
|
315
315
|
device_class=tp_node.tpe,
|
316
316
|
device_property="nominalVoltage")
|
317
|
-
raise Exception("Nominal voltage is missing for Bus (Maybe boundary was not attached for import) !")
|
317
|
+
# raise Exception("Nominal voltage is missing for Bus (Maybe boundary was not attached for import) !")
|
318
|
+
return calc_node_dict, True
|
318
319
|
|
319
320
|
|
320
321
|
if voltage is not None and nominal_voltage is not None:
|
@@ -392,7 +393,7 @@ def get_gcdev_buses(cgmes_model: CgmesCircuit,
|
|
392
393
|
cn_look_up.add_bus(bus=gcdev_elm)
|
393
394
|
calc_node_dict[gcdev_elm.idtag] = gcdev_elm
|
394
395
|
|
395
|
-
return calc_node_dict
|
396
|
+
return calc_node_dict, False
|
396
397
|
|
397
398
|
|
398
399
|
def get_gcdev_dc_buses(cgmes_model: CgmesCircuit,
|
@@ -2339,11 +2340,14 @@ def cgmes_to_gridcal(cgmes_model: CgmesCircuit,
|
|
2339
2340
|
device_to_terminal_dict = get_gcdev_device_to_terminal_dict(cgmes_model=cgmes_model,
|
2340
2341
|
logger=logger)
|
2341
2342
|
|
2342
|
-
calc_node_dict
|
2343
|
-
|
2344
|
-
|
2345
|
-
|
2346
|
-
|
2343
|
+
calc_node_dict, fatal_error = get_gcdev_buses(cgmes_model=cgmes_model,
|
2344
|
+
gc_model=gc_model,
|
2345
|
+
v_dict=sv_volt_dict,
|
2346
|
+
cn_look_up=cn_look_up,
|
2347
|
+
logger=logger)
|
2348
|
+
|
2349
|
+
if fatal_error:
|
2350
|
+
return gc_model
|
2347
2351
|
|
2348
2352
|
cn_dict = get_gcdev_connectivity_nodes(cgmes_model=cgmes_model,
|
2349
2353
|
gcdev_model=gc_model,
|
@@ -14,7 +14,7 @@ from GridCalEngine.IO.cim.cim16.cim_circuit import CIMCircuit
|
|
14
14
|
from GridCalEngine.data_logger import DataLogger
|
15
15
|
|
16
16
|
|
17
|
-
def read_cim_files(cim_files):
|
17
|
+
def read_cim_files(cim_files, logger: DataLogger):
|
18
18
|
"""
|
19
19
|
Reads a list of .zip or xml into a dictionary of file name -> list of text lines
|
20
20
|
:param cim_files: list of file names
|
@@ -49,8 +49,13 @@ def read_cim_files(cim_files):
|
|
49
49
|
elif file_extension == '.zip':
|
50
50
|
# read the content of a zip file
|
51
51
|
d = get_xml_from_zip(file_name_zip=cim_files)
|
52
|
-
|
53
|
-
|
52
|
+
|
53
|
+
if d is not None:
|
54
|
+
for key, value in d.items():
|
55
|
+
data[key] = value
|
56
|
+
else:
|
57
|
+
logger.add_error("BadZipFile", value=cim_files)
|
58
|
+
print(f"BadZipFile {cim_files}")
|
54
59
|
|
55
60
|
return data
|
56
61
|
|
@@ -968,7 +973,7 @@ class CIMImport:
|
|
968
973
|
self.cim = CIMCircuit(text_func=self.text_func, progress_func=self.progress_func, logger=self.logger)
|
969
974
|
|
970
975
|
# import the cim files' content into a dictionary
|
971
|
-
data = read_cim_files(cim_files)
|
976
|
+
data = read_cim_files(cim_files=cim_files, logger=self.logger)
|
972
977
|
|
973
978
|
lst2 = sort_cim_files(list(data.keys()))
|
974
979
|
# Parse the files
|
@@ -417,6 +417,10 @@ class FileOpen:
|
|
417
417
|
self.circuit = cgmes_to_gridcal(cgmes_model=self.cgmes_circuit,
|
418
418
|
map_dc_to_hvdc_line=self.options.try_to_map_dc_to_hvdc_line,
|
419
419
|
logger=self.cgmes_logger)
|
420
|
+
|
421
|
+
if self.cgmes_logger.has_logs():
|
422
|
+
self.logger += self.cgmes_logger.get_logger()
|
423
|
+
|
420
424
|
else:
|
421
425
|
# try CIM
|
422
426
|
parser = CIMImport(text_func=text_func, progress_func=progress_func)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
4
|
# SPDX-License-Identifier: MPL-2.0
|
5
5
|
import json
|
6
|
-
from io import StringIO, TextIOWrapper, BytesIO
|
6
|
+
from io import StringIO, TextIOWrapper, BytesIO, BufferedReader
|
7
7
|
import os
|
8
8
|
import numpy as np
|
9
9
|
import chardet
|
@@ -435,7 +435,7 @@ def load_session_driver_objects(file_name_zip: str,
|
|
435
435
|
return data
|
436
436
|
|
437
437
|
|
438
|
-
def get_xml_content(file_ptr: zipfile.ZipExtFile) -> List[str]:
|
438
|
+
def get_xml_content(file_ptr: zipfile.ZipExtFile | BufferedReader) -> List[str]:
|
439
439
|
"""
|
440
440
|
Reads the content of a file
|
441
441
|
:param file_ptr: File pointer (from file or zip file)
|
@@ -236,6 +236,10 @@ class PfBasicFormulation(PfFormulationTemplate):
|
|
236
236
|
|
237
237
|
nbus = self.adm.Ybus.shape[0]
|
238
238
|
|
239
|
+
if self.options.verbose >= 2:
|
240
|
+
print("Ybus:")
|
241
|
+
print(self.adm.Ybus.toarray())
|
242
|
+
|
239
243
|
# Create J in CSC order
|
240
244
|
J = create_J_vc_csc(nbus, self.adm.Ybus.data, self.adm.Ybus.indptr, self.adm.Ybus.indices,
|
241
245
|
self.V, self.idx_dVa, self.idx_dVm, self.idx_dP, self.idx_dQ)
|
@@ -287,8 +291,8 @@ class PfBasicFormulation(PfFormulationTemplate):
|
|
287
291
|
|
288
292
|
return NumericPowerFlowResults(V=self.V,
|
289
293
|
Scalc=Sbus * self.nc.Sbase,
|
290
|
-
m=
|
291
|
-
tau=
|
294
|
+
m=self.nc.active_branch_data.tap_module,
|
295
|
+
tau=self.nc.active_branch_data.tap_angle,
|
292
296
|
Sf=Sf,
|
293
297
|
St=St,
|
294
298
|
If=If,
|
@@ -654,7 +654,7 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
654
654
|
u_cbr_m.append(k)
|
655
655
|
else:
|
656
656
|
self.logger.add_error("Controlled bus index outside of the island, skipping control",
|
657
|
-
device=self.nc.passive_branch_data.idtag[k],)
|
657
|
+
device=self.nc.passive_branch_data.idtag[k], )
|
658
658
|
|
659
659
|
elif ctrl_m == TapModuleControl.Qf:
|
660
660
|
u_cbr_m.append(k)
|
@@ -1197,10 +1197,11 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1197
1197
|
+ len(self.u_cbr_m)
|
1198
1198
|
+ len(self.u_cbr_tau))
|
1199
1199
|
|
1200
|
-
def compute_f(self, x: Vec) -> Vec:
|
1200
|
+
def compute_f(self, x: Vec, update_class_vars: bool = False) -> Vec:
|
1201
1201
|
"""
|
1202
1202
|
Compute the residual vector
|
1203
1203
|
:param x: Solution vector
|
1204
|
+
:param update_class_vars: Update the class vars related to the calculation step
|
1204
1205
|
:return: Residual vector
|
1205
1206
|
"""
|
1206
1207
|
|
@@ -1219,32 +1220,32 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1219
1220
|
k = j + len(self.u_cbr_tau)
|
1220
1221
|
|
1221
1222
|
# copy the sliceable vectors
|
1222
|
-
|
1223
|
-
|
1224
|
-
|
1225
|
-
|
1226
|
-
|
1223
|
+
Vm_ = self.Vm.copy()
|
1224
|
+
Va_ = self.Va.copy()
|
1225
|
+
Pf_vsc_ = self.Pf_vsc.copy()
|
1226
|
+
Pt_vsc_ = self.Pt_vsc.copy()
|
1227
|
+
Qt_vsc_ = self.Qt_vsc.copy()
|
1227
1228
|
|
1228
1229
|
# update the vectors
|
1229
|
-
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1233
|
-
|
1234
|
-
|
1235
|
-
|
1236
|
-
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1230
|
+
Va_[self.i_u_va] = x[0:a]
|
1231
|
+
Vm_[self.i_u_vm] = x[a:b]
|
1232
|
+
Pf_vsc_[self.u_vsc_pf] = x[b:c]
|
1233
|
+
Pt_vsc_[self.u_vsc_pt] = x[c:d]
|
1234
|
+
Qt_vsc_[self.u_vsc_qt] = x[d:e]
|
1235
|
+
Pf_hvdc_ = x[e:f]
|
1236
|
+
Pt_hvdc_ = x[f:g]
|
1237
|
+
Qf_hvdc_ = x[g:h]
|
1238
|
+
Qt_hvdc_ = x[h:i]
|
1239
|
+
m_ = x[i:j]
|
1240
|
+
tau_ = x[j:k]
|
1240
1241
|
|
1241
1242
|
# Controllable branches ----------------------------------------------------------------------------------------
|
1242
1243
|
m2 = self.nc.active_branch_data.tap_module.copy()
|
1243
1244
|
tau2 = self.nc.active_branch_data.tap_angle.copy()
|
1244
|
-
m2[self.u_cbr_m] =
|
1245
|
-
tau2[self.u_cbr_tau] =
|
1245
|
+
m2[self.u_cbr_m] = m_
|
1246
|
+
tau2[self.u_cbr_tau] = tau_
|
1246
1247
|
|
1247
|
-
|
1248
|
+
adm_ = compute_admittances(
|
1248
1249
|
R=self.nc.passive_branch_data.R,
|
1249
1250
|
X=self.nc.passive_branch_data.X,
|
1250
1251
|
G=self.nc.passive_branch_data.G,
|
@@ -1262,9 +1263,9 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1262
1263
|
)
|
1263
1264
|
|
1264
1265
|
# Passive branches ---------------------------------------------------------------------------------------------
|
1265
|
-
V = polar_to_rect(
|
1266
|
-
Sbus = compute_zip_power(self.S0, self.I0, self.Y0,
|
1267
|
-
Scalc_passive = compute_power(
|
1266
|
+
V = polar_to_rect(Vm_, Va_)
|
1267
|
+
Sbus = compute_zip_power(self.S0, self.I0, self.Y0, Vm_)
|
1268
|
+
Scalc_passive = compute_power(adm_.Ybus, V)
|
1268
1269
|
|
1269
1270
|
Pf_cbr = calcSf(k=self.k_cbr_pf,
|
1270
1271
|
V=V,
|
@@ -1320,30 +1321,30 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1320
1321
|
|
1321
1322
|
# VSC ----------------------------------------------------------------------------------------------------------
|
1322
1323
|
T_vsc = self.nc.vsc_data.T
|
1323
|
-
It = np.sqrt(
|
1324
|
+
It = np.sqrt(Pt_vsc_ * Pt_vsc_ + Qt_vsc_ * Qt_vsc_) / Vm_[T_vsc]
|
1324
1325
|
It2 = It * It
|
1325
1326
|
PLoss_IEC = (self.nc.vsc_data.alpha3 * It2
|
1326
1327
|
+ self.nc.vsc_data.alpha2 * It
|
1327
1328
|
+ self.nc.vsc_data.alpha1)
|
1328
1329
|
|
1329
|
-
loss_vsc = PLoss_IEC -
|
1330
|
-
St_vsc = make_complex(
|
1330
|
+
loss_vsc = PLoss_IEC - Pt_vsc_ - Pf_vsc_
|
1331
|
+
St_vsc = make_complex(Pt_vsc_, Qt_vsc_)
|
1331
1332
|
|
1332
1333
|
# HVDC ---------------------------------------------------------------------------------------------------------
|
1333
|
-
Vmf_hvdc =
|
1334
|
+
Vmf_hvdc = Vm_[self.nc.hvdc_data.F]
|
1334
1335
|
zbase = self.nc.hvdc_data.Vnf * self.nc.hvdc_data.Vnf / self.nc.Sbase
|
1335
|
-
Ploss_hvdc = self.nc.hvdc_data.r / zbase * np.power(
|
1336
|
-
loss_hvdc = Ploss_hvdc -
|
1336
|
+
Ploss_hvdc = self.nc.hvdc_data.r / zbase * np.power(Pf_hvdc_ / Vmf_hvdc, 2.0)
|
1337
|
+
loss_hvdc = Ploss_hvdc - Pf_hvdc_ - Pt_hvdc_
|
1337
1338
|
|
1338
1339
|
Pinj_hvdc = self.nc.hvdc_data.Pset / self.nc.Sbase
|
1339
1340
|
if len(self.hvdc_droop_idx):
|
1340
|
-
Vaf_hvdc =
|
1341
|
-
Vat_hvdc =
|
1341
|
+
Vaf_hvdc = Vm_[self.nc.hvdc_data.F[self.hvdc_droop_idx]]
|
1342
|
+
Vat_hvdc = Vm_[self.nc.hvdc_data.T[self.hvdc_droop_idx]]
|
1342
1343
|
Pinj_hvdc[self.hvdc_droop_idx] += self.nc.hvdc_data.angle_droop[self.hvdc_droop_idx] * (Vaf_hvdc - Vat_hvdc)
|
1343
|
-
inj_hvdc =
|
1344
|
+
inj_hvdc = Pf_hvdc_ - Pinj_hvdc
|
1344
1345
|
|
1345
|
-
Sf_hvdc = make_complex(
|
1346
|
-
St_hvdc = make_complex(
|
1346
|
+
Sf_hvdc = make_complex(Pf_hvdc_, Qf_hvdc_)
|
1347
|
+
St_hvdc = make_complex(Pt_hvdc_, Qt_hvdc_)
|
1347
1348
|
|
1348
1349
|
# total nodal power --------------------------------------------------------------------------------------------
|
1349
1350
|
Scalc_active = calc_flows_active_branch_per_bus(
|
@@ -1354,15 +1355,15 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1354
1355
|
St_hvdc=St_hvdc,
|
1355
1356
|
F_vsc=self.nc.vsc_data.F,
|
1356
1357
|
T_vsc=self.nc.vsc_data.T,
|
1357
|
-
Pf_vsc=
|
1358
|
+
Pf_vsc=Pf_vsc_,
|
1358
1359
|
St_vsc=St_vsc)
|
1359
1360
|
|
1360
|
-
|
1361
|
+
Scalc_ = Scalc_active + Scalc_passive
|
1361
1362
|
|
1362
|
-
dS =
|
1363
|
+
dS = Scalc_ - Sbus
|
1363
1364
|
|
1364
1365
|
# compose the residuals vector ---------------------------------------------------------------------------------
|
1365
|
-
|
1366
|
+
f_ = np.r_[
|
1366
1367
|
dS[self.i_k_p].real,
|
1367
1368
|
dS[self.i_k_q].imag,
|
1368
1369
|
loss_vsc,
|
@@ -1374,7 +1375,23 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1374
1375
|
Qt_cbr - self.cbr_qt_set
|
1375
1376
|
]
|
1376
1377
|
|
1377
|
-
|
1378
|
+
if update_class_vars:
|
1379
|
+
self._Va = Va_
|
1380
|
+
self._Vm = Vm_
|
1381
|
+
self.Pf_vsc = Pf_vsc_
|
1382
|
+
self.Pt_vsc = Pt_vsc_
|
1383
|
+
self.Qt_vsc = Qt_vsc_
|
1384
|
+
self.Pf_hvdc = Pf_hvdc_
|
1385
|
+
self.Pt_hvdc = Pt_hvdc_
|
1386
|
+
self.Qf_hvdc = Qf_hvdc_
|
1387
|
+
self.Qt_hvdc = Qt_hvdc_
|
1388
|
+
self.m = m_
|
1389
|
+
self.tau = tau_
|
1390
|
+
self.Scalc = Scalc_
|
1391
|
+
self.adm = adm_
|
1392
|
+
self._f = f_
|
1393
|
+
|
1394
|
+
return f_
|
1378
1395
|
|
1379
1396
|
def check_error(self, x: Vec) -> Tuple[float, Vec]:
|
1380
1397
|
"""
|
@@ -1382,7 +1399,7 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1382
1399
|
:param x: Solution vector
|
1383
1400
|
:return: error
|
1384
1401
|
"""
|
1385
|
-
_res = self.compute_f(x)
|
1402
|
+
_res = self.compute_f(x, update_class_vars=False)
|
1386
1403
|
err = compute_fx_error(_res)
|
1387
1404
|
|
1388
1405
|
# compute the error
|
@@ -1402,7 +1419,7 @@ class PfGeneralizedFormulation(PfFormulationTemplate):
|
|
1402
1419
|
self.V = polar_to_rect(self.Vm, self.Va)
|
1403
1420
|
|
1404
1421
|
# compute f(x)
|
1405
|
-
self._f = self.compute_f(x)
|
1422
|
+
self._f = self.compute_f(x, update_class_vars=True)
|
1406
1423
|
|
1407
1424
|
self._error = compute_fx_error(self._f)
|
1408
1425
|
|