@@ -21,7 +21,7 @@ def test_MSTDPETSynapse1():
21
21
# ---- build a simple Poisson cell system ----
22
22
with Context (name ) as ctx :
23
23
a = MSTDPETSynapse (
24
- name = "a" , shape = (1 ,1 ), A_plus = 1. , A_minus = 1. , eta = 0. , key = subkeys [0 ]
24
+ name = "a" , shape = (1 ,1 ), A_plus = 1. , A_minus = 1. , eta = 0.1 , key = subkeys [0 ]
25
25
)
26
26
27
27
#"""
@@ -49,7 +49,7 @@ def test_MSTDPETSynapse1():
49
49
ctx.add_command(wrap_command(jit(ctx.evolve)), name="adapt")
50
50
"""
51
51
52
- a .weights .set (jnp .ones ((1 , 1 )))
52
+ a .weights .set (jnp .ones ((1 , 1 )) * 0.75 )
53
53
54
54
in_spike = jnp .ones ((1 , 1 ))
55
55
in_trace = jnp .ones ((1 , 1 ,)) * 1.25
@@ -58,6 +58,7 @@ def test_MSTDPETSynapse1():
58
58
r_neg = - jnp .ones ((1 , 1 ))
59
59
r_pos = jnp .ones ((1 , 1 ))
60
60
61
+ #print(a.weights.value)
61
62
ctx .reset ()
62
63
a .preSpike .set (in_spike * 0 )
63
64
a .preTrace .set (in_trace )
@@ -66,8 +67,9 @@ def test_MSTDPETSynapse1():
66
67
a .modulator .set (r_pos )
67
68
ctx .run (t = 1. * dt , dt = dt )
68
69
ctx .adapt (t = 1. * dt , dt = dt )
69
- #print(a.dWeights.value)
70
- assert_array_equal (a .dWeights .value , jnp .array ([[1.25 ]]))
70
+ ctx .adapt (t = 1. * dt , dt = dt )
71
+ #print(a.weights.value)
72
+ assert_array_equal (a .weights .value , jnp .array ([[0.875 ]]))
71
73
72
74
ctx .reset ()
73
75
a .preSpike .set (in_spike * 0 )
@@ -77,7 +79,8 @@ def test_MSTDPETSynapse1():
77
79
a .modulator .set (r_neg )
78
80
ctx .run (t = 1. * dt , dt = dt )
79
81
ctx .adapt (t = 1. * dt , dt = dt )
80
- #print(a.dWeights.value)
81
- assert_array_equal (a .dWeights .value , jnp .array ([[- 1.25 ]]))
82
+ ctx .adapt (t = 1. * dt , dt = dt )
83
+ #print(a.weights.value)
84
+ assert_array_equal (a .weights .value , jnp .array ([[0.75 ]]))
82
85
83
- # test_MSTDPETSynapse1()
86
+ test_MSTDPETSynapse1 ()
0 commit comments