Warning:  Due to planned infrastructure maintenance, the EBRAINS Wiki and EBRAINS Support system will be unavailable for up to three days starting Monday, 14 July. During this period, both services will be inaccessible, and any emails sent to the support address will not be received.

Attention: We are currently experiencing some issues with the EBRAINS Drive. Please bear with us as we fix this issue. We apologise for any inconvenience caused.


Last modified by adavison on 2022/10/04 13:55

From version 13.2
edited by adavison
on 2021/09/30 14:31
Change comment: There is no comment for this version
To version 11.5
edited by adavison
on 2021/09/30 14:20
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -334,78 +334,24 @@
334 334  population2.set(i_offset=0)
335 335  population1.record("v")
336 336  population2.record("v")(%%)
337 -(% style="color:#000000" %)connection_algorithm = sim.FixedProbabilityConnector(p=0.5)
337 +(% style="color:#e74c3c" %)connection_algorithm = sim.FixedProbabilityConnector(p=0.5)
338 338  synapse_type = sim.StaticSynapse(weight=0.5, delay=0.5)
339 339  connections = sim.Projection(population1, population2, connection_algorithm, synapse_type)(%%)
340 340  (% style="color:#000000" %)sim.run(100.0)(%%)
341 -(% style="color:#e74c3c" %)data1_v(% style="color:#000000" %) = population1.get_data().segments[0].filter(name='v')[0](%%)
342 -(% style="color:#e74c3c" %)data2_v = population2.get_data().segments[0].filter(name='v')[0](%%)
343 -(% style="color:#000000" %)Figure(
344 - Panel(
345 - (% style="color:#e74c3c" %)data1_v(% style="color:#000000" %)[:, 0:5],
346 - xticks=True, (% style="color:#e74c3c" %)--xlabel="Time (ms)",--(%%)
347 -(% style="color:#000000" %) yticks=True, ylabel="Membrane potential (mV)"
348 - ),
349 - (% style="color:#e74c3c" %)Panel(
350 - data2_v[:, 0:5],
351 - xticks=True, xlabel="Time (ms)",
352 - yticks=True"
353 - ),(%%)
354 -(% style="color:#000000" %) title="Response of (% style="color:#e74c3c" %)simple network(% style="color:#000000" %)",
355 - annotations="Simulated with NEST"
356 -).show()
357 -
358 -**Run script in terminal, show figure**
359 -)))
360 -
361 -(% class="wikigeneratedid" %)
362 -and there we have it, our simple neuronal network of integrate-and-fire neurons, written in PyNN, simulated with NEST. If you prefer to use the NEURON simulator, PyNN makes this very simple, we import the PyNN-for-NEURON module instead.
363 -
364 -(% class="box infomessage" %)
365 -(((
366 -**Screencast** - current state of editor
367 -\\(% style="color:#000000" %)"""Simple network model using PyNN"""
368 -\\import pyNN.(% style="color:#e74c3c" %)neuron(% style="color:#000000" %) as sim(%%)
369 -(% style="color:#000000" %)from pyNN.utility.plotting import Figure, Panel(%%)
370 -(% style="color:#000000" %)from pyNN.random import RandomDistribution(%%)
371 -(% style="color:#000000" %)sim.setup(timestep=0.1)(%%)
372 -(% style="color:#000000" %)cell_type  = sim.IF_curr_exp(
373 - (% style="color:#e74c3c" %) (% style="color:#000000" %)v_rest=RandomDistribution('normal', {'mu': -65.0, 'sigma': 1.0}),
374 - v_thresh=RandomDistribution('normal', {'mu': -55.0, 'sigma': 1.0}),
375 - v_reset=RandomDistribution('normal', {'mu': -65.0, 'sigma': 1.0}), (%%)
376 -(% style="color:#000000" %) t_refrac=1, tau_m=10, cm=1, i_offset=0.1)(%%)
377 -(% style="color:#000000" %)population1 = sim.Population(100, cell_type, label="Population 1")(%%)
378 -(% style="color:#000000" %)population2 = sim.Population(100, cell_type, label="Population 2")
379 -population2.set(i_offset=0)
380 -population1.record("v")
381 -population2.record("v")(%%)
382 -(% style="color:#000000" %)connection_algorithm = sim.FixedProbabilityConnector(p=0.5)
383 -synapse_type = sim.StaticSynapse(weight=0.5, delay=0.5)
384 -connections = sim.Projection(population1, population2, connection_algorithm, synapse_type)(%%)
385 -(% style="color:#000000" %)sim.run(100.0)(%%)
386 -(% style="color:#000000" %)data1_v = population1.get_data().segments[0].filter(name='v')[0]
387 -data2_v = population2.get_data().segments[0].filter(name='v')[0]
341 +(% style="color:#000000" %)data_v = population1.get_data().segments[0].filter(name='v')[0]
388 388  Figure(
389 389   Panel(
390 - data1_v[:, 0:5],
391 - xticks=True,
344 + data_v[:, 0:5],
345 + xticks=True, xlabel="Time (ms)",
392 392   yticks=True, ylabel="Membrane potential (mV)"
393 393   ),
394 - Panel(
395 - data2_v[:, 0:5],
396 - xticks=True, xlabel="Time (ms)",
397 - yticks=True"
398 - ),(%%)
399 -(% style="color:#000000" %) title="Response of simple network",
400 - annotations="Simulated with (% style="color:#e74c3c" %)NEURON(% style="color:#000000" %)"
348 + title="Response of first five neurons with heterogeneous parameters",
349 + annotations="Simulated with NEST"
401 401  ).show()
402 402  
403 -**Run script in terminal, show figure**
352 +Run script in terminal, show figure
404 404  )))
405 405  
406 -(% class="wikigeneratedid" %)
407 -As you would hope, NEST and NEURON give essentially identical results.
408 -
409 409  (% class="wikigeneratedid" id="HSummary28Inthistutorial2CyouhavelearnedtodoX202629" %)
410 410  (% class="small" %)**Summary (In this tutorial, you have learned to do X…)**
411 411