bool Neuron::tick(double clock){ v = 0; if (refractions.empty()){ excite(clock); //inhibit(clock); if (v >= vt){ spike(clock); return true; } } return false; }
baseType pulseCoupledExcitatoryNeuron::callBack(unsigned int eventSignature) { if ( eventSignature == _fire_) { fireN(); return numeric_limits<baseType>::max(); } else // if (eventSignature == _exciteRandomly_) { excite ( noiseIntensity() ); return this->time + gslNoise::getExponential(noiseFrequency()); } }
double neuron :: excite (double * vector, non_linear_function function) { error = 0.0; if (function == NULL) return output = excite (vector); return output = function (excite (vector)); }