WangBuzsakiHH#
- class brainpy.dyn.WangBuzsakiHH(size, sharding=None, keep_size=False, mode=None, name=None, method='exp_auto', init_var=True, ENa=55.0, gNa=35.0, EK=-90.0, gK=9.0, EL=-65, gL=0.1, V_th=20.0, phi=5.0, C=1.0, V_initializer=OneInit(value=-65.0), h_initializer=OneInit(value=0.6), n_initializer=OneInit(value=0.32), noise=None)[source]#
Wang-Buzsaki model [9], an implementation of a modified Hodgkin-Huxley model.
Each model is described by a single compartment and obeys the current balance equation:
\[C_{m} \frac{d V}{d t}=-I_{\mathrm{Na}}-I_{\mathrm{K}}-I_{\mathrm{L}}-I_{\mathrm{syn}}+I_{\mathrm{app}}\]where \(C_{m}=1 \mu \mathrm{F} / \mathrm{cm}^{2}\) and \(I_{\mathrm{app}}\) is the injected current (in \(\mu \mathrm{A} / \mathrm{cm}^{2}\) ). The leak current \(I_{\mathrm{L}}=g_{\mathrm{L}}\left(V-E_{\mathrm{L}}\right)\) has a conductance \(g_{\mathrm{L}}=0.1 \mathrm{mS} / \mathrm{cm}^{2}\), so that the passive time constant \(\tau_{0}=C_{m} / g_{\mathrm{L}}=10 \mathrm{msec} ; E_{\mathrm{L}}=-65 \mathrm{mV}\).
The spike-generating \(\mathrm{Na}^{+}\) and \(\mathrm{K}^{+}\) voltage-dependent ion currents \(\left(I_{\mathrm{Na}}\right.\) and \(I_{\mathrm{K}}\) ) are of the Hodgkin-Huxley type (Hodgkin and Huxley, 1952). The transient sodium current \(I_{\mathrm{Na}}=g_{\mathrm{Na}} m_{\infty}^{3} h\left(V-E_{\mathrm{Na}}\right)\), where the activation variable \(m\) is assumed fast and substituted by its steady-state function \(m_{\infty}=\alpha_{m} /\left(\alpha_{m}+\beta_{m}\right)\) ; \(\alpha_{m}(V)=-0.1(V+35) /(\exp (-0.1(V+35))-1), \beta_{m}(V)=4 \exp (-(V+60) / 18)\). The inactivation variable \(h\) obeys a first-order kinetics:
\[\frac{d h}{d t}=\phi\left(\alpha_{h}(1-h)-\beta_{h} h\right)\]where \(\alpha_{h}(V)=0.07 \exp (-(V+58) / 20)\) and \(\beta_{h}(V)=1 /(\exp (-0.1(V+28)) +1) \cdot g_{\mathrm{Na}}=35 \mathrm{mS} / \mathrm{cm}^{2}\) ; \(E_{\mathrm{Na}}=55 \mathrm{mV}, \phi=5 .\)
The delayed rectifier \(I_{\mathrm{K}}=g_{\mathrm{K}} n^{4}\left(V-E_{\mathrm{K}}\right)\), where the activation variable \(n\) obeys the following equation:
\[\frac{d n}{d t}=\phi\left(\alpha_{n}(1-n)-\beta_{n} n\right)\]with \(\alpha_{n}(V)=-0.01(V+34) /(\exp (-0.1(V+34))-1)\) and \(\beta_{n}(V)=0.125\exp (-(V+44) / 80)\) ; \(g_{\mathrm{K}}=9 \mathrm{mS} / \mathrm{cm}^{2}\), and \(E_{\mathrm{K}}=-90 \mathrm{mV}\).
References
Examples
Here is an example:
import brainpy as bp import matplotlib.pyplot as plt neu = bp.dyn.WangBuzsakiHH(1, ) inputs = bp.inputs.ramp_input(.1, 1, 700, 100, 600, ) runner = bp.DSRunner(neu, monitors=['V']) runner.run(inputs=inputs) plt.plot(runner.mon['ts'], runner.mon['V']) plt.legend(['Membrane potential/mA', loc='upper right') plt.tight_layout() plt.show()
- Parameters:
ENa (float, ArrayType, Initializer, callable) – The reversal potential of sodium. Default is 50 mV.
gNa (float, ArrayType, Initializer, callable) – The maximum conductance of sodium channel. Default is 120 msiemens.
EK (float, ArrayType, Initializer, callable) – The reversal potential of potassium. Default is -77 mV.
gK (float, ArrayType, Initializer, callable) – The maximum conductance of potassium channel. Default is 36 msiemens.
EL (float, ArrayType, Initializer, callable) – The reversal potential of learky channel. Default is -54.387 mV.
gL (float, ArrayType, Initializer, callable) – The conductance of learky channel. Default is 0.03 msiemens.
V_th (float, ArrayType, Initializer, callable) – The threshold of the membrane spike. Default is 20 mV.
C (float, ArrayType, Initializer, callable) – The membrane capacitance. Default is 1 ufarad.
phi (float, ArrayType, Initializer, callable) – The temperature regulator constant.
V_initializer (ArrayType, Initializer, callable) – The initializer of membrane potential.
h_initializer (ArrayType, Initializer, callable) – The initializer of h channel.
n_initializer (ArrayType, Initializer, callable) – The initializer of n channel.
method (str) – The numerical integration method.
name (str) – The group name.