Kv1p5_MA2020_GrC#

class braincell.channel.Kv1p5_MA2020_GrC(size, g_max=Quantity(0.00013195, 'S / cm^2'), gnonspec=Quantity(0., 'S / cm^2'), temp=Quantity(310.15, 'K'), Tauact=1.0, Tauinactf=1.0, Tauinacts=1.0, name=None)#

Granule-cell Kv1.5 channel with two current owners.

This channel imports the two-current form of the NEURON mechanism Kv1p5_MA20_GrC.mod. The relevant source lines are quoted here because the mechanism depends on potassium and sodium concentrations while writing two separate current variables:

"USEION k READ ek,ki,ko WRITE ik"
"USEION na READ nai,nao"
"USEION no WRITE ino VALENCE 1: nonspecific cation current"
"ik = gKur*(0.1 + 1/(1 + exp(-(v - 15)/13)))*m*m*m*n*u*(v - ek)"
"ino=gnonspec*(0.1 + 1/(1 + exp(-(v - 15)/13)))*m*m*m*n*u*(v - z*log((nao+ko)/(nai+ki)))"
Parameters:
  • size (int | Sequence[int] | integer | Sequence[integer]) – Channel state shape.

  • g_max (Array | ndarray | bool | number | bool | int | float | complex | Quantity | Callable) – Maximum potassium conductance. This is the BrainCell name for the NEURON gKur parameter.

  • gnonspec (Array | ndarray | bool | number | bool | int | float | complex | Quantity | Callable) – Maximum nonspecific cation conductance for the ino component.

  • temp (Array | ndarray | bool | number | bool | int | float | complex | Quantity) – Absolute temperature used by the q10 and nonspecific reversal expressions.

  • Tauact (Array | ndarray | bool | number | bool | int | float | complex | Quantity | Callable) – Activation time-scale multiplier.

  • Tauinactf (Array | ndarray | bool | number | bool | int | float | complex | Quantity | Callable) – Fast inactivation time-scale multiplier.

  • Tauinacts (Array | ndarray | bool | number | bool | int | float | complex | Quantity | Callable) – Slow inactivation time-scale multiplier.

  • name (str | None) – Optional module name.

Notes

BrainCell keeps current(...) as the total membrane-current API. The special multi-owner case is exposed through current_components(), which returns {"k": ik, "no": ino}.

Sodium is a read-only concentration dependency for the nonspecific reversal expression and is not a current owner. No is a placeholder ion that receives the nonspecific current contribution.

BrainCell channel currents use the package convention conductance * (E - V). The quoted NEURON source assigns (v - E) currents, so this implementation uses the sign convention already used by the surrounding BrainCell channel catalogue.

current(V, K, Na, No)[source]#

Return total Kv1.5 membrane current.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information used by the ik component.

  • Na (IonInfo) – Sodium ion information read by the nonspecific reversal expression.

  • No (IonInfo) – Nonspecific current-owner placeholder information.

Returns:

Sum of the potassium ik and nonspecific ino components.

Return type:

array-like

Notes

This method remains the value consumed by the membrane voltage solver. Owner-specific ion totals use current_components() instead.

current_components(V, K, Na, No)[source]#

Return owner-specific Kv1.5 current components.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information supplying E, Ci, and Co.

  • Na (IonInfo) – Sodium ion information supplying Ci and Co for the nonspecific reversal expression.

  • No (IonInfo) – Nonspecific current-owner placeholder. It is accepted for root-type compatibility and ownership but does not enter the NEURON formula directly.

Returns:

Mapping "k" to the potassium component and "no" to the nonspecific cation component.

Return type:

dict

Notes

The NEURON source computes:

"ik = gKur*(0.1 + 1/(1 + exp(-(v - 15)/13)))*m*m*m*n*u*(v - ek)"
"ino=gnonspec*(0.1 + 1/(1 + exp(-(v - 15)/13)))*m*m*m*n*u*(v - z*log((nao+ko)/(nai+ki)))"

BrainCell uses (E - V) current signs. The nonspecific reversal expression is therefore expanded directly in this method as z * log((nao + ko) / (nai + ki)) and used in gnonspec * gates * (E_no - V).

f_m_inf(V, K, Na, No)[source]#

Return the steady-state activation gate value.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information. The inherited gate expression only depends on voltage.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Steady-state value for the m activation gate.

Return type:

array-like

Notes

The sodium and nonspecific arguments are intentionally unused: this special channel reads them for current routing and nonspecific reversal, while the inherited Kv1.5 gate kinetics remain potassium-channel kinetics.

f_m_tau(V, K, Na, No)[source]#

Return the activation gate time constant.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information. The inherited gate expression only depends on voltage.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Time constant for the m activation gate.

Return type:

array-like

Notes

The extra ion arguments keep the method compatible with the JointTypes[Potassium, Sodium, NonSpecific] channel binding.

f_n_inf(V, K, Na, No)[source]#

Return the steady-state fast-inactivation gate value.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information. The inherited gate expression only depends on voltage.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Steady-state value for the n inactivation gate.

Return type:

array-like

Notes

The sodium and nonspecific arguments are intentionally unused by the gate equation.

f_n_tau(V, K, Na, No)[source]#

Return the fast-inactivation gate time constant.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information. The inherited gate expression only depends on voltage.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Time constant for the n inactivation gate.

Return type:

array-like

Notes

The extra ion arguments keep the method compatible with the multi-ion channel root type.

f_u_inf(V, K, Na, No)[source]#

Return the steady-state slow-inactivation gate value.

Parameters:
  • V (array-like) – Membrane potential.

  • K (IonInfo) – Potassium ion information. The inherited gate expression only depends on voltage.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Steady-state value for the u inactivation gate.

Return type:

array-like

Notes

The sodium and nonspecific arguments are intentionally unused by the gate equation.

f_u_tau(V, K, Na, No)[source]#

Return the slow-inactivation gate time constant.

Parameters:
  • V (array-like) – Membrane potential. Accepted for the standard gate signature.

  • K (IonInfo) – Potassium ion information. Accepted for the standard gate signature.

  • Na (IonInfo) – Sodium ion information. Accepted for joint-ion signature compatibility.

  • No (IonInfo) – Nonspecific ion placeholder. Accepted for joint-ion signature compatibility.

Returns:

Time constant for the u inactivation gate.

Return type:

array-like

Notes

The inherited slow gate has a voltage-independent time constant; all ion arguments are accepted only to match the multi-ion channel binding signature.