SeqSynHandler

class SeqSynHandler
The SeqSynHandler handles synapses that recognize sequentially ordered input, where the ordering is both in space and time. It assumes that the N input synapses are ordered and equally spaced along a single linear vector.
To do this it maintains a record of recent synaptic input, for a duration of historyTime, at a time interval seqDt. SeqDt is typically longer than the simulation timestep dt for the synapse, and cannot be shorter. SeqDt should represent the characteristic time of advance of the sequence.

The SeqSynHandler uses a 2-D kernel to define how to recognize a sequence, with dependence both on space and history. This kernel is defined by the kernelEquation as a mathematical expression in x (synapse number) and t (time).It computes a vector with the local response term for each point along all inputs, by taking a 2-d convolution of the kernel with the history[time][synapse#] matrix. The local response can affect the synapse in three ways: 1. It can sum the entire response vector, scale by the responseScale term, and send to the synapse as a steady activation. Consider this a cell-wide immediate response to a sequence that it likes. 2. It do an instantaneous scaling of the weight of each individual synapse by the corresponding entry in the response vector. It uses the weightScale term to do this. Consider this a short-term plasticity effect on specific synapses. 3. It can do long-term plasticity of each individual synapse using the matched local entries in the response vector and individual synapse history as inputs to the learning rule. This is not yet implemented.

setNumSynapse()

(destination message field) Assigns number of field entries in field array.

getNumSynapse()

(destination message field) Requests number of field entries in field array.The requesting Element must provide a handler for the returned value.

setKernelEquation()

(destination message field) Assigns field value.

getKernelEquation()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

setKernelWidth()

(destination message field) Assigns field value.

getKernelWidth()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

setSeqDt()

(destination message field) Assigns field value.

getSeqDt()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

setHistoryTime()

(destination message field) Assigns field value.

getHistoryTime()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

setResponseScale()

(destination message field) Assigns field value.

getResponseScale()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

getSeqActivation()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

setWeightScale()

(destination message field) Assigns field value.

getWeightScale()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

getWeightScaleVec()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

getKernel()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

getHistory()

(destination message field) Requests field value. The requesting Element must provide a handler for the returned value.

kernelEquation

string (value field) Equation in x and t to define kernel for sequence recognition

kernelWidth

unsigned int (value field) Width of kernel, i.e., number of synapses taking part in seq.

seqDt

double (value field) Characteristic time for advancing the sequence.

historyTime

double (value field) Duration to keep track of history of inputs to all synapses.

responseScale

double (value field) Scaling factor for sustained activation of synapse by seq

seqActivation

double (value field) Reports summed activation of synaptic channel by sequence

weightScale

double (value field) Scaling factor for weight of each synapse by response vector

weightScaleVec

vector<double> (value field) Vector of weight scaling for each synapse

kernel

vector<double> (value field) All entries of kernel, as a linear vector

history

vector<double> (value field) All entries of history, as a linear vector