19#ifndef _TIMING_RECURRENT_PRE_STOCHASTIC_IMPL_H_
20#define _TIMING_RECURRENT_PRE_STOCHASTIC_IMPL_H_
31 int32_t accumulator_depression_plus_one;
33 int32_t accumulator_potentiation_minus_one;
36#define _STRUCTURE_PATH(file) <neuron/plasticity/stdp/synapse_structure/file>
37#include _STRUCTURE_PATH(synapse_structure_weight_state_accumulator_window_impl.h)
66 int32_t
random = mars_kiss_fixed_point();
71 return previous_state;
82 int32_t
random = mars_kiss_fixed_point();
87 return previous_state;
void log_debug(const char *message,...)
#define STDP_FIXED_POINT_ONE
The number 1.0 in the fixed point math used by STDP.
uint32_t window_length
The window length.
Common code for recurrent timing rules.
uint16_t pre_exp_dist_lookup[STDP_FIXED_POINT_ONE]
Lookup table for picking exponentially distributed random value for pre-traces.
uint16_t post_exp_dist_lookup[STDP_FIXED_POINT_ONE]
Lookup table for picking exponentially distributed random value for post-traces.
static update_state_t timing_recurrent_calculate_post_window(update_state_t previous_state)
Update the state with the post-window information.
static update_state_t timing_recurrent_calculate_pre_window(update_state_t previous_state)
Update the state with the pre-window information.
static bool timing_recurrent_in_pre_window(uint32_t time_since_last_event, update_state_t previous_state)
Check if there was an event in the pre-window.
static bool timing_recurrent_in_post_window(uint32_t time_since_last_event, update_state_t previous_state)
Check if there was an event in the post-window.
The type of post-spike traces.
The type of pre-spike traces.
Configuration information about plasticity traces.