This class implements short term plasticity according to the Tsodyks-Markram synapse.
More...
|
| STPConnection (const char *filename) |
|
| STPConnection (NeuronID rows, NeuronID cols) |
|
| STPConnection (SpikingGroup *source, NeuronGroup *destination, TransmitterType transmitter=GLUT) |
|
| STPConnection (SpikingGroup *source, NeuronGroup *destination, const char *filename, TransmitterType transmitter=GLUT) |
|
| STPConnection (SpikingGroup *source, NeuronGroup *destination, AurynWeight weight, AurynFloat sparseness=0.05, TransmitterType transmitter=GLUT, string name="STPConnection") |
|
void | set_tau_d (AurynFloat taud) |
|
void | set_tau_f (AurynFloat tauf) |
|
void | set_ujump (AurynFloat r) |
|
void | clear () |
| Clear. More...
|
|
void | clone_parameters (STPConnection *con) |
| Clone parameters. More...
|
|
virtual | ~STPConnection () |
|
virtual void | propagate () |
|
void | push_attributes () |
|
void | evolve () |
|
| SparseConnection () |
| Empty constructor which should not be used – TODO should be deprecated at some point. More...
|
|
| SparseConnection (const char *filename) |
| Load from wmat file constructor which should not be used – TODO should be deprecated at some point. More...
|
|
| SparseConnection (NeuronID rows, NeuronID cols) |
| Deprecated constructor for manual filling. More...
|
|
| SparseConnection (SpikingGroup *source, NeuronGroup *destination, const char *filename, TransmitterType transmitter=GLUT) |
| Deprecated constructor for loading from file. More...
|
|
| SparseConnection (SpikingGroup *source, NeuronGroup *destination, TransmitterType transmitter=GLUT, string name="SparseConnection") |
| Constructor for manual filling. More...
|
|
| SparseConnection (SpikingGroup *source, NeuronGroup *destination, AurynWeight weight, AurynDouble sparseness=0.05, TransmitterType transmitter=GLUT, string name="SparseConnection") |
| Default constructor which sets up a random sparse matrix with fixed weight between the source and destination group. More...
|
|
| SparseConnection (SpikingGroup *source, NeuronGroup *destination, SparseConnection *con, string name="SparseConnection") |
| This constructor tries to clone a connection by guessing all parameters except source and destination from another connection instance. More...
|
|
| SparseConnection (SpikingGroup *source, NeuronGroup *destination, AurynWeight weight, AurynDouble sparseness, NeuronID lo_row, NeuronID hi_row, NeuronID lo_col, NeuronID hi_col, TransmitterType transmitter=GLUT) |
| Sparse block constructor. More...
|
|
virtual | ~SparseConnection () |
| The default destructor. More...
|
|
void | allocate_manually (AurynLong expected_size) |
| Is used whenever memory has to be allocated manually. Automatically adjusts for number of ranks and for security margin. More...
|
|
AurynLong | estimate_required_nonzero_entires (AurynLong nonzero, double sigma=5.) |
| This function estimates the required size of the nonzero entry buffer. More...
|
|
void | seed (NeuronID randomseed) |
| This function seeds the pseudo random number generator for all random fill operatios. More...
|
|
virtual AurynWeight | get (NeuronID i, NeuronID j) |
| Returns weight value of a given element if it exists. More...
|
|
virtual AurynWeight * | get_ptr (NeuronID i, NeuronID j) |
| Returns pointer to given weight element if it exists. Returns NULL if element does not exist. More...
|
|
virtual AurynWeight | get_data (NeuronID i) |
| Returns weight value of a given element referenced by index in the data array. More...
|
|
virtual void | set_data (NeuronID i, AurynWeight value) |
| Sets weight value of a given element referenced by its index in the data array. More...
|
|
virtual void | set (NeuronID i, NeuronID j, AurynWeight value) |
| Sets a single connection to value if it exists. More...
|
|
virtual void | set (std::vector< neuron_pair > element_list, AurynWeight value) |
| Sets a list of connection to value if they exists. More...
|
|
void | random_data (AurynWeight mean, AurynWeight sigma) |
| Synonym for random_data. More...
|
|
void | random_data_normal (AurynWeight mean, AurynWeight sigma) |
| Set weights of all existing connections randomly using a normal distrubtion. More...
|
|
void | random_data_lognormal (AurynWeight m, AurynWeight s) |
| Set weights of all existing connections randomly using a lognormal distribution. More...
|
|
void | init_random_binary (AurynFloat prob=0.5, AurynWeight wlo=0.0, AurynWeight whi=1.0) |
| Initialize with random binary at wlo and whi. More...
|
|
void | random_col_data (AurynWeight mean, AurynWeight sigma) |
| Sets weights in cols to the same value drewn from a Gaussian distribution. More...
|
|
void | set_block (NeuronID lo_row, NeuronID hi_row, NeuronID lo_col, NeuronID hi_col, AurynWeight weight) |
| Sets all weights of existing connections in a block spanned by the first 4 parameters to the value given. More...
|
|
void | scale_block (NeuronID lo_row, NeuronID hi_row, NeuronID lo_col, NeuronID hi_col, AurynWeight alpha) |
| Scale all weights of existing connections in a block spanned by the first 4 parameters to the value given. More...
|
|
virtual void | set_all (AurynWeight weight) |
| Sets all weights of existing connections to the given value. More...
|
|
virtual void | scale_all (AurynFloat value) |
| Scales all weights in the weight matrix with the given value. More...
|
|
virtual void | clip (AurynWeight lo, AurynWeight hi) |
| Clip weights. More...
|
|
void | set_upper_triangular (AurynWeight weight) |
| Sets weights in a upper triangular matrix. More...
|
|
virtual void | sparse_set_data (AurynDouble sparseness, AurynWeight value) |
| Sets a sparse random subset of connection elements wight the given value. More...
|
|
void | connect_random (AurynWeight weight=1.0, AurynDouble sparseness=0.05, bool skip_diag=false) |
| Connect src and dst SpikingGroup and NeuronGroup randomly with given sparseness. More...
|
|
void | connect_block_random (AurynWeight weight, AurynDouble sparseness, NeuronID lo_row, NeuronID hi_row, NeuronID lo_col, NeuronID hi_col, bool skip_diag=false) |
| Underlying sparse fill method. More...
|
|
virtual void | finalize () |
| Finalizes connection after random or manual initialization of the weights. More...
|
|
bool | push_back (NeuronID i, NeuronID j, AurynWeight weight) |
| Pushes a single element to the ComplexMatrix. More...
|
|
AurynLong | get_nonzero () |
| Returns number of nonzero elements in this SparseConnection. More...
|
|
void | put_pattern (type_pattern *pattern, AurynWeight strength, bool overwrite) |
| Puts cell assembly to existing sparse weights. More...
|
|
void | put_pattern (type_pattern *pattern1, type_pattern *pattern2, AurynWeight strength, bool overwrite) |
| Puts cell assembly or synfire pattern to existing sparse weights. More...
|
|
void | load_patterns (string filename, AurynWeight strength, int nb_max_patterns=10000, bool overwrite=false, bool chainmode=false) |
| Reads first n patterns from a .pat file and adds them as Hebbian assemblies onto an existing weight matrix. More...
|
|
void | load_pre_post_patterns (std::string pre_file, std::string post_file, AurynWeight strength, int nb_max_patterns=10000, bool overwrite=false) |
| Reads patterns from two files and connects them. More...
|
|
void | sanity_check () |
| Quick an dirty function that checks if all units on the local rank are connected. More...
|
|
virtual AurynDouble | sum () |
| Computes sum of all weight elements in the Connection. More...
|
|
virtual void | stats (AurynDouble &mean, AurynDouble &std) |
| Computes mean and variance of weights in default weight matrix. More...
|
|
virtual void | stats (AurynDouble &mean, AurynDouble &std, NeuronID zid) |
| Computes mean and variance of weights for matrix state zid. More...
|
|
bool | write_to_file (ForwardMatrix *m, string filename) |
| Writes rank specific weight matrix on the same rank to a file. More...
|
|
virtual bool | write_to_file (string filename) |
| Writes rank specific default weight matrix on the same rank to a file. More...
|
|
virtual bool | load_from_complete_file (string filename) |
| Loads weight matrix from a single file. More...
|
|
virtual bool | load_from_file (string filename) |
| Loads weight matrix from Matrix Market (wmat) file. More...
|
|
bool | load_from_file (ForwardMatrix *m, string filename, AurynLong data_size=0) |
| Loads weight matrix from Matrix Market (wmat) file to specified weight matrix. More...
|
|
virtual void | set_min_weight (AurynWeight minimum_weight) |
| Sets minimum weight (for plastic connections). More...
|
|
AurynWeight | get_min_weight () |
| Gets minimum weight (for plastic connections). More...
|
|
virtual void | set_max_weight (AurynWeight maximum_weight) |
| Sets maximum weight (for plastic connections). More...
|
|
AurynWeight | get_max_weight () |
| Gets maximum weight (for plastic connections). More...
|
|
std::vector< neuron_pair > | get_block (NeuronID lo_row, NeuronID hi_row, NeuronID lo_col, NeuronID hi_col) |
| Returns a vector of ConnectionsID of a block specified by the arguments. More...
|
|
std::vector< neuron_pair > | get_post_partners (NeuronID i) |
| Returns a vector of ConnectionsID of postsynaptic parterns of neuron i. More...
|
|
std::vector< neuron_pair > | get_pre_partners (NeuronID j) |
| Returns a vector of ConnectionsID of presynaptic parterns of neuron i. More...
|
|
| Connection () |
|
| Connection (NeuronID rows, NeuronID cols) |
|
| Connection (SpikingGroup *source, NeuronGroup *destination, TransmitterType transmitter=GLUT, std::string name="Connection") |
|
virtual | ~Connection () |
|
void | set_size (NeuronID i, NeuronID j) |
|
void | set_name (std::string name) |
| Set name of connection. More...
|
|
std::string | get_name () |
| Returns name of connection. More...
|
|
std::string | get_file_name () |
| Extracts the class name of the connection from the file name. More...
|
|
std::string | get_log_name () |
| Returns a string which is the combination of file and connection name for logging. More...
|
|
AurynStateVector * | get_target_vector () |
| Returns target state vector if one is defined. More...
|
|
NeuronID | get_m_rows () |
| Get number of rows (presynaptic) in connection. More...
|
|
NeuronID | get_n_cols () |
| Get number of columns (postsynaptic) in connection. More...
|
|
TransmitterType | get_transmitter () |
| Returns transmitter type. More...
|
|
void | set_target (AurynWeight *ptr) |
| Sets target state of this connection directly via a pointer. More...
|
|
void | set_target (AurynStateVector *ptr) |
| Sets target state of this connection directly via a StateVector. More...
|
|
void | set_receptor (AurynStateVector *ptr) |
| Same as set_target. More...
|
|
void | set_transmitter (AurynStateVector *ptr) |
| Same as set_target. More...
|
|
void | set_transmitter (TransmitterType transmitter) |
| Sets target state of this connection for a given receptor as one of Auryn's default transmitter types. More...
|
|
void | set_receptor (string state_name) |
| Sets target state of this connection directly the name of a state vector. More...
|
|
void | set_target (string state_name) |
| Same as set_receptor. More...
|
|
void | set_transmitter (string state_name) |
| Same as set_receptor, but DEPRECATED. More...
|
|
void | set_source (SpikingGroup *source) |
| Sets source SpikingGroup of this connection. More...
|
|
SpikingGroup * | get_source () |
| Returns pointer to the presynaptic group. More...
|
|
void | set_destination (NeuronGroup *source) |
| Sets destination SpikingGroup of this connection. More...
|
|
NeuronGroup * | get_destination () |
| Returns pointer to the postsynaptic group. More...
|
|
void | conditional_propagate () |
| DEPRECATED. (Such connections should not be registered in the first place) Calls propagate only if the postsynaptic NeuronGroup exists on the local rank. More...
|
|
Trace * | get_pre_trace (const AurynDouble tau) |
| Returns a pointer to a presynaptic trace object. More...
|
|
Trace * | get_post_trace (const AurynDouble tau) |
| Returns a pointer to a postsynaptic trace object. More...
|
|
Trace * | get_post_state_trace (const string state_name, const AurynDouble tau, const AurynDouble jump_size=0.0) |
| Returns a pointer to a postsynaptic state trace object. More...
|
|
void | transmit (const NeuronID id, const AurynWeight amount) |
| Default way to transmit a spike to a postsynaptic partner. More...
|
|
void | targeted_transmit (SpikingGroup *target_group, AurynStateVector *target_state, const NeuronID id, const AurynWeight amount) |
| Transmits a spike to a given target group and state. More...
|
|
void | safe_transmit (NeuronID id, AurynWeight amount) |
| Same as transmit but first checks if the target neuron exists and avoids segfaults that way (but it's also slower). More...
|
|
SpikeContainer * | get_pre_spikes () |
| Supplies pointer to SpikeContainer of all presynaptic spikes. More...
|
|
SpikeContainer * | get_post_spikes () |
| Returns pointer to SpikeContainer for postsynaptic spikes on this node. More...
|
|
void | add_number_of_spike_attributes (int x) |
| Set up spike delay to accomodate x additional spike attributes. More...
|
|
AurynFloat | get_spike_attribute (const NeuronID i, const int attribute_id=0) |
| Returns spike attribute belonging to the spike at position i in the get_spikes() SpikeContainer. More...
|
|
This class implements short term plasticity according to the Tsodyks-Markram synapse.
This class implements the short-term plasticity model following Markram, H., Wang, Y., Tsodyks, M., 1998. Differential signaling via the same axon of neocortical pyramidal neurons. Proc Natl Acad Sci U S A 95, 5323–5328.
also see Mongillo, G., Barak, O., Tsodyks, M., 2008. Synaptic Theory of Working Memory. Science 319, 1543–1546. doi:10.1126/science.1150769