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

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

Summary

Details

Page properties
Content
... ... @@ -334,27 +334,78 @@
334 334  population2.set(i_offset=0)
335 335  population1.record("v")
336 336  population2.record("v")(%%)
337 -(% style="color:#e74c3c" %)connection_algorithm = sim.FixedProbabilityConnector(p=0.5)
337 +(% style="color:#000000" %)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:#000000" %)data1_v = population1.get_data().segments[0].filter(name='v')[0]
342 -data2_v = population1.get_data().segments[0].filter(name='v')[0]
343 -Figure(
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 344   Panel(
345 - data_v[:, 0:5],
346 - xticks=True, xlabel="Time (ms)",
347 - yticks=True, ylabel="Membrane potential (mV)"
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 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()
349 349  
358 +**Run script in terminal, show figure**
359 +)))
350 350  
351 -(% style="color:#000000" %) title="Response of first five neurons with heterogeneous parameters",
352 - annotations="Simulated with NEST"
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]
388 +Figure(
389 + Panel(
390 + data1_v[:, 0:5],
391 + xticks=True,
392 + yticks=True, ylabel="Membrane potential (mV)"
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" %)"
353 353  ).show()
354 354  
355 355  **Run script in terminal, show figure**
356 356  )))
357 357  
406 +(% class="wikigeneratedid" %)
407 +As you would hope, NEST and NEURON give essentially identical results.
408 +
358 358  (% class="wikigeneratedid" id="HSummary28Inthistutorial2CyouhavelearnedtodoX202629" %)
359 359  (% class="small" %)**Summary (In this tutorial, you have learned to do X…)**
360 360