Skip to content
Snippets Groups Projects
Commit 82b3ead5 authored by soehrl's avatar soehrl Committed by Sam Yates
Browse files

Commit our example working and plotting nicely: (#598)

Pull of Arborathon 2018 work on nesci+contra/arbor interop.
parent c82a7515
No related branches found
No related tags found
No related merge requests found
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
import numpy as np import numpy as np
import time
import pycontra import pycontra
import pynesci import pynesci
...@@ -26,28 +26,51 @@ ax1.set_ylabel("voltage") ...@@ -26,28 +26,51 @@ ax1.set_ylabel("voltage")
counter = 0 counter = 0
def generate_neuron_idx_for_hackaton():
ids = []
for gid in range(10):
for lid in [0,1]:
ids.append(str(gid) + " " + str(lid))
return ids
data_received = False data_received = False
time_out_counter = 0
while True: while True:
time.sleep(0.1)
nodes = receiver.Receive() nodes = receiver.Receive()
if len(nodes) is 0:
if data_received:
if time_out_counter > 50:
plt.show()
break
time_out_counter = time_out_counter + 1
continue
else:
data_received = True
time_out_counter = 0
for node in nodes: for node in nodes:
master_node = pycontra.Node() master_node = pycontra.Node()
master_node.Update(node) master_node.Update(node)
multimeter.SetNode(node) multimeter.SetNode(node)
#print ( master_node.to_json("json", 2, 0, " ", "\n")) #print ( master_node.to_json("json", 2, 0, " ", "\n"))
timesteps = multimeter.GetTimesteps() timesteps = multimeter.GetTimesteps()
print ("nr_timesteps: ", len(timesteps)) print ("nr_timesteps: ", len(timesteps))
attribute = 'voltage' attribute = 'voltage'
neuron_ids = [] neuron_ids = []
if len(timesteps) > 0: if len(timesteps) > 0:
neuron_ids = multimeter.GetNeuronIds(timesteps[0], attribute) neuron_ids = multimeter.GetNeuronIds(timesteps[0], attribute)
nr_lines = len(neuron_ids) nr_lines = 20
print ("nr_lines", nr_lines) for idx, neuron_id in enumerate(generate_neuron_idx_for_hackaton()):
for idx, neuron_id in enumerate(neuron_ids):
values = multimeter.GetTimeSeriesData(attribute, neuron_id) values = multimeter.GetTimeSeriesData(attribute, neuron_id)
times = [float(t) for t in timesteps] times = [float(t) for t in timesteps]
...@@ -58,5 +81,4 @@ while True: ...@@ -58,5 +81,4 @@ while True:
fig.canvas.draw() fig.canvas.draw()
counter = counter + 1 counter = counter + 1
print(counter)
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment