ca.nengo.model.impl
Class PlasticEnsembleTermination

java.lang.Object
  extended by ca.nengo.model.impl.EnsembleTermination
      extended by ca.nengo.model.impl.PlasticEnsembleTermination
All Implemented Interfaces:
PlasticTermination, Resettable, Termination, java.io.Serializable, java.lang.Cloneable

public class PlasticEnsembleTermination
extends EnsembleTermination
implements PlasticTermination

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:
Trevor Bekolay
See Also:
Serialized Form

Constructor Summary
PlasticEnsembleTermination(Node node, java.lang.String name, LinearExponentialTermination[] nodeTerminations)
           
 
Method Summary
 PlasticTermination clone()
           
 InstantaneousOutput getInput()
           
 float[][] getTransform()
           
 
Methods inherited from class ca.nengo.model.impl.EnsembleTermination
getDimensions, getModulatory, getName, getNode, getTau, reset, setModulatory, setTau, setValues
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface ca.nengo.model.Termination
getDimensions, getModulatory, getName, getNode, getTau, setModulatory, setTau, setValues
 
Methods inherited from interface ca.nengo.model.Resettable
reset
 

Constructor Detail

PlasticEnsembleTermination

public PlasticEnsembleTermination(Node node,
                                  java.lang.String name,
                                  LinearExponentialTermination[] nodeTerminations)
                           throws StructuralException
Parameters:
node - The parent Node
name - Name of this Termination
nodeTerminations - Node-level Terminations that make up this Termination. Must be all LinearExponentialTerminations
Throws:
StructuralException - If dimensions of different terminations are not all the same
Method Detail

getTransform

public float[][] getTransform()
Specified by:
getTransform in interface PlasticTermination
Returns:
The connection weight matrix relating input from the pre-population to the output produced by the post-population.
See Also:
PlasticTermination.getTransform()

getInput

public InstantaneousOutput getInput()
Specified by:
getInput in interface PlasticTermination
Returns:
The input coming from the pre-population. Needed to run plasticity rules.

clone

public PlasticTermination clone()
                         throws java.lang.CloneNotSupportedException
Specified by:
clone in interface PlasticTermination
Specified by:
clone in interface Termination
Overrides:
clone in class EnsembleTermination
Throws:
java.lang.CloneNotSupportedException