ca.nengo.model.impl
Class EnsembleTermination
java.lang.Object
ca.nengo.model.impl.EnsembleTermination
- All Implemented Interfaces:
- Resettable, Termination, java.io.Serializable, java.lang.Cloneable
- Direct Known Subclasses:
- PlasticEnsembleTermination
public class EnsembleTermination
- extends java.lang.Object
- implements Termination
A Termination that is composed of Terminations onto multiple Nodes.
The dimensions of the Terminations onto each Node must be the same.
Physiologically, this might correspond to a set of n axons passing into
a neuron pool. Each neuron in the pool receives synaptic connections
from as many as n of these axons (zero weight is equivalent to no
connection). Sometimes we deal with this set of axons only in terms
of the branches they send to one specific Neuron (a Node-level Termination)
but here we deal with all branches (an Ensemble-level Termination).
In either case the spikes transmitted by the axons are the same.
TODO: test
- Author:
- Bryan Tripp
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
myNodeTerminations
protected Termination[] myNodeTerminations
EnsembleTermination
public EnsembleTermination(Node node,
java.lang.String name,
Termination[] nodeTerminations)
throws StructuralException
- Parameters:
node
- The parent Nodename
- Name of this TerminationnodeTerminations
- Node-level Terminations that make up this Termination
- Throws:
StructuralException
- If dimensions of different terminations are not all the same
getName
public java.lang.String getName()
- Specified by:
getName
in interface Termination
- Returns:
- Name of this Termination (unique in the scope of the object the which the Termination
is connected, eg the Neuron or Ensemble).
- See Also:
Termination.getName()
getDimensions
public int getDimensions()
- Specified by:
getDimensions
in interface Termination
- Returns:
- Dimensionality of information entering this Termination (eg number of
axons, or dimension of decoded function of variables represented by sending
Ensemble)
- See Also:
Termination.getDimensions()
setValues
public void setValues(InstantaneousOutput values)
throws SimulationException
- Specified by:
setValues
in interface Termination
- Parameters:
values
- InstantaneousOutput (eg from another Ensemble) to apply to this Termination.
- Throws:
SimulationException
- if the given values have the wrong dimension- See Also:
Termination.setValues(ca.nengo.model.InstantaneousOutput)
getModulatory
public boolean getModulatory()
- Returns true if more than half of node terminations are modulatory.
- Specified by:
getModulatory
in interface Termination
- Returns:
- Whether the Termination is modulatory, in the sense of neuromodulation, ie true if
input via this Termination is not summed to drive a node, but influences node activity
in some other way
- See Also:
Termination.getModulatory()
getTau
public float getTau()
- Returns the average.
- Specified by:
getTau
in interface Termination
- Returns:
- Time constant of dominant dynamics
- See Also:
Termination.getTau()
setModulatory
public void setModulatory(boolean modulatory)
- Specified by:
setModulatory
in interface Termination
- Parameters:
modulatory
- True if the Termination is to be modulatory- See Also:
Termination.setModulatory(boolean)
setTau
public void setTau(float tau)
throws StructuralException
- Specified by:
setTau
in interface Termination
- Parameters:
tau
- Time constant of dominant dynamics
- Throws:
StructuralException
- if the time constant cannot be changed- See Also:
Termination.setTau(float)
getNode
public Node getNode()
- Specified by:
getNode
in interface Termination
- Returns:
- The Node to which this Termination belongs
- See Also:
Termination.getNode()
reset
public void reset(boolean randomize)
- Specified by:
reset
in interface Resettable
- Parameters:
randomize
- True indicates that the object should be reset to a
randomly selected initial state (the object must be aware of the
distribution from which to draw from). False indicates that the
object should be reset to a fixed initial state (which it must
also know). Some objects may not support randomization of the initial
state, in which case a fixed state will be used in either case.- See Also:
Resettable.reset(boolean)
clone
public Termination clone()
throws java.lang.CloneNotSupportedException
- Specified by:
clone
in interface Termination
- Overrides:
clone
in class java.lang.Object
- Throws:
java.lang.CloneNotSupportedException