Skip to content

docs: correct poisson_generator rate-between-Runs claim (NEST_REALTIME.md)#17

Merged
sepahead merged 1 commit into
mainfrom
docs/nest-realtime-poisson-correction
Jun 29, 2026
Merged

docs: correct poisson_generator rate-between-Runs claim (NEST_REALTIME.md)#17
sepahead merged 1 commit into
mainfrom
docs/nest-realtime-poisson-correction

Conversation

@sepahead

Copy link
Copy Markdown
Owner

The error

NEST_REALTIME.md claimed a poisson_generator's rate could be updated via device.set() between Run()s and that "this works" (§4 and the chunking 'workaround' step 3).

Verified on NEST 3.9 that it does not. A poisson_generator bakes its rate into an internal deviate generator at calibration (Prepare()), so a post-Prepare set(rate=) is silently ignored — zero spikes (the rate even reads back correctly). dc_generator.amplitude does update live; only the Poisson source is affected.

poisson rate set BEFORE Prepare : 17 spikes
poisson rate set AFTER  Prepare :  0 spikes   <-- the doc said this works
dc amplitude set AFTER  Prepare : 16 spikes

The fix (already what the doc recommended elsewhere)

Corrected §4 and step 3 to state this and point to the robust path the doc already names — a scheduled-time generator whose next value is scheduled at biological_time + dt:

  • inhomogeneous_poisson_generator for a Poisson spike source (rate_hz),
  • step_rate_generator for a rate-based input (rate_inject),
  • step_current_generator for a scheduled current.

This is what the engram reference backend now does for every non-dc drive (it keeps the Prepare-once + Run model — no Simulate-per-chunk re-calibration). Docs only; no code/wire change.

…IME.md

The doc claimed a poisson_generator's rate could be updated via device.set()
between Run()s and that 'this works'. Verified on NEST 3.9 that it does NOT: a
poisson_generator bakes its rate into an internal deviate generator at calibration
(Prepare), so a post-Prepare set(rate=) is silently ignored and emits zero spikes.
dc_generator.amplitude DOES update live; only the Poisson source is affected.

Corrected §4 (runtime input injection) and the chunking 'workaround' step 3 to
state this and point to the robust fix: a scheduled-time generator
(inhomogeneous_poisson_generator for a Poisson spike source / rate_hz;
step_rate_generator for rate_inject; step_current_generator for current) whose
next value is scheduled at biological_time+dt. This is what the engram reference
backend now does for every non-dc drive. Docs only.
@sepahead sepahead merged commit 0f1671b into main Jun 29, 2026
12 checks passed
@sepahead sepahead deleted the docs/nest-realtime-poisson-correction branch June 29, 2026 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant