예제 #1
0
def test_bus_bus_switches():
    net = pp.create_empty_network()
    add_test_bus_bus_switch(net)
    s = net.switch.index[0]
    f, t = net.switch.bus.iloc[0], net.switch.element.iloc[0]

    net.switch.closed.at[s] = True
    mg = create_nxgraph(net)
    assert set(mg.get_edge_data(f, t)) == {("switch", s)}
    assert set(mg.nodes()) == set(net.bus.index)

    net.switch.closed.at[s] = False
    mg = create_nxgraph(net)
    assert mg.get_edge_data(f, t) is None
    assert set(mg.nodes()) == set(net.bus.index)

    mg = create_nxgraph(net, respect_switches=False)
    assert set(mg.get_edge_data(f, t)) == {("switch", s)}
    assert set(mg.nodes()) == set(net.bus.index)

    mg = create_nxgraph(net,
                        respect_switches=False,
                        calc_branch_impedances=True)
    #TODO check R/X/Z values
    par = mg.get_edge_data(f, t, key=("switch", s))
    assert np.isclose(par["r_ohm"], 0)
    assert np.isclose(par["z_ohm"], 0)
    assert np.isclose(par["weight"], 0)
    assert par["path"] == 1
예제 #2
0
def test_bb_switch():
    net = pp.create_empty_network()
    net = add_test_bus_bus_switch(net)
    runpp_with_consistency_checks(net)