# izhikevich_tutorial_neuron # ########################## # # # Copyright statement # +++++++++++++++++++ # # This file is part of NEST. # # Copyright (C) 2004 The NEST Initiative # # NEST is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # # NEST is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with NEST. If not, see . # model izhikevich_tutorial_neuron: state: v mV = -65 mV # Membrane potential in mV u real = 0 # Membrane potential recovery variable equations: v' = (.04 * v * v / mV + 5 * v + (140 - u) * mV + (I_e * GOhm)) / ms u' = a * (b * v - u * mV) / (mV * ms) parameters: a real = .02 # describes time scale of recovery variable b real = .2 # sensitivity of recovery variable c mV = -65 mV # after-spike reset value of v d real = 8. # after-spike reset value of u input: spikes <- spike I_e pA <- continuous output: spike update: integrate_odes() onReceive(spikes): # add synaptic current v += spikes * mV * s onCondition(v >= 30mV): # threshold crossing v = c u += d emit_spike()