NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::IgnoreAndSpikeMechanism Class Reference

Class implementing an ignore-and-fire mechanism for neuron models. More...

#include <ignore_and_spike_mechanism.h>

Inheritance diagram for nest::IgnoreAndSpikeMechanism:
[legend]

Public Member Functions

 IgnoreAndSpikeMechanism ()
 Default constructor.
 
 IgnoreAndSpikeMechanism (const IgnoreAndSpikeMechanism &n)
 Copy constructor.
 
virtual ~IgnoreAndSpikeMechanism ()=default
 Virtual destructor.
 
bool spike_event_is_due (bool emit_dynamic_spike)
 Updates spike schedule and returns whether a spike should be emitted.
 
void get_status (Dictionary &d) const
 Retrieves parameters and adds them to the status dictionary.
 
void set_status (const Dictionary &d, Node *node)
 Sets and validates parameters from the status dictionary.
 

Private Member Functions

void initialize_offset ()
 Initialize variables dependent on offset.
 
void initialize_interval ()
 Initialize variables dependent on interval.
 

Private Attributes

bool ignore_and_spike_
 If True, the neuron is forced to spike in set intervals.
 
double offset_
 Temporal offset of first spike (ms).
 
double interval_
 Interval between two consecutive spikes (ms).
 
long interval_steps_
 Interval steps between two consecutive spikes.
 
long steps_until_spike_
 Remaining steps until the next spike.
 

Detailed Description

Class implementing an ignore-and-fire mechanism for neuron models.

Note
See model_details/ignore_and_spike_mechanism.rst for details.

Constructor & Destructor Documentation

◆ IgnoreAndSpikeMechanism() [1/2]

nest::IgnoreAndSpikeMechanism::IgnoreAndSpikeMechanism ( )

Default constructor.

References initialize_interval(), and initialize_offset().

Here is the call graph for this function:

◆ IgnoreAndSpikeMechanism() [2/2]

nest::IgnoreAndSpikeMechanism::IgnoreAndSpikeMechanism ( const IgnoreAndSpikeMechanism &  n)

Copy constructor.

Parameters
nThe other object to copy.

References initialize_interval(), and initialize_offset().

Here is the call graph for this function:

◆ ~IgnoreAndSpikeMechanism()

virtual nest::IgnoreAndSpikeMechanism::~IgnoreAndSpikeMechanism ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ get_status()

void nest::IgnoreAndSpikeMechanism::get_status ( Dictionary &  d) const

Retrieves parameters and adds them to the status dictionary.

Parameters
dDictionary to which parameters are added.

References nest::names::ignore_and_spike(), ignore_and_spike_, nest::names::ignore_and_spike_interval(), nest::names::ignore_and_spike_offset(), interval_, and offset_.

Referenced by nest::ArchivingNode::get_status(), and nest::EpropArchivingNodeRecurrent< hist_shift_required >::get_status().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize_interval()

void nest::IgnoreAndSpikeMechanism::initialize_interval ( )
private

Initialize variables dependent on interval.

References nest::Time::get_steps(), interval_, and interval_steps_.

Referenced by IgnoreAndSpikeMechanism(), IgnoreAndSpikeMechanism(), and set_status().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize_offset()

void nest::IgnoreAndSpikeMechanism::initialize_offset ( )
private

Initialize variables dependent on offset.

References nest::Time::get_steps(), offset_, and steps_until_spike_.

Referenced by IgnoreAndSpikeMechanism(), IgnoreAndSpikeMechanism(), and set_status().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_status()

void nest::IgnoreAndSpikeMechanism::set_status ( const Dictionary &  d,
Node *  node 
)

Sets and validates parameters from the status dictionary.

Parameters
dDictionary from which parameters are set.

References nest::names::ignore_and_spike(), ignore_and_spike_, nest::names::ignore_and_spike_interval(), nest::names::ignore_and_spike_offset(), initialize_interval(), initialize_offset(), interval_, offset_, and nest::update_value_param().

Referenced by nest::ArchivingNode::set_status(), and nest::EpropArchivingNodeRecurrent< hist_shift_required >::set_status().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ spike_event_is_due()

bool nest::IgnoreAndSpikeMechanism::spike_event_is_due ( bool  emit_dynamic_spike)
inline

Updates spike schedule and returns whether a spike should be emitted.

Parameters
emit_dynamic_spikeWhether the neuron would emit a spike dynamically.
Returns
True if a spike should be emitted, false otherwise.

References ignore_and_spike_, interval_steps_, and steps_until_spike_.

Referenced by nest::eprop_iaf::update(), nest::eprop_iaf_adapt::update(), nest::eprop_iaf_adapt_bsshslm_2020::update(), nest::eprop_iaf_bsshslm_2020::update(), nest::eprop_iaf_psc_delta::update(), nest::eprop_iaf_psc_delta_adapt::update(), and nest::iaf_psc_delta::update().

Here is the caller graph for this function:

Member Data Documentation

◆ ignore_and_spike_

bool nest::IgnoreAndSpikeMechanism::ignore_and_spike_
private

If True, the neuron is forced to spike in set intervals.

Referenced by get_status(), set_status(), and spike_event_is_due().

◆ interval_

double nest::IgnoreAndSpikeMechanism::interval_
private

Interval between two consecutive spikes (ms).

Referenced by get_status(), initialize_interval(), and set_status().

◆ interval_steps_

long nest::IgnoreAndSpikeMechanism::interval_steps_
private

Interval steps between two consecutive spikes.

Referenced by initialize_interval(), and spike_event_is_due().

◆ offset_

double nest::IgnoreAndSpikeMechanism::offset_
private

Temporal offset of first spike (ms).

Referenced by get_status(), initialize_offset(), and set_status().

◆ steps_until_spike_

long nest::IgnoreAndSpikeMechanism::steps_until_spike_
private

Remaining steps until the next spike.

Referenced by initialize_offset(), and spike_event_is_due().


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