Delta function in equations of Neuron

62 views
Skip to first unread message

Huzi Cheng

unread,
Oct 2, 2017, 11:10:12 AM10/2/17
to ANNarchy
Hi all,

I am new to ANNarchy and want to implement a kind of Neuron in which the ODE is like this


The gating variable's rule contains the Dirac delta function and I have no idea about how to implement this in ANNarchy.

Anyone who knows how to do this? I will be grateful for help!

BTW, The full description of this neuron is in the attachment.

45BEAE2C-73B3-4F33-9C69-5A22A7CBD344 copy.pdf

Julien Vitay

unread,
Oct 3, 2017, 6:02:19 AM10/3/17
to ANNarchy
Hi,

the diracs correspond to incoming pre-synaptic spikes. Each spike increases instantaneously the signal s from 1 (but it is multiplied by g_ampa/nmda/gaba), which otherwise decrease using a first order equation (exponential decay).

This is already the expected behavior of spiking networks in ANNarchy, you do not need to implement the dirac function at all. Consider the following standard neuron: 

IF_cond_exp = Neuron(
   
parameters = """
        v_rest = -65.0
        cm  = 1.0
        tau_m  = 20.0
        tau_syn_E = 5.0
        tau_syn_I = 5.0
        e_rev_E = 0.0
        e_rev_I = -70.0
        v_thresh = -50.0
        v_reset = -65.0
        i_offset = 0.0
    """,
   
equations = """
        cm * dv/dt = cm/tau_m*(v_rest -v)   + g_exc * (e_rev_E - v) + g_inh * (e_rev_I - v) + i_offset : exponential, init=-65.0
        tau_syn_E * dg_exc/dt = - g_exc : exponential
        tau_syn_I * dg_inh/dt = - g_inh : exponential
    """,
   
spike = "v > v_thresh",
   
reset = "v = v_reset",
   
refractory = 0.0
)

g_exc and g_inh correspond to excitatory and inhibitory conductances (ampa and gaba in your case). They decrease exponentially with time because of their respective ODE. When you create a projection to this neuron, each pre-synaptic spike will increase instantaneously the respective conductance from their synaptic efficiency (weight). 

So basically, you only need to set the weights of your projection to the values of g_ampa / g_nmda / g_gaba, and directly use g_ampa / g_nmda / g_gaba inside the equation. (Note that g_ampa are reserved keywords, do not define other variables with this name!)

The NMDA synapses are a bit more complex, you can get inspiration from:


Hope that helps!

Best
Julien

Hossan Cheng

unread,
Oct 4, 2017, 12:40:21 PM10/4/17
to ANNarchy, Julien Vitay
Thanks! Your suggestion really helps me! The "functions" in Neuron is a very convenient approach for some specific neurons!

Thanks again!

Hossan Cheng
--
You received this message because you are subscribed to a topic in the Google Groups "ANNarchy" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/annarchy/DojHiZyFoh4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to annarchy+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/annarchy/46e41844-c6be-48d9-8532-52df52eb525f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages