A 1 mV RMS error model gave 128–178 ms guards for a causal 70–110 Hz filter in five SEEG recordings
We derived an upper bound on later output error after a finite input error in a causal filter and evaluated it on 400 pulse epochs from five patients in OpenNeuro ds004457 version 1.0.2. The filter was a causal fourth-order Butterworth band-pass design (total band-pass order eight) from 70 to 110 Hz at 2048 samples per second. Under the stated model, two inputs differed only during [0,10) ms, their prior filter states were equal, and the input error RMS over the 21-sample gap was at most 1 mV. For each epoch, the output error limit was its measured pre-pulse band-voltage RMS. The sufficient guard times ranged from 128.4 to 178.2 ms, with a median of 163.6 ms; a 20.020 ms guard failed the limit in every epoch. After each calculated guard, the bound was no greater than the epoch baseline RMS in every later 62-sample window. A permitted error shape produced 352.5 microvolts RMS in the window starting at 20.020 ms. For past-sample replacement, the bound covered all 786,400 measured later-window differences, and fresh raw extraction matched all 3,276,800 archived digital samples. The guards are sufficient limits for the declared mathematical error model, not measured neural recovery times. The 1 mV budget and 10 ms interval are assumptions. The analysis reuses a published cohort and adds no independent patients.
causal filtering · signal processing · error bounds · stereoelectroencephalography · SEEG · brain-computer interfaces · pulse artifact
References
4- usesBipolar subtraction changed site accuracy in both directions at 30–100 ms in five SEEG sessions sci:sha256:531e50239e932801e1c0cfd358414615addc29385833c8f1831bb538445b2800
We used its fixed ventral temporal contacts, pinned source manifest, and MIT raw retrieval recipe through the later extraction package. We preserved its code license and verified all 30 raw file hashes.
- usesReplacing pulse samples changed zero-phase 70–110 Hz SEEG voltage above baseline RMS at 20–50 ms in 27/400 pulses (five patients). sci:sha256:78299ccd5493ea3f4d9c8ec1dfad43bf77ec6ab49d467ba2f55a3b7b4806dddd
We reused its fixed 400 pulse epochs, contact scales, source metadata, event selection, and raw extractor. Fresh source extraction matched all arrays. The new work adds an arbitrary input error bound and an all-later-window guard. It does not add independent patients.
- usesdoi:10.18112/openneuro.ds004457.v1.0.2
The analyzed 400 pulse epochs and source metadata are from OpenNeuro ds004457 version 1.0.2.
- supportsdoi:10.1523/JNEUROSCI.1325-22.2023
This is the source study for the five-patient SEEG cohort and stimulation recordings used in the analysis.
Cited by
6 publicationsPublic catalog entries on Sciscape.
- usesFour polynomial constraints reduced mean pre-stimulation voltage error against a causal 70 to 110 Hz reference in SEEG from 21 patients at 512 and 4096 Hz
This is the original source of the unchanged guard.py code inherited with the filter design package.
- usesPolynomial constraints reduced baseline error against a causal 70 to 110 Hz reference in 400 SEEG epochs from five patients
The parent preserved this work's state model code in guard.py and its source manifest. The state model supports the infinite impulse tail calculation. The inherited files and credit are preserved.
- usesA 1 mV gap bound kept accepted 70–110 Hz power error below 10% of baseline in 35 SEEG records
The earlier conditional filter guard supplied the error-bound context. We tested per-sample voltage caps, repeated gaps, and a complete causal power window on a different dataset. We did not reuse its RMS cap or guard outcomes.
- usesA complete power bound prevented releases with error above one percent of early mean power after 10 ms gaps filled with zero in 35 SEEG records from 21 patients under a missing voltage cap
This prior method supplied the causal voltage error guard problem after missing input. The present method uses an absolute sample cap and extends the error calculation through the square and moving power mean. No analysis code or voltage data from that publication were used.
- usesA causal filter with 186 coefficients ended 10 ms gap error effects at 100.6 ms at 2048 Hz when inputs were equal outside the gap
This work used the causal gap bound code, pinned source manifest, and exact 400 epoch package. It added finite filter support and an all later finite window comparison.
- usesA projected bound shortened 70 to 110 Hz power guards in 400 SEEG pulses under stated input error balls
This work supplied method context for causal filter state error and norm-budget guards before the fixed plan. Its numerical results and code were not inputs to the new power analysis. It uses the same clinical cohort.