sPyNNaker neural_modelling 7.3.1
Loading...
Searching...
No Matches
Data Structures | Functions
timing_nearest_pair_impl.h File Reference

Timing rule using msot recent spike pair. More...

#include <neuron/plasticity/stdp/synapse_structure/synapse_structure_weight_impl.h>
#include "timing.h"
#include <neuron/plasticity/stdp/weight_dependence/weight_one_term.h>
#include <debug.h>
#include <neuron/plasticity/stdp/maths.h>

Go to the source code of this file.

Data Structures

struct  post_trace_t
 The type of post-spike traces. More...
 
struct  pre_trace_t
 The type of pre-spike traces. More...
 

Functions

static post_trace_t timing_get_initial_post_trace (void)
 Get an initial post-synaptic timing trace.
 
static post_trace_t timing_add_post_spike (uint32_t time, uint32_t last_time, post_trace_t last_trace)
 Add a post spike to the post trace.
 
static post_trace_t timing_decay_post (uint32_t time, uint32_t last_time, post_trace_t last_trace)
 
static pre_trace_t timing_add_pre_spike (uint32_t time, uint32_t last_time, pre_trace_t last_trace)
 Add a pre spike to the pre trace.
 
static update_state_t timing_apply_pre_spike (uint32_t time, pre_trace_t trace, uint32_t last_pre_time, pre_trace_t last_pre_trace, uint32_t last_post_time, post_trace_t last_post_trace, update_state_t previous_state)
 Apply a pre-spike timing rule state update.
 
static update_state_t timing_apply_post_spike (uint32_t time, post_trace_t trace, uint32_t last_pre_time, pre_trace_t last_pre_trace, uint32_t last_post_time, post_trace_t last_post_trace, update_state_t previous_state)
 Apply a post-spike timing rule state update.
 

Detailed Description

Timing rule using msot recent spike pair.

Definition in file timing_nearest_pair_impl.h.


Data Structure Documentation

◆ post_trace_t

struct post_trace_t

The type of post-spike traces.

Definition at line 25 of file timing_nearest_pair_impl.h.

Data Fields
int16_t o1
int16_t o2
uint32_t last_spike_time

◆ pre_trace_t

struct pre_trace_t

The type of pre-spike traces.

Definition at line 28 of file timing_nearest_pair_impl.h.

Data Fields
int16_t r1
int16_t r2

Function Documentation

◆ timing_get_initial_post_trace()

static post_trace_t timing_get_initial_post_trace ( void  )
inlinestatic

Get an initial post-synaptic timing trace.

Returns
the post trace

Definition at line 46 of file timing_nearest_pair_impl.h.

◆ timing_add_post_spike()

static post_trace_t timing_add_post_spike ( uint32_t  time,
uint32_t  last_time,
post_trace_t  last_trace 
)
inlinestatic

Add a post spike to the post trace.

Parameters
[in]timethe time of the spike
[in]last_timethe time of the previous spike update
[in]last_tracethe post trace to update
Returns
the updated post trace

Definition at line 56 of file timing_nearest_pair_impl.h.

◆ timing_decay_post()

static post_trace_t timing_decay_post ( uint32_t  time,
uint32_t  last_time,
post_trace_t  last_trace 
)
inlinestatic

Definition at line 65 of file timing_nearest_pair_impl.h.

◆ timing_add_pre_spike()

static pre_trace_t timing_add_pre_spike ( uint32_t  time,
uint32_t  last_time,
pre_trace_t  last_trace 
)
inlinestatic

Add a pre spike to the pre trace.

Parameters
[in]timethe time of the spike
[in]last_timethe time of the previous spike update
[in]last_tracethe pre trace to update
Returns
the updated pre trace

Definition at line 77 of file timing_nearest_pair_impl.h.

◆ timing_apply_pre_spike()

static update_state_t timing_apply_pre_spike ( uint32_t  time,
pre_trace_t  trace,
uint32_t  last_pre_time,
pre_trace_t  last_pre_trace,
uint32_t  last_post_time,
post_trace_t  last_post_trace,
update_state_t  previous_state 
)
inlinestatic

Apply a pre-spike timing rule state update.

Parameters
[in]timethe current time
[in]tracethe current pre-spike trace
[in]last_pre_timethe time of the last pre-spike
[in]last_pre_tracethe trace of the last pre-spike
[in]last_post_timethe time of the last post-spike
[in]last_post_tracethe trace of the last post-spike
[in]previous_statethe state to update
Returns
the updated state

Definition at line 94 of file timing_nearest_pair_impl.h.

◆ timing_apply_post_spike()

static update_state_t timing_apply_post_spike ( uint32_t  time,
post_trace_t  trace,
uint32_t  last_pre_time,
pre_trace_t  last_pre_trace,
uint32_t  last_post_time,
post_trace_t  last_post_trace,
update_state_t  previous_state 
)
inlinestatic

Apply a post-spike timing rule state update.

Parameters
[in]timethe current time
[in]tracethe current post-spike trace
[in]last_pre_timethe time of the last pre-spike
[in]last_pre_tracethe trace of the last pre-spike
[in]last_post_timethe time of the last post-spike
[in]last_post_tracethe trace of the last post-spike
[in]previous_statethe state to update
Returns
the updated state

Definition at line 122 of file timing_nearest_pair_impl.h.