Warning

This version of the documentation is NOT an official release. You are looking at ‘latest’, which is in active and ongoing development. You can change versions on the bottom left of the screen.

# sinusoidal_poisson_generator – Generate sinusoidally modulated Poisson spike trains¶

## Description¶

sinusoidal_poisson_generator generates sinusoidally modulated Poisson spike trains. By default, each target of the generator will receive a different spike train.

The instantaneous rate of the process is given by

$f(t) = max(0, rate + amplitude \sin ( 2 \pi frequency t + phase * \pi/180 )) >= 0$

## Remarks¶

• If amplitude > rate, firing rate is cut off at zero. In this case, the mean firing rate will be less than rate.

• The state of the generator is reset on calibration.

• The generator does not support precise spike timing.

• You can use the multimeter to sample the rate of the generator.

• The generator will create different trains if run at different temporal resolutions.

• Individual spike trains vs single spike train: By default, the generator sends a different spike train to each of its targets. If /individual_spike_trains is set to false using either SetDefaults or CopyModel before a generator node is created, the generator will send the same spike train to all of its targets.

All stimulation devices share the parameters start and stop, which control the stimulation period. The property origin is a global offset that shifts the stimulation period. All three values are set as times in ms.

• For spike-emitting devices, only spikes with times t that fulfill start < t <= stop are emitted. Spikes that have timestamp of t = start are not emitted.

• For current-emitting devices, the current is activated and deactivated such that the current first affects the target dynamics during the update step (start, start+h], i.e., an effect can be recorded at the earliest at time start+h. The last interval during which the current affects the target’s dynamics is (stop-h, stop].

The property stimulus_source defaults to an empty string. It can be set to the name of a stimulation backend, in which case it will take its parameters from the configured backend instead of from the internally stored values. More details on available backends and their properties can be found in the guide to stimulating the network.

## Parameters¶

label

A string (default: “”) specifying an arbitrary textual label for the device. Stimulation backends might use the label to generate device specific identifiers like filenames and such.

origin

A positive floating point number (default : 0.0) used as the reference time in ms for start and stop.

start

A positive floating point number (default: 0.0) specifying the activation time in ms, relative to origin.

stimulus_source

A string (default: “”) specifying the name of the stimulation backend from which to get the data for updating the stimulus parameters of the device. By default the device uses its internally stored parameters for updating the stimulus.

stop

A floating point number (default: infinity) specifying the deactivation time in ms, relative to origin. The value of stop must be greater than or equal to start.

rate

Mean firing rate in spikes/second, default: 0 s^-1

amplitude

Firing rate modulation amplitude in spikes/second, default: 0 s^-1

frequency

Modulation frequency, default: 0 Hz

phase

Modulation phase in degree [0-360], default: 0

individual_spike_trains

See note above, default: true

### Set parameters from a stimulation backend¶

The parameters in this stimulation device can be updated with input coming from a stimulation backend. The data structure used for the update holds one value for each of the parameters mentioned above. The indexing is as follows:

1. rate

2. frequency

3. phase

4. amplitude

5. individual_spike_trains

DataLoggingRequest

SpikeEvent