CARLsim  3.1.3
CARLsim: a GPU-accelerated SNN simulator
PeriodicSpikeGenerator Class Reference

a periodic SpikeGenerator (constant ISI) creating spikes at a certain rate More...

#include <periodic_spikegen.h>

Inheritance diagram for PeriodicSpikeGenerator:
SpikeGenerator

Public Member Functions

 PeriodicSpikeGenerator (bool spikeAtZero=true)
 PeriodicSpikeGenerator constructor. More...
 
 ~PeriodicSpikeGenerator ()
 default destructor More...
 
unsigned int nextSpikeTime (CARLsim *sim, int grpId, int nid, unsigned int currentTime, unsigned int lastScheduledSpikeTime, unsigned int endOfTimeSlice)
 schedules the next spike time More...
 
void setRates (float rateHz)
 Sets the spike rate of all neurons in the group. More...
 
void setRates (std::vector< float > ratesHz)
 Sets the spike rate on a neuron-by-neuron basis. More...
 
- Public Member Functions inherited from SpikeGenerator
virtual ~SpikeGenerator ()
 

Detailed Description

This class implements a period SpikeGenerator that schedules spikes with a constant inter-spike-interval. The firing rate can be set per neuron or per group. For example, a PeriodicSpikeGenerator with all rates=10Hz will schedule spikes for each neuron in the group at t=100, t=200, t=300 ms, etc. If spikeAtZero is set to true, then the first spike will be scheduled at t=0.

Otherwise, if rates are given in a vector, one rate per neuron in the group is assumed.

Definition at line 21 of file periodic_spikegen.h.

Constructor & Destructor Documentation

PeriodicSpikeGenerator ( bool  spikeAtZero = true)
Parameters
[in]spikeAtZeroa boolean flag to indicate whether to insert the first spike at t=0

Member Function Documentation

unsigned int nextSpikeTime ( CARLsim sim,
int  grpId,
int  nid,
unsigned int  currentTime,
unsigned int  lastScheduledSpikeTime,
unsigned int  endOfTimeSlice 
)
virtual

This function schedules the next spike time, given the currentTime and the lastScheduledSpikeTime. It implements the virtual function of the base class.

Parameters
[in]simpointer to a CARLsim object
[in]grpIdcurrent group ID for which to schedule spikes
[in]nidcurrent neuron ID for which to schedule spikes
[in]currentTimecurrent time (ms) at which spike scheduler is called
[in]lastScheduledSpikeTimethe last time (ms) at which a spike was scheduled for this nid, grpId
[in]endOfTimeSlicethe end of the time slice (ms) for which to schedule spikes
Returns
the next spike time (ms)

Implements SpikeGenerator.

void setRates ( float  rateHz)

The spike rate of every neuron in the group will be set to rateHz.

Parameters
[in]rateHzthe firing rate (Hz) to be applied to all neurons in the group
void setRates ( std::vector< float >  ratesHz)

This sets the spike rate of every neuron in the group to a value specified in the vector. One entry per neuron is assumed.

Parameters
[in]ratesHzA vector specifying the firing rate (Hz) for every neuron in the group

The documentation for this class was generated from the following file: