Skip to content

Commit a624fa4

Browse files
committed
[fix] fix #287
1 parent 1c34bd5 commit a624fa4

2 files changed

Lines changed: 22 additions & 1 deletion

File tree

‎brainpy/dyn/base.py‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,8 @@ def register_delay(
182182
elif delay.num_delay_step - 1 < max_delay_step:
183183
self.global_delay_data[identifier][0].reset(delay_target, max_delay_step, initial_delay_data)
184184
else:
185-
self.global_delay_data[identifier] = (None, delay_target)
185+
if identifier not in self.global_delay_data:
186+
self.global_delay_data[identifier] = (None, delay_target)
186187
self.register_implicit_nodes(self.local_delay_vars)
187188
return delay_step
188189

‎brainpy/dyn/tests/test_base.py‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- coding: utf-8 -*-
2+
3+
import unittest
4+
5+
import brainpy as bp
6+
7+
8+
class TestDynamicalSystem(unittest.TestCase):
9+
def test_delay(self):
10+
A = bp.neurons.LIF(1)
11+
B = bp.neurons.LIF(1)
12+
C = bp.neurons.LIF(1)
13+
A2B = bp.synapses.Exponential(A, B, bp.conn.All2All(), delay_step=1)
14+
A2C = bp.synapses.Exponential(A, C, bp.conn.All2All(), delay_step=None)
15+
net = bp.Network(A, B, C, A2B, A2C)
16+
17+
runner = bp.DSRunner(net,)
18+
runner.run(10.)
19+
20+

0 commit comments

Comments
 (0)