Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
gitmv committed May 4, 2023
2 parents 214ce33 + a99bbc1 commit e1da5fb
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 15 deletions.
12 changes: 4 additions & 8 deletions NetworkBehavior/Recorder/Recorder.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,15 +171,11 @@ def get_data_v(self, variable, parent_obj):
synapse = parent_obj

data = eval(self.compiled[variable])
indices = np.where(data != 0)[0]

if len(indices) > 0:
result = []
for i in indices:
result.append([parent_obj.iteration, i])
return result
else:
return None
indices = np.where(data != 0)
iteration = np.ones_like(indices[0]) * parent_obj.iteration

return np.stack((iteration, *indices), axis=1)

def save_data_v(self, data, variable):
if len(self.variables[variable]) == 0:
Expand Down
8 changes: 4 additions & 4 deletions NetworkCore/Base_Attachable_Modules.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ def remove_behavior(self, key_tag_behavior_or_type):
remove_keys.append(key)
for key in remove_keys:
b=self.behavior.pop(key)
self.network._remove_behavior_from_sorted_execution_list(self, b)
self.network._remove_behavior_from_sorted_execution_list(key, self, b)

def set_behaviors(self, tag, enabeled):
if enabeled:
Expand Down Expand Up @@ -202,12 +202,12 @@ def get_nparray(self, dim):
def get_buffer_mat(self, dim, size):
return np.array([self.get_nparray(dim) for _ in range(size)])

def buffer_roll(self, mat, new=None):
def buffer_roll(self, mat, new=None, counter=False):
#return np.roll(mat, 1, axis=0)
mat[1:len(mat)] = mat[0:len(mat) - 1]
mat[1-counter : len(mat)-counter] = mat[0+counter : len(mat)-1+counter]

if new is not None:
mat[0]=new
mat[0-counter]=new

return mat

Expand Down
8 changes: 5 additions & 3 deletions NetworkCore/Network.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ class Network(NetworkObjectBase):

def __init__(self, tag=None, behavior={}, settings={}):
self.apply_settings(settings)
super().__init__(tag, self, behavior)

self.NeuronGroups = []
self.SynapseGroups = []
Expand All @@ -26,6 +25,8 @@ def __init__(self, tag=None, behavior={}, settings={}):

self.behavior_timesteps = []
self.sorted_behavior_execution_list = [] #stores (key, beh_parent, behavior) triplets

super().__init__(tag, self, behavior)

# {'dtype':float32, 'syn_dim':DxS}
def apply_settings(self, settings):
Expand All @@ -50,12 +51,13 @@ def _add_behavior_to_sorted_execution_list(self, key, beh_parent, behavior):
self.sorted_behavior_execution_list.insert(insert_indx, (key, beh_parent, behavior))
#print([k for k,_,_ in self.sorted_behavior_execution_list])

def _remove_behavior_from_sorted_execution_list(self, beh_parent, behavior):# removes SINGLE behavior!
def _remove_behavior_from_sorted_execution_list(self, key, beh_parent, behavior):
rm_indx = -1
for i,kpb in enumerate(self.sorted_behavior_execution_list):
k, p, b = kpb
if beh_parent==p and behavior==b:
if key==k and beh_parent==p and behavior==b:
rm_indx = i
break
if rm_indx>-1:
self.sorted_behavior_execution_list.pop(rm_indx)
else:
Expand Down

0 comments on commit e1da5fb

Please sign in to comment.