def test_linked_triple_linked(): ''' Link to a linked variable that links to a linked variable, all use indices ''' G1 = NeuronGroup(2, 'a : 1') G2 = NeuronGroup(4, 'b : 1 (linked)') G2.b = linked_var(G1.a, index=np.arange(2).repeat(2)) G3 = NeuronGroup(4, 'c: 1 (linked)') G3.c = linked_var(G2.b, index=np.arange(4)[::-1]) G4 = NeuronGroup(8, 'd: 1 (linked)') G4.d = linked_var(G3.c, index=np.arange(4).repeat(2)) G1.a = np.arange(2)*0.1 assert_equal(G4.d[:], np.arange(2).repeat(2)[::-1].repeat(2)*0.1)