VeraGridEngine.IO.matpower package

Subpackages

Submodules

VeraGridEngine.IO.matpower.area module

VeraGridEngine.IO.matpower.branch module

VeraGridEngine.IO.matpower.branch_dc module

VeraGridEngine.IO.matpower.bus module

VeraGridEngine.IO.matpower.bus_dc module

VeraGridEngine.IO.matpower.converter_dc module

VeraGridEngine.IO.matpower.generator module

VeraGridEngine.IO.matpower.matpower_circuit module

VeraGridEngine.IO.matpower.matpower_to_veragrid module

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_areas(circuit: MultiCircuit, m_grid: MatpowerCircuit) Dict[int, Tuple[Area, int]][source]

Parse Matpower / FUBM Matpower area data into VeraGrid :param circuit: MultiCircuit instance :param m_grid: MatpowerCircuit :return: area index -> object dictionary

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_branches(circuit: MultiCircuit, m_grid: MatpowerCircuit, bus_idx_dict: Dict[int, Bus], logger: Logger)[source]

Parse Matpower / FUBM Matpower branch data into VeraGrid :param circuit: MultiCircuit instance :param m_grid: MatpowerCircuit :param bus_idx_dict: bus index -> object dictionary :param logger: Logger :return: Nothing

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_buses(circuit: MultiCircuit, m_grid: MatpowerCircuit, area_idx_dict) Dict[int, Bus][source]

Parse Matpower / FUBM Matpower bus data into VeraGrid :param circuit: MultiCircuit instance :param m_grid: MatpowerCircuit :param area_idx_dict: area index -> object dictionary :return: bus index -> object dictionary

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_converters(circuit: MultiCircuit, m_grid: MatpowerCircuit, bus_dict: Dict[int, Bus], dc_bus_dict: Dict[int, Bus], logger: Logger)[source]
VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_dc_branches(circuit: MultiCircuit, m_grid: MatpowerCircuit, dc_bus_dict: Dict[int, Bus], logger: Logger)[source]
Parameters:
  • circuit

  • m_grid

  • dc_bus_dict

  • logger

Returns:

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_dc_buses(circuit: MultiCircuit, m_grid: MatpowerCircuit, area_idx_dict, freq=50.0) Dict[int, Bus][source]

Parse Matpower / FUBM Matpower bus data into VeraGrid :param circuit: MultiCircuit instance :param m_grid: MatpowerCircuit :param area_idx_dict: area index -> object dictionary :param freq: frequency in Hz :return: bus index -> object dictionary

VeraGridEngine.IO.matpower.matpower_to_veragrid.convert_generators(circuit: MultiCircuit, m_grid: MatpowerCircuit, bus_idx_dict: Dict[int, Bus])[source]

Parse Matpower / FUBM Matpower generator data into VeraGrid :param circuit: MultiCircuit instance :param m_grid: MatpowerCircuit :param bus_idx_dict: matpower bus index -> object dictionary :return:

VeraGridEngine.IO.matpower.matpower_to_veragrid.matpower_to_veragrid(m_grid: MatpowerCircuit, logger: Logger) MultiCircuit[source]
Parameters:
  • m_grid

  • logger

Returns:

VeraGridEngine.IO.matpower.matpower_utils module

VeraGridEngine.IO.matpower.matpower_utils.find_between(s: str, first: str, last: str) str[source]

Find sting between two sub-strings Args:

s: Main string first: first sub-string last: second sub-string

Example find_between(β€˜[Hello]’, β€˜[’, β€˜]’) -> returns β€˜Hello’ Returns:

String between the first and second sub-strings, if any was found otherwise returns an empty string

VeraGridEngine.IO.matpower.matpower_utils.txt2mat(txt: str, line_splitter=';', to_float=True)[source]
Parameters:
  • txt

  • line_splitter

  • to_float

Returns:

VeraGridEngine.IO.matpower.veragrid_to_matpower module

class VeraGridEngine.IO.matpower.veragrid_to_matpower.MatpowerCaseExport(base_mva: float)[source]

Bases: object

Store one MATPOWER case export in an explicit container.

base_mva: float
branch_table: List[List[int | float]]
bus_names: List[str]
bus_table: List[List[int | float]]
gen_table: List[List[int | float]]
gencost_table: List[List[int | float]]
VeraGridEngine.IO.matpower.veragrid_to_matpower.build_matpower_case(circuit: MultiCircuit, t_idx: int | None = None, logger: Logger | None = None) MatpowerCaseExport[source]

Convert one VeraGrid circuit into a MATPOWER case container.

Parameters:
  • circuit – Circuit to export.

  • t_idx – Optional time index. None exports the snapshot state.

  • logger – Optional export logger.

Returns:

MATPOWER case container.

VeraGridEngine.IO.matpower.veragrid_to_matpower.build_matpower_case_dict(circuit: MultiCircuit, t_idx: int | None = None, logger: Logger | None = None) dict[str, float | List[List[int | float]] | List[str]][source]

Convert one VeraGrid circuit into a plain MATPOWER dictionary structure.

Parameters:
  • circuit – Circuit to export.

  • t_idx – Optional time index. None exports the snapshot state.

  • logger – Optional export logger.

Returns:

Dictionary with MATPOWER case data.

VeraGridEngine.IO.matpower.veragrid_to_matpower.compose_matpower_case_lines(case_export: MatpowerCaseExport, case_name: str) List[str][source]

Compose the full MATPOWER case-file contents.

Parameters:
  • case_export – Case container to serialize.

  • case_name – Requested MATLAB function name.

Returns:

Output text split into lines.

VeraGridEngine.IO.matpower.veragrid_to_matpower.write_matpower_case_file(file_name: str, circuit: MultiCircuit, t_idx: int | None = None, logger: Logger | None = None, case_name: str | None = None) Logger[source]

Export one VeraGrid circuit into one MATPOWER case file.

Parameters:
  • file_name – Target MATPOWER file path.

  • circuit – Circuit to export.

  • t_idx – Optional time index. None exports the snapshot state.

  • logger – Optional export logger.

  • case_name – Optional explicit MATLAB function name.

Returns:

Export logger.

Module contents