diff --git a/kwant/tests/test_builder.py b/kwant/tests/test_builder.py index b31c0dc09cf18cf96099aac1e69e33ebaf23b0c3..bc61f971cd644a20abea135e97a5321def8f57f1 100644 --- a/kwant/tests/test_builder.py +++ b/kwant/tests/test_builder.py @@ -1085,6 +1085,15 @@ def test_ModesLead_and_SelfEnergyLead(): ts2 = [kwant.greens_function(fsyst, e).transmission(1, 0) for e in energies] assert_almost_equal(ts2, ts) + # Append a virtual (=zero self energy) lead. This should have no effect. + # Also verifies that the selfenergy callback function can return exotic + # arraylikes. + syst.leads.append(builder.SelfEnergyLead( + lambda *args: list(ta.zeros((L, L))), interface)) + fsyst = syst.finalized() + ts2 = [kwant.greens_function(fsyst, e).transmission(1, 0) for e in energies] + assert_almost_equal(ts2, ts) + def test_site_pickle(): site = kwant.lattice.square()(0, 0)