class brainpy.dyn.channels.KCa.IAHP_De1994(size, keep_size=False, E=- 95.0, n=2, g_max=10.0, alpha=48.0, beta=0.09, phi=1.0, method='exp_auto', name=None, mode=NormalMode)[source]#

The calcium-dependent potassium current model proposed by (Destexhe, et al., 1994) 1.

Both in vivo (Contreras et al. 1993; Mulle et al. 1986) and in vitro recordings (Avanzini et al. 1989) show the presence of a marked after-hyper-polarization (AHP) after each burst of the RE cell. This slow AHP is mediated by a slow \(Ca^{2+}\)-dependent K+ current (Bal and McCormick 1993). (Destexhe, et al., 1994) adopted a modified version of a model of \(I_{KCa}\) introduced previously (Yamada et al. 1989) that requires the binding of \(nCa^{2+}\) to open the channel

\[(\text { closed })+n \mathrm{Ca}_{i}^{2+} \underset{\beta}{\stackrel{\alpha}{\rightleftharpoons}(\text { open })\]

where \(Ca_i^{2+}\) is the intracellular calcium and \(\alpha\) and \(\beta\) are rate constants. The ionic current is then given by

\[\begin{split}\begin{aligned} I_{AHP} &= g_{\mathrm{max}} p^2 (V - E_K) \\ {dp \over dt} &= \phi {p_{\infty}(V, [Ca^{2+}]_i) - p \over \tau_p(V, [Ca^{2+}]_i)} \\ p_{\infty} &=\frac{\alpha[Ca^{2+}]_i^n}{\left(\alpha[Ca^{2+}]_i^n + \beta\right)} \\ \tau_p &=\frac{1}{\left(\alpha[Ca^{2+}]_i +\beta\right)} \end{aligned}\end{split}\]

where \(E\) is the reversal potential, \(g_{max}\) is the maximum conductance, \([Ca^{2+}]_i\) is the intracellular Calcium concentration. The values \(n=2, \alpha=48 \mathrm{~ms}^{-1} \mathrm{mM}^{-2}\) and \(\beta=0.03 \mathrm{~ms}^{-1}\) yielded AHPs very similar to those RE cells recorded in vivo and in vitro.

  • g_max (float) – The maximal conductance density (\(mS/cm^2\)).

  • E (float) – The reversal potential (mV).



Destexhe, Alain, et al. “A model of spindle rhythmicity in the isolated thalamic reticular nucleus.” Journal of neurophysiology 72.2 (1994): 803-818.

__init__(size, keep_size=False, E=- 95.0, n=2, g_max=10.0, alpha=48.0, beta=0.09, phi=1.0, method='exp_auto', name=None, mode=NormalMode)[source]#


__init__(size[, keep_size, E, n, g_max, ...])


current(V, C_Ca, E_Ca)

dp(p, t, C_Ca)

get_delay_data(identifier, delay_step, *indices)

Get delay data according to the provided delay steps.

load_states(filename[, verbose])

Load the model states.

nodes([method, level, include_self])

Collect all children nodes.

offline_fit(target, fit_record)


online_fit(target, fit_record)


register_delay(identifier, delay_step, ...)

Register delay variable.

register_implicit_nodes(*nodes, **named_nodes)

register_implicit_vars(*variables, ...)

reset(V, C_Ca, E_Ca[, batch_size])

Reset function which reset the whole variables in the model.


Reset local delay variables.

reset_state(V, C_Ca, E_Ca[, batch_size])

Reset function which reset the states in the model.

save_states(filename[, variables])

Save the model states.

train_vars([method, level, include_self])

The shortcut for retrieving all trainable variables.

unique_name([name, type_])

Get the unique name for this object.

update(tdi, V, C_Ca, E_Ca)

The function to specify the updating rule.


Update local delay variables.

vars([method, level, include_self])

Collect all variables in this node and the children nodes.




Mode of the model, which is useful to control the multiple behaviors of the model.


Name of the model.