21 "Spiking threshold. If Vm crosses this going up then the "
22 "SpikeStats object considers that a spike has happened and "
23 "adds it to the stats.",
32 "Handles spike event time input, converts into a rate "
37 "Handles continuous voltage input, can be coming in much "
38 "than update rate of the SpikeStats. Looks for transitions "
39 "above threshold to register the arrival of a spike. "
40 "Doesn't do another spike till Vm falls below threshold. ",
43 static Finfo* statsFinfos[] = {
52 "Author",
"Upi Bhalla Aug 2014",
54 "Object to do some minimal stats on rate of a spike train. "
55 "Derived from the Stats object and returns the same set of stats."
56 "Can take either predigested spike event input, or can handle "
57 "a continuous sampling of membrane potential Vm and decide if "
58 "a spike has occured based on a threshold. "
66 sizeof( statsFinfos ) /
sizeof (
Finfo* ),
69 sizeof( doc ) /
sizeof(
string )
83 numSpikes_( 0 ), threshold_( 0.0 ), fired_( false )
92 double rate =
static_cast< double >(
numSpikes_ ) / p->
dt;
double getThreshold() const
static const Cinfo * spikeStatsCinfo
void setThreshold(double thresh)
static const Cinfo * initCinfo()
void addSpike(DataId synIndex, const double time)
void vProcess(const Eref &e, ProcPtr p)
Virtual func for handling process calls.
virtual void vReinit(const Eref &e, ProcPtr p)
void vReinit(const Eref &e, ProcPtr p)
static const Cinfo * initCinfo()