NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT > Class Template Reference

Class implementing a feedback connection model for e-prop plasticity. More...

#include <eprop_learning_signal_connection_bsshslm_2020.h>

Inheritance diagram for nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >:
[legend]
Collaboration diagram for nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >:
[legend]

Public Types

typedef CommonSynapseProperties CommonPropertiesType
 Type of the common synapse properties.
 
typedef Connection< targetidentifierT > ConnectionBase
 Type of the connection base.
 

Public Member Functions

 eprop_learning_signal_connection_bsshslm_2020 ()
 Default constructor.
 
std::unique_ptr< SecondaryEvent > get_secondary_event ()
 Get the secondary learning signal event.
 
void check_connection (Node &s, Node &t, size_t receptor_type, const CommonPropertiesType &)
 Check if the target accepts the event and receptor type requested by the sender.
 
bool send (Event &e, size_t t, const CommonSynapseProperties &)
 Send the learning signal event.
 
void get_status (Dictionary &d) const
 Get the model attributes and their values.
 
void set_status (const Dictionary &d, ConnectorModel &cm)
 Set the values of the model attributes.
 
void set_weight (const double w)
 Set the synaptic weight to the provided value.
 
long get_delay_steps () const
 Return the delay of the connection in steps.
 
size_t get_rport () const
 
Node * get_target (const size_t tid) const
 
- Public Member Functions inherited from nest::Connection< targetidentifierT >
 Connection ()
 
 Connection (const Connection< targetidentifierT > &rhs)=default
 
Connection & operator= (const Connection< targetidentifierT > &rhs)=default
 
std::unique_ptr< SecondaryEvent > get_secondary_event ()
 Get a pointer to an instance of a SecondaryEvent if this connection supports secondary events.
 
void get_status (Dictionary &d) const
 Get all properties of this connection and put them into a dictionary.
 
void set_status (const Dictionary &d, ConnectorModel &cm)
 Set properties of this connection from the values given in dictionary.
 
void check_synapse_params (const Dictionary &d) const
 Check syn_spec dictionary for parameters that are not allowed with the given connection.
 
void calibrate (const TimeConverter &)
 Calibrate the delay of this connection to the desired resolution.
 
double get_delay () const
 Return the delay of the connection in ms.
 
long get_delay_steps () const
 Return the delay of the connection in steps.
 
void set_delay (const double delay)
 Set the delay of the connection.
 
void set_delay_steps (const long delay)
 Set the delay of the connection in steps.
 
void set_syn_id (synindex syn_id)
 Set the synapse id of the connection.
 
synindex get_syn_id () const
 Get the synapse id of the connection.
 
long get_label () const
 
void trigger_update_weight (const size_t, const std::vector< spikecounter > &, const double, const CommonSynapseProperties &)
 Triggers an update of a synaptic weight.
 
Node * get_target (const size_t tid) const
 
size_t get_rport () const
 
void set_source_has_more_targets (const bool more_targets)
 Sets a flag in the connection to signal that the following connection has the same source.
 
bool source_has_more_targets () const
 Returns a flag denoting whether the connection has source subsequent targets.
 
void disable ()
 Disables the connection.
 
bool is_disabled () const
 Returns a flag denoting if the connection is disabled.
 

Static Public Attributes

static constexpr ConnectionModelProperties properties = ConnectionModelProperties::HAS_DELAY
 Properties of the connection model.
 
- Static Public Attributes inherited from nest::Connection< targetidentifierT >
static constexpr ConnectionModelProperties properties = ConnectionModelProperties::NONE
 
static constexpr bool supports_flush_event = false
 

Private Attributes

double weight_
 Synaptic weight.
 

Additional Inherited Members

- Protected Member Functions inherited from nest::Connection< targetidentifierT >
void check_connection_ (Node &dummy_target, Node &source, Node &target, const size_t receptor_type)
 This function calls check_connection() on the sender to check if the receiver accepts the event type and receptor type requested by the sender.
 
- Protected Attributes inherited from nest::Connection< targetidentifierT >
targetidentifierT target_
 
SynIdDelay syn_id_delay_
 

Detailed Description

template<typename targetidentifierT>
class nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >

Class implementing a feedback connection model for e-prop plasticity.

Class implementing a synapse model transmitting secondary feedback learning signals for e-prop plasticity according to Bellec et al. (2020).

Member Typedef Documentation

◆ CommonPropertiesType

template<typename targetidentifierT >
typedef CommonSynapseProperties nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::CommonPropertiesType

Type of the common synapse properties.

◆ ConnectionBase

template<typename targetidentifierT >
typedef Connection< targetidentifierT > nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::ConnectionBase

Type of the connection base.

Constructor & Destructor Documentation

◆ eprop_learning_signal_connection_bsshslm_2020()

template<typename targetidentifierT >
nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::eprop_learning_signal_connection_bsshslm_2020 ( )
inline

Default constructor.

Member Function Documentation

◆ check_connection()

template<typename targetidentifierT >
void nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::check_connection ( Node &  s,
Node &  t,
size_t  receptor_type,
const CommonPropertiesType &   
)
inline

Check if the target accepts the event and receptor type requested by the sender.

References nest::Node::handles_test_event(), nest::Node::sends_secondary_event(), and nest::Event::set_sender().

Here is the call graph for this function:

◆ get_delay_steps()

template<typename targetidentifierT >
long nest::Connection< targetidentifierT >::get_delay_steps ( ) const
inline

Return the delay of the connection in steps.

Referenced by nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::send().

Here is the caller graph for this function:

◆ get_rport()

template<typename targetidentifierT >
size_t nest::Connection< targetidentifierT >::get_rport ( ) const
inline

Referenced by nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::send().

Here is the caller graph for this function:

◆ get_secondary_event()

template<typename targetidentifierT >
std::unique_ptr< SecondaryEvent > nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::get_secondary_event ( )

Get the secondary learning signal event.

◆ get_status()

template<typename targetidentifierT >
void nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::get_status ( Dictionary &  d) const

Get the model attributes and their values.

References nest::names::size_of(), and nest::names::weight().

Here is the call graph for this function:

◆ get_target()

template<typename targetidentifierT >
Node * nest::Connection< targetidentifierT >::get_target ( const size_t  tid) const
inline

Referenced by nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::send().

Here is the caller graph for this function:

◆ send()

template<typename targetidentifierT >
bool nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::send ( Event &  e,
size_t  t,
const CommonSynapseProperties &   
)
inline

◆ set_status()

template<typename targetidentifierT >
void nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::set_status ( const Dictionary &  d,
ConnectorModel &  cm 
)

Set the values of the model attributes.

References nest::names::weight().

Here is the call graph for this function:

◆ set_weight()

template<typename targetidentifierT >
void nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::set_weight ( const double  w)
inline

Set the synaptic weight to the provided value.

References nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::weight_.

Member Data Documentation

◆ properties

template<typename targetidentifierT >
constexpr ConnectionModelProperties nest::eprop_learning_signal_connection_bsshslm_2020< targetidentifierT >::properties = ConnectionModelProperties::HAS_DELAY
staticconstexpr

Properties of the connection model.

◆ weight_


The documentation for this class was generated from the following file: