Parameters & Units

All physical quantities in the codebase use the same unit system: ms for time, mV for voltage, nF for capacitance, μS for conductance, nA for current, Hz for rates. Time fields carry an explicit _ms suffix (sim_ms, ref_ms_E, tau_gaba); CLI flags follow the same convention (—t-ms 600). A Δt of 1 means 1 ms, not 1 s.

Quantities

QuantityUnitTypical valueVariable
Integration stepms0.25dt, DT_MS
Simulation lengthms600sim_ms
Membrane time constantms20 (E), 5 (I)tau_m_E, tau_m_I
Refractory periodms3 (E), 1.5 (I)ref_ms_E, ref_ms_I
AMPA decayms2tau_ampa
GABA decayms9tau_gaba
Resting / leak potentialmV−65E_L
Spike thresholdmV−50V_th
Reset potentialmV−65V_reset
AMPA reversalmV0E_e
GABA reversalmV−80E_i
Membrane capacitancenF1.0 (E), 0.5 (I)C_m_E, C_m_I
Leak conductanceμS0.05 (E), 0.1 (I)g_L_E, g_L_I
External driveμS0.0006 (async), 0.003 (PING)t_e_async, t_e_ping
Input current (CUBA)nA20 per spikeinput_scale
CUBA weight stdnA32W_STD_CUBA
Max input rateHz25max_rate_hz
Population firing rateHz20–80r_E, r_I
Gamma frequencyHz30–80f_0

COBA / PING biophysical constants

Used by COBA and PING on the model ladder. Values follow neuroscience conventions (cf. Dayan & Abbott, Gerstner Neuronal Dynamics); the E:I asymmetry in τm,Cm,gL,τref\tau_m, C_m, g_L, \tau_{\text{ref}} produces the timescale separation that makes PING dynamics possible.

ParameterE populationI population
τm\tau_m (ms)205
CmC_m (nF)1.00.5
gLg_L (µS)0.050.1
τref\tau_{\text{ref}} (ms)31.5
ELE_L (mV)−65−65
VthV_{\text{th}} (mV)−50−50
VresetV_{\text{reset}} (mV)−65−65
EeE_e (mV, reversal)00
EiE_i (mV, reversal)−80−80

Synapse time constants: τAMPA=2\tau_{\text{AMPA}} = 2 ms (excitation), τGABA=9\tau_{\text{GABA}} = 9 ms (inhibition). These set the ceiling on PING’s Δt-stability: once ΔtτGABA\Delta t \gtrsim \tau_{\text{GABA}} the E→I→E loop cannot complete within one step.

Internal consistency

The chosen units are self-consistent — no conversion factors appear in the integration code. Two equations carry the whole system.

The membrane time constant is τ=C/g\tau = C / g. With CC in nF and gg in μS,

τ[ms]=C[nF]g[μS]\tau_{[\text{ms}]} = \frac{C_{[\text{nF}]}}{g_{[\text{μS}]}}

so Cm=1C_m = 1 nF and gL=0.05g_L = 0.05 μS give τm=20\tau_m = 20 ms directly.

The LIF voltage update is dv=(Δt/C)(gL(vEL)+I)dv = (\Delta t / C)(-g_L(v - E_L) + I). With Δt\Delta t in ms, CC in nF, v,Ev, E in mV, gg in μS, and II in nA,

dv[mV]=Δt[ms]C[nF]I[nA]dv_{[\text{mV}]} = \frac{\Delta t_{[\text{ms}]}}{C_{[\text{nF}]}} \cdot I_{[\text{nA}]}

because ms·nA / nF = mV exactly.

Conductance-current products share the same ledger: g(vE)g(v - E) is μS × mV = nA, so synaptic currents fold into II alongside any direct input current without a scale factor.

Why not SI?

Pure SI (F, S, V, A, s) forces every value to a large negative exponent — Cm=109C_m = 10^{-9} F, gL=5×108g_L = 5 \times 10^{-8} S, Δt=2.5×104\Delta t = 2.5 \times 10^{-4} s. The neuroscience convention (ms, mV, nF, μS, nA) keeps every typical value between 10310^{-3} and 10210^2, which makes numerical debugging and human intuition faster. The tradeoff is that readers have to trust the unit consistency rather than verify it by plugging into SI formulas — this page is here so that trust is auditable.