.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/BrodyHopfield.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_BrodyHopfield.py: Spike synchronization through subthreshold oscillation ------------------------------------------------------ This script reproduces the spike synchronization behavior of integrate-and-fire neurons in response to a subthreshold oscillation. This phenomenon is shown in Fig. 1 of [1]_ Neurons receive a weak 35 Hz oscillation, a gaussian noise current and an increasing DC. The time-locking capability is shown to depend on the input current given. The result is then plotted using matplotlib. All parameters are taken from the above paper. References ~~~~~~~~~~ .. [1] Brody CD and Hopfield JJ (2003). Simple networks for spike-timing-based computation, with application to olfactory processing. Neuron 37, 843-852. .. GENERATED FROM PYTHON SOURCE LINES 46-47 First, we import all necessary modules for simulation, analysis, and plotting. .. GENERATED FROM PYTHON SOURCE LINES 47-52 .. code-block:: default import nest import nest.raster_plot import matplotlib.pyplot as plt .. GENERATED FROM PYTHON SOURCE LINES 53-54 Second, the simulation parameters are assigned to variables. .. GENERATED FROM PYTHON SOURCE LINES 54-72 .. code-block:: default N = 1000 # number of neurons bias_begin = 140. # minimal value for the bias current injection [pA] bias_end = 200. # maximal value for the bias current injection [pA] T = 600 # simulation time (ms) # parameters for the alternating-current generator driveparams = {'amplitude': 50., 'frequency': 35.} # parameters for the noise generator noiseparams = {'mean': 0.0, 'std': 200.} neuronparams = {'tau_m': 20., # membrane time constant 'V_th': 20., # threshold potential 'E_L': 10., # membrane resting potential 't_ref': 2., # refractory period 'V_reset': 0., # reset potential 'C_m': 200., # membrane capacitance 'V_m': 0.} # initial membrane potential .. GENERATED FROM PYTHON SOURCE LINES 73-75 Third, the nodes are created using ``Create``. We store the returned handles in variables for later reference. .. GENERATED FROM PYTHON SOURCE LINES 75-81 .. code-block:: default neurons = nest.Create('iaf_psc_alpha', N) sr = nest.Create('spike_recorder') noise = nest.Create('noise_generator') drive = nest.Create('ac_generator') .. GENERATED FROM PYTHON SOURCE LINES 82-83 Set the parameters specified above for the generators using ``set``. .. GENERATED FROM PYTHON SOURCE LINES 83-87 .. code-block:: default drive.set(driveparams) noise.set(noiseparams) .. GENERATED FROM PYTHON SOURCE LINES 88-91 Set the parameters specified above for the neurons. Neurons get an internal current. The first neuron additionally receives the current with amplitude `bias_begin`, the last neuron with amplitude `bias_end`. .. GENERATED FROM PYTHON SOURCE LINES 91-96 .. code-block:: default neurons.set(neuronparams) neurons.I_e = [(n * (bias_end - bias_begin) / N + bias_begin) for n in range(1, len(neurons) + 1)] .. GENERATED FROM PYTHON SOURCE LINES 97-99 Connect alternating current and noise generators as well as `spike_recorder`s to neurons .. GENERATED FROM PYTHON SOURCE LINES 99-104 .. code-block:: default nest.Connect(drive, neurons) nest.Connect(noise, neurons) nest.Connect(neurons, sr) .. GENERATED FROM PYTHON SOURCE LINES 105-106 Simulate the network for time `T`. .. GENERATED FROM PYTHON SOURCE LINES 106-109 .. code-block:: default nest.Simulate(T) .. GENERATED FROM PYTHON SOURCE LINES 110-111 Plot the raster plot of the neuronal spiking activity. .. GENERATED FROM PYTHON SOURCE LINES 111-114 .. code-block:: default nest.raster_plot.from_device(sr, hist=True) plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.000 seconds) .. _sphx_glr_download_auto_examples_BrodyHopfield.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: BrodyHopfield.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: BrodyHopfield.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_