Graphitti
A toolkit/software architecture to ease creating high-performance neural network simulators
|
Public Member Functions | |
AllDynamicSTDPSynapses (int numVertices, int maxEdges) | |
virtual void | setupEdges () override |
Setup the internal structure of the class (allocate memories and initialize them). | |
virtual void | resetEdge (BGSIZE iEdg, BGFLOAT deltaT) override |
virtual void | printParameters () const override |
virtual void | createEdge (BGSIZE iEdg, int srcVertex, int destVertex, BGFLOAT deltaT, edgeType type) override |
virtual void | printSynapsesProps () const override |
Prints SynapsesProps data. | |
template<class Archive > | |
void | serialize (Archive &archive) |
Cereal serialization method. | |
![]() | |
AllSTDPSynapses (int numVertices, int maxEdges) | |
virtual bool | allowBackPropagation () override |
virtual void | loadParameters () override |
template<class Archive > | |
void | serialize (Archive &archive) |
Cereal serialization method. | |
virtual void | advanceEdge (BGSIZE iEdg, AllVertices &neurons) override |
virtual void | postSpikeHit (BGSIZE iEdg) override |
![]() | |
AllSpikingSynapses (int numVertices, int maxEdges) | |
template<class Archive > | |
void | serialize (Archive &archive) |
Cereal serialization method. | |
virtual void | preSpikeHit (BGSIZE iEdg) |
![]() | |
int | edgSign (const edgeType type) |
template<class Archive > | |
void | serialize (Archive &archive) |
Cereal serialization method. | |
![]() | |
AllEdges (int numVertices, int maxEdges) | |
virtual BGSIZE | addEdge (edgeType type, int srcVertex, int destVertex, BGFLOAT deltaT) |
virtual void | createEdgeIndexMap (EdgeIndexMap &edgeIndexMap) |
Populate a edge index map. | |
template<class Archive > | |
void | serialize (Archive &archive) |
Cereal serialization method. | |
virtual void | advanceEdges (AllVertices &vertices, EdgeIndexMap &edgeIndexMap) |
virtual void | eraseEdge (int neuronIndex, BGSIZE iEdg) |
Static Public Member Functions | |
static AllEdges * | Create () |
![]() | |
static AllEdges * | Create () |
![]() | |
static AllEdges * | Create () |
Public Attributes | |
vector< uint64_t > | lastSpike_ |
The time of the last spike. | |
vector< BGFLOAT > | r_ |
The time varying state variable ![]() | |
vector< BGFLOAT > | u_ |
The time varying state variable ![]() | |
vector< BGFLOAT > | D_ |
The time constant of the depression of the dynamic synapse [range=(0,10); units=sec]. | |
vector< BGFLOAT > | U_ |
The use parameter of the dynamic synapse [range=(1e-5,1)]. | |
vector< BGFLOAT > | F_ |
The time constant of the facilitation of the dynamic synapse [range=(0,10); units=sec]. | |
![]() | |
vector< int > | totalDelayPost_ |
vector< uint32_t > | delayQueuePost_ |
Pointer to the delayed queue. | |
vector< int > | delayIndexPost_ |
The index indicating the current time slot in the delayed queue. | |
vector< int > | delayQueuePostLength_ |
Length of the delayed queue. | |
vector< BGFLOAT > | tauspost_ |
vector< BGFLOAT > | tauspre_ |
sed for extended rule by Froemke and Dan. | |
vector< BGFLOAT > | taupos_ |
Timeconstant of exponential decay of positive learning window for STDP. | |
vector< BGFLOAT > | tauneg_ |
Timeconstant of exponential decay of negative learning window for STDP. | |
vector< BGFLOAT > | STDPgap_ |
No learning is performed if ![]() | |
vector< BGFLOAT > | Wex_ |
The maximal/minimal weight of the synapse [readwrite; units=;]. | |
vector< BGFLOAT > | Aneg_ |
Defines the peak of the negative exponential learning window. | |
vector< BGFLOAT > | Apos_ |
Defines the peak of the positive exponential learning window. | |
vector< BGFLOAT > | mupos_ |
vector< BGFLOAT > | muneg_ |
BGFLOAT | defaultSTDPgap_ |
BGFLOAT | tauspost_I_ |
BGFLOAT | tauspre_I_ |
BGFLOAT | tauspost_E_ |
BGFLOAT | tauspre_E_ |
BGFLOAT | taupos_I_ |
BGFLOAT | tauneg_I_ |
BGFLOAT | taupos_E_ |
BGFLOAT | tauneg_E_ |
BGFLOAT | Wex_I_ |
BGFLOAT | Wex_E_ |
BGFLOAT | Aneg_I_ |
BGFLOAT | Aneg_E_ |
BGFLOAT | Apos_I_ |
BGFLOAT | Apos_E_ |
![]() | |
vector< BGFLOAT > | decay_ |
The decay for the psr. | |
vector< BGFLOAT > | tau_ |
The synaptic time constant ![]() | |
BGFLOAT | tau_II_ |
BGFLOAT | tau_IE_ |
BGFLOAT | tau_EI_ |
BGFLOAT | tau_EE_ |
BGFLOAT | delay_II_ |
BGFLOAT | delay_IE_ |
BGFLOAT | delay_EI_ |
BGFLOAT | delay_EE_ |
vector< int > | totalDelay_ |
The synaptic transmission delay, descretized into time steps. | |
vector< uint32_t > | delayQueue_ |
Pointer to the delayed queue. | |
vector< int > | delayIndex_ |
vector< int > | delayQueueLength_ |
Length of the delayed queue. | |
![]() | |
vector< BGFLOAT > | psr_ |
![]() | |
vector< int > | sourceVertexIndex_ |
The location of the edge. | |
vector< int > | destVertexIndex_ |
The coordinates of the summation point. | |
vector< BGFLOAT > | W_ |
The weight (scaling factor, strength, maximal amplitude) of the edge. | |
vector< edgeType > | type_ |
Synapse type. | |
vector< unsigned char > | inUse_ |
The value indicating the entry in the array is in use. | |
vector< BGSIZE > | edgeCounts_ |
BGSIZE | totalEdgeCount_ |
The total number of active edges. | |
BGSIZE | maxEdgesPerVertex_ |
The maximum number of edges for each vertex. | |
int | countVertices_ |
Protected Member Functions | |
virtual void | setupEdges (int numVertices, int maxEdges) override |
virtual void | readEdge (istream &input, BGSIZE iEdg) override |
virtual void | writeEdge (ostream &output, BGSIZE iEdg) const override |
virtual void | changePSR (BGSIZE iEdg, BGFLOAT deltaT) |
![]() | |
virtual void | initSpikeQueue (BGSIZE iEdg) override |
bool | isSpikeQueuePost (BGSIZE iEdg) |
virtual BGFLOAT | synapticWeightModification (BGSIZE iEdg, BGFLOAT edgeWeight, double delta) |
![]() | |
bool | updateDecay (BGSIZE iEdg, BGFLOAT deltaT) |
defined(USE_GPU) | |
bool | isSpikeQueue (BGSIZE iEdg) |
![]() | |
![]() | |
edgeType | edgeOrdinalToType (int typeOrdinal) |
Additional Inherited Members | |
![]() | |
static constexpr BGFLOAT | SYNAPSE_STRENGTH_ADJUSTMENT = 1.0e-8 |
The factor to adjust overlapping area to edge weight. | |
![]() | |
log4cplus::Logger | fileLogger_ |
Loggers used to print to using log4cplus logging macros, prints to Results/Debug/logging.txt. | |
log4cplus::Logger | edgeLogger_ |
Definition at line 63 of file AllDynamicSTDPSynapses.h.
AllDynamicSTDPSynapses::AllDynamicSTDPSynapses | ( | int | numVertices, |
int | maxEdges ) |
Definition at line 11 of file AllDynamicSTDPSynapses.cpp.
|
protectedvirtual |
Calculate the post synapse response after a spike.
iEdg | Index of the synapse to set. |
deltaT | Inner simulation step duration. |
Reimplemented from AllSpikingSynapses.
Definition at line 162 of file AllDynamicSTDPSynapses.cpp.
|
inlinestatic |
Definition at line 71 of file AllDynamicSTDPSynapses.h.
|
overridevirtual |
Create a Synapse and connect it to the model.
iEdg | Index of the synapse to set. |
srcVertex | Index of the source Neuron. |
destVertex | Index of the destination Neuron. |
deltaT | Inner simulation step duration. |
type | Type of the Synapse to create. |
Reimplemented from AllSTDPSynapses.
Definition at line 115 of file AllDynamicSTDPSynapses.cpp.
|
overridevirtual |
Prints out all parameters to logging file. Registered to OperationManager as Operation::printParameters
Reimplemented from AllSTDPSynapses.
Definition at line 46 of file AllDynamicSTDPSynapses.cpp.
|
overridevirtual |
Prints SynapsesProps data.
Reimplemented from AllSTDPSynapses.
Definition at line 187 of file AllDynamicSTDPSynapses.cpp.
|
overrideprotectedvirtual |
Sets the data for Synapse to input's data.
input | istream to read from. |
iEdg | Index of the synapse to set. |
Reimplemented from AllSTDPSynapses.
Definition at line 60 of file AllDynamicSTDPSynapses.cpp.
|
overridevirtual |
Reset time varying state vars and recompute decay.
iEdg | Index of the synapse to set. |
deltaT | Inner simulation step duration |
Reimplemented from AllSTDPSynapses.
Definition at line 99 of file AllDynamicSTDPSynapses.cpp.
void AllDynamicSTDPSynapses::serialize | ( | Archive & | archive | ) |
Cereal serialization method.
Definition at line 267 of file AllDynamicSTDPSynapses.h.
|
overridevirtual |
Setup the internal structure of the class (allocate memories and initialize them).
Reimplemented from AllSTDPSynapses.
Definition at line 18 of file AllDynamicSTDPSynapses.cpp.
|
overrideprotectedvirtual |
Setup the internal structure of the class (allocate memories and initialize them).
numVertices | Total number of vertices in the network. |
maxEdges | Maximum number of synapses per neuron. |
Reimplemented from AllSTDPSynapses.
Definition at line 28 of file AllDynamicSTDPSynapses.cpp.
|
overrideprotectedvirtual |
Write the synapse data to the stream.
output | stream to print out to. |
iEdg | Index of the synapse to print out. |
Reimplemented from AllSTDPSynapses.
Definition at line 83 of file AllDynamicSTDPSynapses.cpp.
vector<BGFLOAT> AllDynamicSTDPSynapses::D_ |
The time constant of the depression of the dynamic synapse [range=(0,10); units=sec].
Definition at line 233 of file AllDynamicSTDPSynapses.h.
vector<BGFLOAT> AllDynamicSTDPSynapses::F_ |
The time constant of the facilitation of the dynamic synapse [range=(0,10); units=sec].
Definition at line 239 of file AllDynamicSTDPSynapses.h.
vector<uint64_t> AllDynamicSTDPSynapses::lastSpike_ |
The time of the last spike.
Definition at line 224 of file AllDynamicSTDPSynapses.h.
vector<BGFLOAT> AllDynamicSTDPSynapses::r_ |
The time varying state variable
Definition at line 227 of file AllDynamicSTDPSynapses.h.
vector<BGFLOAT> AllDynamicSTDPSynapses::U_ |
The use parameter of the dynamic synapse [range=(1e-5,1)].
Definition at line 236 of file AllDynamicSTDPSynapses.h.
vector<BGFLOAT> AllDynamicSTDPSynapses::u_ |
The time varying state variable
Definition at line 230 of file AllDynamicSTDPSynapses.h.