Source code for dragonfly_energy.opendss.lib.wires

"""Library of wires that come standard with dragonfly."""
import os
import json
from ..wire import Wire


# load the  defaults
_wires = {}
_data_path = os.path.join(os.path.dirname(__file__), 'extended_catalog.json')
with open(_data_path) as json_file:
    _default_data = json.load(json_file)['WIRES']['WIRES CATALOG']
for _t_dict in _default_data:
    _t_obj = Wire.from_electrical_database_dict(_t_dict)
    _t_obj.lock()
    _wires[_t_dict['nameclass']] = _t_obj

WIRES = tuple(_wires.keys())


[docs]def wire_by_identifier(wire_identifier): """Get wire properties from the library given the identifier. Args: wire_identifier: A text string for the identifier of the wire. """ try: return _wires[wire_identifier] except KeyError: raise ValueError( '"{}" was not found in the wire library.'.format(wire_identifier))