PoissonEncoder

Contents

PoissonEncoder#

class braintools.PoissonEncoder(time_window=1000.0, normalize=False, max_rate=100.0)#

Encode inputs as Poisson spike trains.

Generates spike trains where inter-spike intervals follow a Poisson distribution. The input intensity determines the rate parameter of the Poisson process.

Example:

>>> data = jnp.array([10.0, 50.0, 100.0])  # Hz
>>> encoder = PoissonEncoder()
>>> spikes = encoder(data, n_time=1000)  # 1 second at 1ms resolution
>>> # Mean spike counts should be ~[10, 50, 100]
Parameters:
  • time_window (float) – float. Time window in ms for rate calculation.

  • normalize (bool) – bool. Whether to treat inputs as rates (False) or normalize to rates (True).

  • max_rate (float) – float. Maximum rate when normalizing.