GridCalEngine 5.3.39__tar.gz → 5.3.41__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_gslv.py +30 -107
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/line.py +6 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/overhead_line_type.py +31 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/load.py +44 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/multi_circuit.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_data_parser.py +17 -9
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_export.py +29 -18
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_to_gridcal.py +14 -10
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/cim_parser.py +9 -4
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/file_handler.py +4 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/zip_interface.py +2 -2
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/bus.py +13 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/busbar_section.py +13 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/dangling_line.py +29 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/discrete_measurement.py +17 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/generator.py +34 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/identifiable_short_circuit.py +15 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/iidm_circuit.py +32 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/line.py +35 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/load.py +20 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/node_breaker_topology.py +13 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/observability_area.py +15 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/operating_status.py +15 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/rte_object.py +105 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/shunt.py +19 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/standby_automation.py +15 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/startup.py +15 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/static_var_compensator.py +21 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/substation.py +19 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/switch.py +23 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/two_winding_transformer.py +94 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices/voltage_level.py +18 -0
- gridcalengine-5.3.41/GridCalEngine/IO/iidm/iidm_parser.py +149 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_driver.py +4 -4
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_opf.py +407 -569
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_ts_driver.py +4 -4
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_driver.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/linear_opf_ts.py +97 -114
- gridcalengine-5.3.41/GridCalEngine/Simulations/PowerFlow/Formulations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_basic_formulation.py +6 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_generalized_formulation.py +59 -42
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/newton_raphson_fx.py +14 -14
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_driver.py +5 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_results.py +27 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_driver.py +6 -2
- gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability/__init__.py +4 -0
- {gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic → gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability}/adequacy_driver.py +1 -1
- {gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic → gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability}/blackout_driver.py +4 -14
- gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability/reliability.py +376 -0
- gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability/reliability_driver.py +116 -0
- {gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic → gridcalengine-5.3.41/GridCalEngine/Simulations/Reliability}/reliability_iterable.py +2 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/SigmaAnalysis/sigma_analysis_driver.py +1 -2
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/StateEstimation/state_stimation_driver.py +3 -1
- gridcalengine-5.3.41/GridCalEngine/Simulations/Stochastic/__init__.py +10 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Topology/topology_reduction_driver.py +5 -4
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/types.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/admittance_matrices.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/topology_processor.py +1 -1
- gridcalengine-5.3.41/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/__init__.py +0 -0
- gridcalengine-5.3.41/GridCalEngine/Utils/ThirdParty/gslv/__init__.py +0 -0
- gridcalengine-5.3.41/GridCalEngine/Utils/ThirdParty/gslv/gslv_activation.py +107 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/__version__.py +1 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/data_logger.py +35 -1
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/enumerations.py +31 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/PKG-INFO +1 -1
- gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic/__init__.py +0 -11
- gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic/reliability.py +0 -184
- gridcalengine-5.3.39/GridCalEngine/Simulations/Stochastic/reliability_driver.py +0 -204
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_bentayga.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_newton_pa.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_optimods.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Compilers/circuit_to_pgm.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/active_branch_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/battery_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/branch_parent_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/bus_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/fluid_node_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/fluid_p2x_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/fluid_path_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/fluid_pump_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/fluid_turbine_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/generator_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/hvdc_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/load_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/numerical_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/passive_branch_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/shunt_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/DataStructures/vsc_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/branch_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/community.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/contingency.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/contingency_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/country.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/facility.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/inter_aggregation_info.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/investment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/investments_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/modelling_authority.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/municipality.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/remedial_action.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/remedial_action_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Aggregation/zone.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Associations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Associations/association.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Associations/emission_gas.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Associations/fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Associations/technology.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/hvdc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/line_locations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/sequence_line_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/series_reactance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/transformer3w.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/transformer_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/underground_line_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/upfc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/vsc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/winding.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/wire.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/base_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/graphic_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/map_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/map_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/palettes.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Diagrams/schematic_diagram.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_injection_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_p2x.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_path.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Fluid/fluid_turbine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/battery.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/controllable_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/current_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/external_grid.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/generator_q_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Injections/static_generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/branch_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/controllable_branch_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/editable_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/generator_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/injection_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/load_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/physical_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Parents/shunt_parent.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Substation/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/admittance_matrix.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/comparison.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/profile.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/types.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/base/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/base/base_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/base/base_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/base/base_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/base/units.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/base.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_2_4_15_assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_assets/cgmes_3_0_0_assets.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_create_instances.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_data_validator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_enums.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ac_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_converterdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/acdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/active_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/analog_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/apparent_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/asynchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/base_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/basic_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bay.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/bus_name_marker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/busbar_section.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conductor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connectivity_node_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/connector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/control_area_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/coordinate_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/cs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/current_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/curve_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_base_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_chopper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_converter_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_series_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/dc_topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/earth_fault_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_consumer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_scheduling_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/energy_source.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_network.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/equivalent_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/external_network_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/fossil_fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/full_model.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ground_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/grounding_impedance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/hydro_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/identified_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/junction.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/linear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_break_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/load_response_characteristic.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/measurement_value.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/mutual_coupling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/non_conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nonlinear_shunt_compensator_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/nuclear_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/operational_limit_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/per_lengthdc_line_parameter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/petersen_coil.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_asymmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_non_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_symmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/phase_tap_changer_tabular.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/position_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_system_resource.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/power_transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/protected_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/quality61850.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/ratio_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reactive_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regular_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_cond_eq.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/regulating_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/reporting_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/rotating_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/season_day_type_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/series_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/solar_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/static_var_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sub_load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_shunt_compensator_sections.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_status.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_tap_step.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/sv_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/synchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/thermal_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/tie_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/voltage_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/vs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v2_4_15/devices/wind_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ac_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_converterdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/acdc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/active_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/analog_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/apparent_power_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/asynchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/auxiliary_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/base_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/basic_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/battery_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bay.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/boundary_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/bus_name_marker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/busbar_section.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/caes_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/clamp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cogeneration_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/combined_cycle_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conductor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connectivity_node_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/connector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/control_area_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/coordinate_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/current_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/curve_data.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/cut.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_base_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_busbar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_chopper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_conducting_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_converter_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_line_segment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_series_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/dc_topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnecting_circuit_breaker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/earth_fault_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_connection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_consumer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_scheduling_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/energy_source.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equipment_container.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_equipment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_network.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/equivalent_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/external_network_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fault_indicator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fossil_fuel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/fuse.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ground_disconnector.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/grounding_impedance.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/hydro_pump.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/identified_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/io_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/jumper.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/junction.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/linear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_break_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/load_response_characteristic.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/measurement_value.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/mutual_coupling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/non_conform_load_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nonlinear_shunt_compensator_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/nuclear_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_set.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/operational_limit_type.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/petersen_coil.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_asymmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_non_linear.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_symmetrical.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/phase_tap_changer_tabular.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/photo_voltaic_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/position_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/post_line_sensor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/potential_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_connection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_electronics_wind_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_system_resource.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/power_transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/protected_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/ratio_tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reactive_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regular_interval_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_cond_eq.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/regulating_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/reporting_group.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/rotating_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/season_day_type_schedule.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sensor.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/series_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/service_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/shunt_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/solar_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/static_var_compensator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_geographical_region.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sub_load_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/surge_arrester.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_injection.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_shunt_compensator_sections.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_status.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_tap_step.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/sv_voltage.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/switch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/synchronous_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_control.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tap_changer_table_point.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/terminal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/thermal_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/tie_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_island.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/topological_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/transformer_end.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_level.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/voltage_limit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_capability_curve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/vs_converter.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wave_trap.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_generating_unit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/wind_power_plant.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_v3_0_0/devices/work_location.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/cgmes_writer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/gridcal_to_cgmes.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/rdfs_infos.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cgmes/rdfs_serializations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/cim_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/cim_data_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/cim_devices.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/cim16/cim_enums.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/base_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/cgmes_lookup_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/db_handler.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/file_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/cim/db/psse_lookup_db.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/dgs/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/dgs/dgs_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/epc/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/epc/epc_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/file_system.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/catalogue.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/contingency_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/excel_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/generic_io_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/h5_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/json_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/pack_unpack.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/remote.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/results_export.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/gridcal/sqlite_interface.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/IO/matpower/legacy → gridcalengine-5.3.41/GridCalEngine/IO/iidm}/__init__.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/IO/ucte → gridcalengine-5.3.41/GridCalEngine/IO/iidm/devices}/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/branch_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/bus_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/converter_dc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/generator.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/IO/ucte/devices → gridcalengine-5.3.41/GridCalEngine/IO/matpower/legacy}/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/legacy/matpower_branch_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/legacy/matpower_bus_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/legacy/matpower_gen_definitions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/legacy/matpower_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/matpower_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/matpower_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/matpower/matpower_utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/dpx_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/ipa_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/pandapower_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/plx_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/others/pypsa_parser.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/branch.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/bus.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/facts.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/fixed_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/generator.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/gne_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/impedance_correction_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/induction_machine.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/inter_area.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/load.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/multi_section_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/owner.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/psse_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/psse_object.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/psse_property.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/substation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/switched_shunt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/system_switching_device.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/two_terminal_dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/vsc_dc_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/devices/zone.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/gridcal_to_raw.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/raw_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/raw_parser_writer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/raw_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/raw_writer_comment_map.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/raw/rawx_parser_writer.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/Simulations/OPF/Formulations → gridcalengine-5.3.41/GridCalEngine/IO/ucte}/__init__.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/Simulations/PowerFlow/Formulations → gridcalengine-5.3.41/GridCalEngine/IO/ucte/devices}/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_base.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_comment.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_exchange_power.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_line.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_node.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_transformer.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_transformer_regulation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/devices/ucte_transformer_tap_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/IO/ucte/ucte_to_gridcal.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/LICENSE.txt +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ATC/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ATC/available_transfer_capacity_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Clustering/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Clustering/clustering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Clustering/clustering_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Clustering/clustering_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Clustering/clustering_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingencies.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/helm_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/linear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/nonlinear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/optimal_linear_contingency_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/Methods/srap.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingencies_report.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_analysis_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContingencyAnalysis/contingency_plan.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ContinuationPowerFlow/continuation_power_flow_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Derivatives/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Derivatives/ac_jacobian.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Derivatives/csc_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Derivatives/csr_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Derivatives/matpower_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Dynamics/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Dynamics/dynamic_modules.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Dynamics/transient_stability_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InputsAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InputsAnalysis/inputs_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/NSGA_3.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/mixed_variable_NSGA_2.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/random_eval.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/Methods/stop_crits.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/InvestmentsEvaluation/investments_evaluation_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/LinearFactors/linear_analysis_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NTC/ntc_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NodalCapacity/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/NodalCapacity/nodal_capacity_ts_results.py +0 -0
- {gridcalengine-5.3.39/GridCalEngine/Utils/ThirdParty/SyntheticNetworks → gridcalengine-5.3.41/GridCalEngine/Simulations/OPF/Formulations}/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/Formulations/ac_opf_problem.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_derivatives.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/NumericalMethods/ac_opf_new.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/NumericalMethods/newton_raphson_ips_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/opf_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/opf_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/opf_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/opf_ts_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/opf_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/OPF/simple_dispatch_ts.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_advanced_formulation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/Formulations/pf_formulation_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/common_functions.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/discrete_controls.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/fast_decoupled.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/gauss_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/helm_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/iwamoto_newton_raphson.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/levenberg_marquadt_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/linearized_power_flow.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/NumericalMethods/powell_fx.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/grid_analysis.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_ts_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/PowerFlow/power_flow_worker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_options.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/ShortCircuitStudies/short_circuit_worker.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/SigmaAnalysis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/StateEstimation/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/StateEstimation/state_estimation.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/StateEstimation/state_estimation_inputs.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Stochastic/latin_hypercube_sampling.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_input.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Stochastic/stochastic_power_flow_results.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Topology/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Topology/node_groups_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/Topology/topology_processor_driver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/driver_handler.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/driver_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/options_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/results_table.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Simulations/results_template.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/detect_substations.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/simulation_indices.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Topology/topology.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Filtering/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Filtering/filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Filtering/objects_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Filtering/results_table_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Filtering/timeseries_filtering.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/SimpleMip/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/SimpleMip/highs.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/SimpleMip/lpmodel.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/SimpleMip/lpobjects.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/pulp_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/MIP/selected_interface.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_pareto.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_mo_scaled.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/MVRSM_original.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/autodiff.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/common.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/ips.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/iwamoto.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/levenberg_marquadt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/newton_raphson.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/newton_raphson_ode.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/non_dominated_sorting.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/nsga3.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/numerical_stability.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/powell.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/sparse_solve.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/NumericalMethods/weldorf_online_stddev.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/csc.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/csc2.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/csc_numba.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/sparse_array.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/Sparse/utils.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/SyntheticNetworks/rpgm_algo.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/copt_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/cplex_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/gurobi_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/highs_py.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/lp_solver_cmd.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/scip_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/apis/xpress_api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/constants.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/model/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_objects.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/model/lp_problem.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/mps_lp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/paths.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/pulp.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/sparse.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/ThirdParty/pulp/utilities.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/progress_bar.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/scores.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Utils/zip_file_mgmt.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/__init__.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/api.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/basic_structures.py +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/setup.cfg +0 -0
- {gridcalengine-5.3.39 → gridcalengine-5.3.41}/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
|
-
from GridCalEngine.basic_structures import IntVec, Vec
|
18
|
+
from GridCalEngine.basic_structures import IntVec, Vec, ConvergenceReport
|
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,10 +2423,22 @@ 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
|
+
|
2430
|
+
report = ConvergenceReport()
|
2431
|
+
report.add(method=SolverType.NR,
|
2432
|
+
error=res.error_values[0],
|
2433
|
+
elapsed=res.elapsed,
|
2434
|
+
iterations=0,
|
2435
|
+
converged=res.converged_values[0])
|
2436
|
+
|
2437
|
+
results.convergence_reports.append(report)
|
2515
2438
|
# logger.add_info("gslv time", value=res.time_array[0])
|
2516
2439
|
|
2517
|
-
|
2518
|
-
|
2440
|
+
results.bus_area_indices = grid.get_bus_area_indices()
|
2441
|
+
results.area_names = [a.name for a in grid.areas]
|
2519
2442
|
# results.bus_types = convert_bus_types(res.bus_types[0]) # this is a list of lists
|
2520
2443
|
|
2521
2444
|
# for rep in res.stats[0]:
|
@@ -455,6 +455,12 @@ class Line(BranchParent):
|
|
455
455
|
"""
|
456
456
|
|
457
457
|
if isinstance(obj, OverheadLineType):
|
458
|
+
if not obj.is_computed():
|
459
|
+
obj.compute()
|
460
|
+
if not obj.is_computed():
|
461
|
+
return
|
462
|
+
else:
|
463
|
+
pass
|
458
464
|
|
459
465
|
template_vn = obj.Vnom
|
460
466
|
vn = self.get_max_bus_nominal_voltage()
|
{gridcalengine-5.3.39 → gridcalengine-5.3.41}/GridCalEngine/Devices/Branches/overhead_line_type.py
RENAMED
@@ -247,7 +247,7 @@ class OverheadLineType(EditableDevice):
|
|
247
247
|
self.wires_in_tower: ListOfWires = ListOfWires()
|
248
248
|
|
249
249
|
# nominal voltage
|
250
|
-
self.
|
250
|
+
self._Vnom = Vnom # kV
|
251
251
|
|
252
252
|
self.earth_resistivity = earth_resistivity # ohm/m3
|
253
253
|
|
@@ -277,6 +277,14 @@ class OverheadLineType(EditableDevice):
|
|
277
277
|
self.register(key='wires_in_tower', units='', tpe=SubObjectType.ListOfWires,
|
278
278
|
definition='List of wires', editable=False, display=False)
|
279
279
|
|
280
|
+
@property
|
281
|
+
def Vnom(self) -> float:
|
282
|
+
return self._Vnom
|
283
|
+
|
284
|
+
@Vnom.setter
|
285
|
+
def Vnom(self, val: float):
|
286
|
+
self._Vnom = float(val)
|
287
|
+
|
280
288
|
@property
|
281
289
|
def n_circuits(self) -> int:
|
282
290
|
"""
|
@@ -420,6 +428,28 @@ class OverheadLineType(EditableDevice):
|
|
420
428
|
# there are no wires
|
421
429
|
pass
|
422
430
|
|
431
|
+
def is_computed(self) -> bool:
|
432
|
+
|
433
|
+
"""
|
434
|
+
|
435
|
+
return: Boolean that tells if the template has already been computed or not
|
436
|
+
|
437
|
+
"""
|
438
|
+
|
439
|
+
ok = True
|
440
|
+
ok = ok and self.z_abc is not None
|
441
|
+
ok = ok and self.z_seq is not None
|
442
|
+
ok = ok and self.z_abcn is not None
|
443
|
+
ok = ok and self.z_phases_abc is not None
|
444
|
+
ok = ok and self.z_phases_abcn is not None
|
445
|
+
ok = ok and self.y_abc is not None
|
446
|
+
ok = ok and self.y_seq is not None
|
447
|
+
ok = ok and self.y_abcn is not None
|
448
|
+
ok = ok and self.y_phases_abc is not None
|
449
|
+
ok = ok and self.y_phases_abcn is not None
|
450
|
+
|
451
|
+
return ok
|
452
|
+
|
423
453
|
def check(self, logger=Logger()):
|
424
454
|
"""
|
425
455
|
Check that the wires configuration make sense
|
@@ -65,6 +65,9 @@ class Load(LoadParent):
|
|
65
65
|
self._Ir_prof = Profile(default_value=self.Ir, data_type=float)
|
66
66
|
self._Ii_prof = Profile(default_value=self.Ii, data_type=float)
|
67
67
|
|
68
|
+
self._n_customers: int = 1
|
69
|
+
self._n_customers_prof = Profile(default_value=self._n_customers, data_type=int)
|
70
|
+
|
68
71
|
self.register(key='Ir', units='MW', tpe=float,
|
69
72
|
definition='Active power of the current component at V=1.0 p.u.', profile_name='Ir_prof')
|
70
73
|
self.register(key='Ii', units='MVAr', tpe=float,
|
@@ -73,6 +76,8 @@ class Load(LoadParent):
|
|
73
76
|
definition='Active power of the impedance component at V=1.0 p.u.', profile_name='G_prof')
|
74
77
|
self.register(key='B', units='MVAr', tpe=float,
|
75
78
|
definition='Reactive power of the impedance component at V=1.0 p.u.', profile_name='B_prof')
|
79
|
+
self.register(key='n_customers', units='unit', tpe=int,
|
80
|
+
definition='Number of customers represented by this load', profile_name='n_customers_prof')
|
76
81
|
|
77
82
|
@property
|
78
83
|
def Ir_prof(self) -> Profile:
|
@@ -142,6 +147,45 @@ class Load(LoadParent):
|
|
142
147
|
else:
|
143
148
|
raise Exception(str(type(val)) + 'not supported to be set into a B_prof')
|
144
149
|
|
150
|
+
@property
|
151
|
+
def n_customers(self) -> int:
|
152
|
+
"""
|
153
|
+
Return the number of customers
|
154
|
+
"""
|
155
|
+
return self._n_customers
|
156
|
+
|
157
|
+
@n_customers.setter
|
158
|
+
def n_customers(self, val: int):
|
159
|
+
"""
|
160
|
+
Set the number of customers
|
161
|
+
:param val: value greater than 0
|
162
|
+
"""
|
163
|
+
try:
|
164
|
+
val2 = int(val)
|
165
|
+
if val2 > 0:
|
166
|
+
self._n_customers = val2
|
167
|
+
else:
|
168
|
+
print("There must be at least one customer right?")
|
169
|
+
except ValueError as e:
|
170
|
+
print(e)
|
171
|
+
|
172
|
+
@property
|
173
|
+
def n_customers_prof(self) -> Profile:
|
174
|
+
"""
|
175
|
+
Cost profile
|
176
|
+
:return: Profile
|
177
|
+
"""
|
178
|
+
return self._n_customers_prof
|
179
|
+
|
180
|
+
@n_customers_prof.setter
|
181
|
+
def n_customers_prof(self, val: Union[Profile, np.ndarray]):
|
182
|
+
if isinstance(val, Profile):
|
183
|
+
self._n_customers_prof = val
|
184
|
+
elif isinstance(val, np.ndarray):
|
185
|
+
self._n_customers_prof.set(arr=val)
|
186
|
+
else:
|
187
|
+
raise Exception(str(type(val)) + 'not supported to be set into n_customers_prof')
|
188
|
+
|
145
189
|
def plot_profiles(self, time=None, show_fig=True):
|
146
190
|
"""
|
147
191
|
Plot the time series results of this object
|
@@ -1112,7 +1112,7 @@ class MultiCircuit(Assets):
|
|
1112
1112
|
|
1113
1113
|
def get_inter_buses_branches(self, a1: Set[dev.Bus], a2: Set[dev.Bus]) -> List[Tuple[int, object, float]]:
|
1114
1114
|
"""
|
1115
|
-
Get the inter-
|
1115
|
+
Get the inter-buses Branches. HVDC Branches are not considered
|
1116
1116
|
:param a1: Group of Buses 1
|
1117
1117
|
:param a2: Group of Buses 1
|
1118
1118
|
:return: List of (branch index, branch object, flow sense w.r.t the area exchange)
|
{gridcalengine-5.3.39 → gridcalengine-5.3.41}/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.41}/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)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
5
|
+
from GridCalEngine.IO.iidm.devices.rte_object import RteObject
|
6
|
+
|
7
|
+
|
8
|
+
class Bus(RteObject):
|
9
|
+
def __init__(self, id):
|
10
|
+
super().__init__("Bus")
|
11
|
+
self.id = id
|
12
|
+
|
13
|
+
self.register_property("id", "bus:id", str, description="Bus ID")
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
5
|
+
from GridCalEngine.IO.iidm.devices.rte_object import RteObject
|
6
|
+
|
7
|
+
|
8
|
+
class BusbarSection(RteObject):
|
9
|
+
def __init__(self, id: str):
|
10
|
+
super().__init__("BusbarSection")
|
11
|
+
self.id = id
|
12
|
+
|
13
|
+
self.register_property("id", "busbarSection:id", str, description="Busbar section ID")
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
5
|
+
from GridCalEngine.IO.iidm.devices.rte_object import RteObject, Unit
|
6
|
+
|
7
|
+
|
8
|
+
class DanglingLine(RteObject):
|
9
|
+
def __init__(self, id: str, bus: str, p0: float, q0: float, u0: float, r: float, x: float, g: float, b: float):
|
10
|
+
super().__init__("DanglingLine")
|
11
|
+
self.id = id
|
12
|
+
self.bus = bus
|
13
|
+
self.p0 = p0
|
14
|
+
self.q0 = q0
|
15
|
+
self.u0 = u0
|
16
|
+
self.r = r
|
17
|
+
self.x = x
|
18
|
+
self.g = g
|
19
|
+
self.b = b
|
20
|
+
|
21
|
+
self.register_property("id", "danglingLine:id", str, description="Dangling line ID")
|
22
|
+
self.register_property("bus", "danglingLine:bus", str, description="Connected bus")
|
23
|
+
self.register_property("p0", "danglingLine:p0", float, Unit("MW"), description="Active power")
|
24
|
+
self.register_property("q0", "danglingLine:q0", float, Unit("MVAr"), description="Reactive power")
|
25
|
+
self.register_property("u0", "danglingLine:u0", float, Unit("kV"), description="Voltage at terminal")
|
26
|
+
self.register_property("r", "danglingLine:r", float, Unit("Ohm"), description="Resistance")
|
27
|
+
self.register_property("x", "danglingLine:x", float, Unit("Ohm"), description="Reactance")
|
28
|
+
self.register_property("g", "danglingLine:g", float, Unit("S"), description="Conductance")
|
29
|
+
self.register_property("b", "danglingLine:b", float, Unit("S"), description="Susceptance")
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
2
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
3
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
4
|
+
# SPDX-License-Identifier: MPL-2.0
|
5
|
+
from GridCalEngine.IO.iidm.devices.rte_object import RteObject
|
6
|
+
|
7
|
+
|
8
|
+
class DiscreteMeasurement(RteObject):
|
9
|
+
def __init__(self, id: str, equipmentId: str, value: bool):
|
10
|
+
super().__init__("DiscreteMeasurement")
|
11
|
+
self.id = id
|
12
|
+
self.equipmentId = equipmentId
|
13
|
+
self.value = value
|
14
|
+
|
15
|
+
self.register_property("id", "discreteMeasurement:id", str, description="Measurement ID")
|
16
|
+
self.register_property("equipmentId", "discreteMeasurement:equipmentId", str, description="Referenced equipment ID")
|
17
|
+
self.register_property("value", "discreteMeasurement:value", bool, description="Boolean value of the measurement")
|