neuroidnet.ntr
Class PeakerNeuroid

java.lang.Object
  |
  +--neuroidnet.ntr.Neuroid
        |
        +--neuroidnet.ntr.SRMNeuroid
              |
              +--neuroidnet.ntr.PeakerNeuroid
All Implemented Interfaces:
Expressive, Input, Serializable, Simulation

public class PeakerNeuroid
extends SRMNeuroid

Intermediate neuroid augmenting SRMNeuroid before proceeding into a more completely liquid-state machine neuroid.

PeakerNeuroid simply transforms from the continuous state operation of the SRM to Valiant's abstraction. This is done by invoking the underlying SRMNeuroid (apparently mistakenly built following Valiant's approach too closely) finite state machine whenever the membrane potential has a max plateau. The intention here is to make the peaks in the membrane potential of the continuous model correspond to the sample times of the discrete model.

State: works

Todo: There is no threshold check which makes it susceptible to criticism.

Created: Tue May 14 23:39:07 2002

Modified: $Date: 2003/04/28 03:06:19 $

Version:
$Revision: 1.2 $ for this file.
Author:
Cengiz Gunay
See Also:
Serialized Form

Nested Class Summary
protected  class PeakerNeuroid.Mode
           
 
Nested classes inherited from class neuroidnet.ntr.SRMNeuroid
 
Nested classes inherited from class neuroidnet.ntr.Neuroid
Neuroid.SynapseActivityTask
 
Field Summary
(package private)  double dddPotential
           
(package private)  double ddPotential
           
(package private)  double dPotential
           
(package private)  double dPotentialOld
           
 
Fields inherited from class neuroidnet.ntr.SRMNeuroid
correctTimesRequired, externalCurrent, refractoryTimeConstant, sumOfCurrentWeights
 
Fields inherited from class neuroidnet.ntr.Neuroid
area, concept, debug, id, mode, potential, profile, spikeTrain, synapses, timeLastFired, watch
 
Constructor Summary
PeakerNeuroid(Area area)
          TODO: Initialize mode? Does the polymorphism work from super class to use Mode defined here? [No]
PeakerNeuroid(Area area, double initialThreshold, double refractoryTimeConstant)
           
 
Method Summary
 void step()
          Calculates up to the third derivative of the membrane potential to detect max plateaus.
 
Methods inherited from class neuroidnet.ntr.SRMNeuroid
calculatePotential, defaultPeriod, fire, getRefractoryTimeConstant, refractoriness, setRefractoryTimeConstant
 
Methods inherited from class neuroidnet.ntr.Neuroid
addSynapse, dumpData, getArea, getConcept, getId, getMode, getProfile, getProperties, getSpikeTrain, getStatus, getSynapses, getTimeLastFired, init, isDebug, isWatch, makeConcept, setArea, setDebug, setMode, setProfile, setSpikeTrain, setWatch, stop, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

dPotential

double dPotential

dPotentialOld

double dPotentialOld

ddPotential

double ddPotential

dddPotential

double dddPotential
Constructor Detail

PeakerNeuroid

public PeakerNeuroid(Area area)
TODO: Initialize mode? Does the polymorphism work from super class to use Mode defined here? [No]


PeakerNeuroid

public PeakerNeuroid(Area area,
                     double initialThreshold,
                     double refractoryTimeConstant)
Method Detail

step

public void step()
Calculates up to the third derivative of the membrane potential to detect max plateaus.

TODO: Call super.step()? Make super.step() compatible with this first.

TODO: try to unify with neuroid.step

Specified by:
step in interface Simulation
Overrides:
step in class Neuroid
See Also:
Synapse