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

Multiplicative single-term weight dependence rule. More...

#include <neuron/plasticity/stdp/maths.h>
#include <neuron/plasticity/stdp/stdp_typedefs.h>
#include <neuron/synapse_row.h>
#include <debug.h>
#include "weight_one_term.h"

Go to the source code of this file.

Data Structures

struct  plasticity_weight_region_data_t
 The configuration of the rule. More...
 
struct  weight_state_t
 The current state data for the rule. More...
 

Functions

static weight_state_t weight_get_initial (weight_t weight, index_t synapse_type)
 Gets the initial weight state.
 
static weight_state_t weight_one_term_apply_depression (weight_state_t state, int32_t depression)
 Apply the depression rule to the weight state.
 
static weight_state_t weight_one_term_apply_potentiation (weight_state_t state, int32_t potentiation)
 Apply the potentiation rule to the weight state.
 
static weight_t weight_get_final (weight_state_t state)
 Gets the final weight.
 
static void weight_decay (weight_state_t *state, int32_t decay)
 
static accum weight_get_update (weight_state_t state)
 

Detailed Description

Multiplicative single-term weight dependence rule.

Definition in file weight_multiplicative_impl.h.


Data Structure Documentation

◆ plasticity_weight_region_data_t

struct plasticity_weight_region_data_t

The configuration of the rule.

Definition at line 33 of file weight_additive_one_term_impl.h.

Data Fields
accum min_weight Minimum weight.
accum max_weight Maximum weight.
accum a2_plus Scaling factor for weight delta on potentiation.

Amount to move weight on potentiation.

accum a2_minus Scaling factor for weight delta on depression.

Amount to move weight on depression.

accum a3_plus Scaling factor for weight delta on potentiation.
accum a3_minus Scaling factor for weight delta on depression.

◆ weight_state_t

struct weight_state_t

The current state data for the rule.

Definition at line 42 of file weight_additive_one_term_impl.h.

Data Fields
accum weight The starting weight.

The current weight.

The weight.

uint32_t weight_shift Weight shift to S1615 version.

The shift to use when multiplying.

Shift of weight to and from S1615 format.

const plasticity_weight_region_data_t * weight_region Reference to the configuration data.

Function Documentation

◆ weight_get_initial()

static weight_state_t weight_get_initial ( weight_t  weight,
index_t  synapse_type 
)
inlinestatic

Gets the initial weight state.

Parameters
[in]weightThe weight at the start
[in]synapse_typeThe type of synapse involved
Returns
The initial weight state.

Definition at line 62 of file weight_multiplicative_impl.h.

◆ weight_one_term_apply_depression()

static weight_state_t weight_one_term_apply_depression ( weight_state_t  state,
int32_t  depression 
)
inlinestatic

Apply the depression rule to the weight state.

Parameters
[in]stateThe weight state to update
[in]depressionThe amount of depression to apply
Returns
the updated weight state

Definition at line 80 of file weight_multiplicative_impl.h.

◆ weight_one_term_apply_potentiation()

static weight_state_t weight_one_term_apply_potentiation ( weight_state_t  state,
int32_t  potentiation 
)
inlinestatic

Apply the potentiation rule to the weight state.

Parameters
[in]stateThe weight state to update
[in]potentiationThe amount of potentiation to apply
Returns
the updated weight state

Definition at line 95 of file weight_multiplicative_impl.h.

◆ weight_get_final()

static weight_t weight_get_final ( weight_state_t  state)
inlinestatic

Gets the final weight.

Parameters
[in]stateThe updated weight state
Returns
The new weight.

Definition at line 112 of file weight_multiplicative_impl.h.

◆ weight_decay()

static void weight_decay ( weight_state_t state,
int32_t  decay 
)
inlinestatic

Definition at line 116 of file weight_multiplicative_impl.h.

◆ weight_get_update()

static accum weight_get_update ( weight_state_t  state)
inlinestatic

Definition at line 120 of file weight_multiplicative_impl.h.