Pinglab Rythmicity Metric

Lobe–trough contrast across untrained PING coupling strengths, with private- and shared-input null controls.

Abstract

We swept an 11×11 reciprocal-coupling grid in an untrained PING circuit and compared autocorrelation contrast with private- and shared-input null controls. At seed 42, selected diagonal conditions had lobe–trough contrasts 0.000301, 0.268 and 0.989. Coupled conditions generally showed stronger temporal structure, but shared input could also produce elevated contrast without feedback. These single-seed observations do not establish rate invariance or the spiking transition’s bifurcation type.

Results

Coupling-map structure

On either zero-coupling edge the loop was broken: E fired at 168.91 Hz and contrast was 0.000301, while I was silent when E-to-I coupling was zero. The diagonal examples in panels D/E/F had contrasts 0.000301/0.268/0.989. Coupled conditions generally showed stronger temporal structure, although the map was not strictly monotonic (Fig. 1).

Maps of E rate, I rate and lobe\u2013trough contrast over the coupling grid, above three example E/I rasters showing asynchronous firing and increasingly separated volleys.
Figure 1.

(A–C) Per-neuron E rate, I rate and lobe–trough contrast, respectively, across the 11×11 coupling grid; WEIW_{E I} and WIEW_{I E} denote E-to-I and I-to-E coupling strengths. The high I rate on one zero edge is colour-clipped. (D–F) Rasters at the diagonal conditions marked D, E and F in panel C, respectively; E spikes are black and I spikes red. Each raster shows 200 ms from the first 160 E and 48 I neurons. One seed per condition; no uncertainty estimate.

Coupled-grid rasters

Many coupled-interior conditions showed separated volleys, whereas the zero-E-to-I column had silent I neurons and the zero-I-to-E row lacked inhibitory feedback to E (Fig. 2).

E/I rasters at every other coupling-grid coordinate: dense edge activity and separated volleys in much of the coupled interior.
Figure 2.

(A–AJ) E/I rasters at a 6×6 subset of coupling coordinates, ordered row-major from high to low WIEW_{I E} and low to high WEIW_{E I}; the maps above use all 121 conditions. Display windows and neuron subsets match Figure 1; measurements use all neurons over the full post-burn recording.

Coupled-grid autocorrelograms

Edge autocorrelograms remained near chance. In the coupled interior, short-lag clustering, suppression between volleys and later recurrence peaks supplied complementary temporal evidence (Fig. 3).

E-population autocorrelograms at a 6\u00d76 subset of coupling coordinates, with lobe and trough markers and a chance reference.
Figure 3.

(A–AJ) E-population autocorrelograms at the same 6×6 coordinates and in the same row-major coupling order, shown over 0–50 ms. Dotted lines mark the chance reference Acorr=1A_{\text{corr}} = 1; markers locate the selected lobe (▲) and trough (▼) of the smoothed curve. RcontrastR_{\text{contrast}} scores the first lobe and trough, not the later peak’s frequency.

Input-sharing controls

Without an inhibitory loop, the private-input null had a maximum contrast of 0.0392 over 2.00–168.91 Hz. The shared-input null reached 1 at 0.0109 Hz, but that estimate contained only 10 E spikes across the population. At 1.39 Hz its contrast was 0.127. Shared afferents can create short-lag coincidence detected by this score; the sparse extreme also illustrates its finite-sample sensitivity. These single-seed controls do not prove rate invariance or establish rhythmicity from contrast alone (Fig. 4).

Contrast versus measured E firing rate: private-input null values remain small, while the sparsest shared-input nulls show elevated contrast.
Figure 4.

Contrast against measured E firing rate. Black and grey points are the private- and shared-input nulls; red points are the PING coupling grid, including its near-zero edges.

Rate-matched null structure

Shared-input examples showed central coincidence without inhibitory feedback; private-input examples showed smaller contrast and finite-sample fluctuations around chance. Their approximate rate matching did not make rates or spike counts equal (Fig. 5).

Low-rate shared- and private-input null autocorrelograms selected by approximate rate matching, with each actual rate labelled.
Figure 5.

Null autocorrelograms nearest to target E rates of 1, 2.5 and 5 Hz. Shared-input examples (A–C) fired at 1.39/1.39/3.94 Hz; private-input examples (D–F) at 2.00/2.00/3.96 Hz. Within each input type, the first two targets selected the same recording; these are repeated displays, not independent observations.

Methods

  1. Sweep coupling. We simulated untrained PING networks (1,024 E/256 I neurons) at 11×11 combinations of WEI=0W_{E I}=0–3 µS and WIE=0W_{I E}=0–6 µS. Each E neuron received private 100 Hz Poisson input with identity weight 0.5. Settings were: GABA decay 6 ms; E/I reset holds 1.2/0.6 ms; seed 42; one trial; 0.1 ms steps; 1,000 ms duration, discarding the first 100 ms.

  2. Test input sharing. With both couplings zero, we scanned private input at 1/2/5/10/20/40/70/100 Hz and shared input at 8/12/16/20/28/40/60/100 Hz. Shared input used 200 channels, weight 0.2 and 95% initial zeros. Reusing the grid’s 100 Hz private origin gave 136 unique probes.

  3. Measure rates and autocorrelation. Per-neuron rates were post-burn spike counts divided by population size and 0.9 s. For E counts nE[k]n_{E[k]} in Nbin=900N_{\text{bin}}=900 bins of width Δtbin=1\Delta t_{\text{bin}}=1 ms, we calculated

    Acorr(ℓ)=1⟨nE⟩2(Nbin−ℓ)∑k=0Nbin−ℓ−1nE[k]nE[k+ℓ].(1)A_{\text{corr} ( \ell )} = \frac{1}{{\langle n_{E} \rangle}^{2} ( N_{\text{bin}} - \ell )} \sum_{k = 0}^{N_{\text{bin}} - \ell - 1} n_{E [ k ]} n_{E [ k + \ell ]} . \tag{1}

    Here Acorr(ℓ)A_{\text{corr}(\ell)} is normalized autocorrelation, kk indexes bins, ⟨nE⟩\langle n_E\rangle is their mean count, and ℓ=1,…,100\ell=1,\ldots,100 gives lag ℓΔtbin\ell\Delta t_{\text{bin}}. We used zero-padded FFT correlation with overlap and squared-mean normalization: chance reference 1, zero lag excluded.

  4. Calculate lobe–trough contrast. After filling zero lag from lag 1, we smoothed with weights (0.25,0.5,0.25)(0.25,0.5,0.25). We selected the first local minimum from lag 2 and the preceding maximum from lag 1. Their heights AtroughA_{\text{trough}} and AlobeA_{\text{lobe}} define

    Rcontrast=Alobe−AtroughAlobe+Atrough.(2)R_{\text{contrast}} = \frac{A_{\text{lobe}} - A_{\text{trough}}}{A_{\text{lobe}} + A_{\text{trough}}} . \tag{2}

    Contrast RcontrastR_{\text{contrast}} lies in [0,1][0,1] when 0≤Atrough≤Alobe0\le A_{\text{trough}}\le A_{\text{lobe}} and the denominator is positive. Missing troughs or invalid denominators give undefined scores; no trough floor is applied.

Appendix: reading the autocorrelogram

The raw lag product ∑knE[k]nE[k+ℓ]\sum_{k} n_{E [ k ]} n_{E [ k + \ell ]} counts spike pairs separated by ℓ\ell bins. Only Nbin−ℓN_{\text{bin}} - \ell bin pairs exist at that lag: the last ℓ\ell bins have no partner. Dividing by this overlap converts the raw sum into an average product per available pair, removing the taper caused by finite recording length. Dividing again by ⟨nE⟩2{\langle n_{E} \rangle}^{2} places independent firing near Acorr=1A_{\text{corr}} = 1; this is a reference level, not a lower bound.

The Wiener–Khinchin route computes the lag products by zero-padding the count trace, taking its fast Fourier transform (FFT), multiplying by the complex conjugate and inverse-transforming. This costs O(nlog⁡n)O ( n \log n ) for all lags rather than a full O(n2)O ( n^{2} ) direct correlation, where OO denotes asymptotic computational scaling.

A central lobe above chance describes short-lag spike clustering. A later trough can reflect suppression between volleys; a subsequent peak near the period is separate evidence of recurrence. Contrast is zero when its lobe and trough are equal, and reaches one if a positive lobe is paired with a zero trough. It summarizes their relative heights without measuring a stable oscillation frequency. Finite recordings, missing extrema and shared-input coincidence therefore matter when interpreting this scalar alongside rasters and longer-lag structure.

Network diagrams

Reciprocal E/I circuit; illustrative model schematic.
Figure A1. Reciprocal E/I circuit. Illustrative schematic of the documented model; it is not a recovered historical execution bundle or a measurement. XX denotes private or shared excitatory spike inputs, and EE/II excitatory/inhibitory neurons. The same pathways cover the coupling sweep and both input controls; input sharing and coupling strengths differ. WXYW_{XY} labels target XX first and source YY second. Arrowheads show excitation; bars show inhibition. There is no E→E or I→I pathway.

Parameters

Model values are read from original native snapshots through the selected presentation’s compute ancestry. Paired values are E / I. Initializer parent means and SDs describe the original weight distributions, in µS for conductance projections and dimensionless for the current-based readout; they are not measured trained-weight statistics. Missing snapshots or fields are unavailable; current recipes and historical copied tables are not substituted. The recorded configuration identifies the input, numerical and analysis choices of that computation; it does not establish a separate upstream training protocol.

ParameterPrivate inputShared input
Network
E / I neuronsUnavailable / UnavailableUnavailable / Unavailable
Output neuronsUnavailableUnavailable
Neurons
Capacitance, E / I (nF)Unavailable / UnavailableUnavailable / Unavailable
Leak conductance, E / I (µS)Unavailable / UnavailableUnavailable / Unavailable
Resting voltage, E / I (mV)Unavailable / UnavailableUnavailable / Unavailable
Threshold, E / I (mV)Unavailable / UnavailableUnavailable / Unavailable
Reset, E / I (mV)Unavailable / UnavailableUnavailable / Unavailable
Refractory period, E / IUnavailable / UnavailableUnavailable / Unavailable
Synapses and weights
Input→E synapseUnavailable / UnavailableUnavailable / Unavailable
E→I synapseUnavailable / UnavailableUnavailable / Unavailable
I→E synapseUnavailable / UnavailableUnavailable / Unavailable
E→Output synapseUnavailable / UnavailableUnavailable / Unavailable
Input→E initializer parent mean / SDUnavailable / UnavailableUnavailable / Unavailable
E→I initializer parent mean / SDUnavailable / UnavailableUnavailable / Unavailable
I→E initializer parent mean / SDUnavailable / UnavailableUnavailable / Unavailable
E→Output initializer parent mean / SDUnavailable / UnavailableUnavailable / Unavailable
Native parameter stageUnavailableUnavailable
Input and simulation
Timestep (ms)UnavailableUnavailable
Duration (ms)10001000
Evaluation samplesUnavailableUnavailable
Seeds4242
Input rate (Hz)100100
Post-burn exclusion (ms)100100
Readout and training
Output neuron modelUnavailableUnavailable
EpochsUnavailableUnavailable
Checkpoint roleUnavailableUnavailable
Checkpoint purposeUnavailableUnavailable
Analysis
Frequency search (Hz)UnavailableUnavailable
Count-bin width (ms)11
Autocorrelation maximum lag (ms)100100

Dataset

Upstream: —

Downstream: exp110 — Manuscript

Current runset

RunDateDurationSizeEvidenceStorageRan onVerification
exp054-r017-present3s783.2 KBCurrentR2LocalLocal: absent; R2: catalog-verified
exp054-r016-analyse4s711.2 KBCurrentR2LocalLocal: absent; R2: catalog-verified
exp054-r015-compute7m 37s11.3 MBCurrentR2LocalLocal: absent; R2: catalog-verified