Equipment Mappers#

class shift.BaseEquipmentMapper(graph: DistributionGraph)#

Abstract class for mapping equipment to nodes and assets.

Subclasses must implement following method. * transformer_voltage_mapping

Parameters:

graph (DistributionGraph) – Instance of DistributionGraph for which to implement voltage mapping.

abstract property node_asset_equipment_mapping: dict[str, dict[Annotated[Type[DistributionLoad] | Type[DistributionSolar] | Type[DistributionCapacitor] | Type[DistributionVoltageSource], FieldInfo(annotation=NoneType, required=True, description='Possible node types.')], Component]]#

Returns dictionary mapping node name to asset type to equipment component.

Return type:

dict[str, dict[VALID_NODE_TYPES, Component]]

abstract property edge_equipment_mapping: dict[str, Component]#

Returns dictionary mapping edge name to component.

Return type:

dict[str, Component]

class shift.EdgeEquipmentMapper(graph: DistributionGraph, catalog_sys: DatasetSystem, voltage_mapper: BaseVoltageMapper, phase_mapper: BasePhaseMapper)#

Bases: BaseEquipmentMapper

Class interface for selecting edge equipment based on load equipment.

Parameters:
  • graph (DistributionGraph) – Instance of the distribution graph.

  • catalog_sys (DatasetSystem) – Instance of Dataset system containing catalogs.

  • voltage_mapper (BaseVoltageMapper) – Instance of the voltage mapper.

  • phase_mapper (BasePhaseMapper) – Instance of the base phase mapper.

property edge_equipment_mapping: dict[str, Component]#

Returns dictionary mapping edge name to component.

Return type:

dict[str, Component]