Skip to content

Commit 7615100

Browse files
committed
fix some test failures for pyNN.brian2
1 parent 0a6d08b commit 7615100

1 file changed

Lines changed: 9 additions & 15 deletions

File tree

pyNN/brian2/cells.py

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
ms = brian2.ms
1919
nA = brian2.nA
2020
uS = brian2.uS
21+
nS = brian2.nS
2122
Hz = brian2.Hz
2223
nF = brian2.nF
2324
ampere = brian2.amp
@@ -129,21 +130,14 @@ def __call__(self, P, spikes):
129130
class AdaptiveNeuronGroup(BaseNeuronGroup):
130131

131132
def __init__(self, n, equations, **parameters):
132-
#threshold = 'v >= {}*mV'.format(parameters["v_thresh"][0]*1000)
133133
thresh = parameters["v_thresh"][0]
134134
Vcut = thresh + parameters["delta_T"][0] * 5
135-
threshold = 'v > {}*mV'.format(Vcut*1000)
135+
threshold = 'v > {}*mV'.format(Vcut / mV)
136136
self._resetvalue = parameters.pop('v_reset')[0]
137137
self._bvalue = parameters.pop('b')[0]
138-
# period = simplify(parameters['tau_refrac'])*1000 ##### problem here with the refractory
139138
self._refracvalue = parameters.pop('tau_refrac')[0]
140-
reset = 'v = {}*mV; w+={}* amp'.format(self._resetvalue*10**3, self._bvalue)
141-
# refractory=None
139+
reset = 'v = {}*mV; w+={}*amp'.format(self._resetvalue / mV, self._bvalue / ampere)
142140
refractory = self._refracvalue
143-
# refractory=period
144-
# parameters['tau_refrac']=parameters['tau_refrac']/ms
145-
146-
#refractory = 0*ms
147141
BaseNeuronGroup.__init__(self, n, equations,
148142
threshold=threshold, reset=reset, refractory=refractory,
149143
method="rk2", **parameters)
@@ -169,7 +163,7 @@ def tau_refrac(self, tau_refrac_value):
169163
@v_reset.setter
170164
def v_reset(self, resetvalue):
171165
#self._resetvalue = resetvalue * mV
172-
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue)
166+
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue / mV)
173167

174168

175169
class AdaptiveReset2(object):
@@ -187,13 +181,13 @@ def __call__(self, P, spikes):
187181
class AdaptiveNeuronGroup2(BaseNeuronGroup):
188182

189183
def __init__(self, n, equations, **parameters):
190-
threshold = 'v >= {}*mV'.format(parameters["v_thresh"][0]*1000)
184+
threshold = 'v >= {}*mV'.format(parameters["v_thresh"][0] / mV)
191185
self._resetvalue = parameters.pop('v_reset')[0]
192186
self._q_rvalue = parameters.pop('q_r')[0] * 10**9
193187
self._q_svalue = parameters.pop('q_s')[0] * 10**9
194188
self._refracvalue = parameters.pop('tau_refrac')[0]
195189
reset = 'v = {}*mV; g_r+= {}*nS; g_s+={}*nS'.format(
196-
self._resetvalue*1000, self._q_rvalue, self._q_svalue)
190+
self._resetvalue / mV, self._q_rvalue / nS, self._q_svalue / nS)
197191
refractory = self._refracvalue
198192
'''
199193
threshold = brian2.SimpleFunThreshold(self.check_threshold)
@@ -235,7 +229,7 @@ def tau_refrac(self, tau_refrac_value):
235229
@v_reset.setter
236230
def v_reset(self, resetvalue):
237231
#self._resetvalue = resetvalue * mV
238-
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue)
232+
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue / mV)
239233

240234
'''
241235
tau_refrac = _new_property('', '_refractory_array', ms)
@@ -271,7 +265,7 @@ def __init__(self, n, equations, **parameters):
271265
threshold = 'v >= 30*mV'
272266
self._resetvalue = parameters.pop('v_reset')[0]
273267
self._dvalue = parameters.pop('d')[0]
274-
reset = 'v = {}*mV; u+={}*mV/ms'.format(self._resetvalue*1000, self._dvalue)
268+
reset = 'v = {}*mV; u+={}*mV/ms'.format(self._resetvalue / mV, self._dvalue / (mV/ms))
275269
'''
276270
reset = brian2.SimpleCustomRefractoriness(
277271
IzhikevichReset(parameters['v_reset'],
@@ -300,7 +294,7 @@ def d(self):
300294
@v_reset.setter
301295
def v_reset(self, resetvalue):
302296
#self._resetvalue = resetvalue * mV
303-
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue)
297+
self.event_codes['spike'] = 'v = {}*mV'.format(resetvalue / mV)
304298

305299

306300
class PoissonGroup(brian2.PoissonGroup):

0 commit comments

Comments
 (0)