23#ifndef RATE_NEURON_OPN_H
24#define RATE_NEURON_OPN_H
111template <
class TNonlinearities >
159 bool update_(
Time const&,
const long,
const long,
const bool );
161 void update(
Time const&,
const long,
const long )
override;
166 friend class UniversalDataLogger<
rate_neuron_opn< TNonlinearities > >;
245 UniversalDataLogger< rate_neuron_opn >
logger_;
298template <
class TNonlinearities >
302 update_( origin, from, to,
false );
305template <
class TNonlinearities >
310 const bool wfr_tol_exceeded = update_( origin, from, to,
true );
313 return not wfr_tol_exceeded;
316template <
class TNonlinearities >
320 if ( receptor_type != 0 )
327template <
class TNonlinearities >
331 if ( receptor_type != 0 )
338template <
class TNonlinearities >
342 if ( receptor_type != 0 )
346 return B_.logger_.connect_logging_device( dlr, recordablesMap_ );
349template <
class TNonlinearities >
358 nonlinearities_.get( d );
361template <
class TNonlinearities >
380 nonlinearities_.
set( d,
this );
Dictionary class for interface to Python and C++ API.
Definition dictionary.h:213
A node which archives spike history for the purposes of spike-timing dependent plasticity (STDP)
Definition archiving_node.h:49
void get_status(Dictionary &d) const override
Export properties of the node by setting entries in the status dictionary.
Definition archiving_node.cpp:220
void set_status(const Dictionary &d) override
Change properties of the node according to the entries in the dictionary.
Definition archiving_node.cpp:236
Request data to be logged/logged data to be sent.
Definition event.h:636
Event for rate model connections with delay.
Definition secondary_event.h:331
Event for rate model connections without delay.
Definition secondary_event.h:315
Base class for all NEST network objects.
Definition node.h:99
Map names of recordables to data access functions.
Definition recordables_map.h:61
Buffer Layout.
Definition ring_buffer.h:83
Definition nest_time.h:135
Exception to be thrown if the specified receptor type does not exist in the node.
Definition exceptions.h:417
Definition rate_neuron_opn.h:113
State_ S_
Definition rate_neuron_opn.h:289
double get_rate_() const
Read out the rate.
Definition rate_neuron_opn.h:267
Parameters_ P_
Definition rate_neuron_opn.h:288
double get_noise_() const
Read out the noise.
Definition rate_neuron_opn.h:274
void sends_secondary_event(DelayedRateConnectionEvent &) override
Required to check, if source neuron may send a SecondaryEvent.
Definition rate_neuron_opn.h:143
Buffers_ B_
Definition rate_neuron_opn.h:291
rate_neuron_opn()
Definition rate_neuron_opn_impl.h:169
void update(Time const &, const long, const long) override
Advance the state of the node in time through the given interval.
Definition rate_neuron_opn.h:300
void handle(InstantaneousRateConnectionEvent &) override
Handler for rate neuron events.
Definition rate_neuron_opn_impl.h:365
bool wfr_update(Time const &, const long, const long) override
Advance the state of the node in time through the given interval (see Node::update() for more details...
Definition rate_neuron_opn.h:307
void set_status(const Dictionary &) override
Change properties of the node according to the entries in the dictionary.
Definition rate_neuron_opn.h:363
void get_status(Dictionary &) const override
Export properties of the node by setting entries in the status dictionary.
Definition rate_neuron_opn.h:351
double get_noisy_rate_() const
Read out the noisy rate.
Definition rate_neuron_opn.h:281
void sends_secondary_event(InstantaneousRateConnectionEvent &) override
Required to check, if source neuron may send a SecondaryEvent.
Definition rate_neuron_opn.h:139
bool update_(Time const &, const long, const long, const bool)
This is the actual update function.
Definition rate_neuron_opn_impl.h:239
Node base
Definition rate_neuron_opn.h:116
size_t handles_test_event(InstantaneousRateConnectionEvent &, size_t) override
Definition rate_neuron_opn.h:318
void pre_run_hook() override
Re-calculate dependent parameters of the node.
Definition rate_neuron_opn_impl.h:219
static RecordablesMap< rate_neuron_opn< TNonlinearities > > recordablesMap_
Mapping of recordables names to access functions.
Definition rate_neuron_opn.h:294
Variables_ V_
Definition rate_neuron_opn.h:290
TNonlinearities nonlinearities_
Definition rate_neuron_opn.h:154
void init_buffers_() override
Configure persistent internal data structures.
Definition rate_neuron_opn_impl.h:195
virtual size_t handles_test_event(SpikeEvent &, size_t receptor_type)
Check if the node can handle a particular event and receptor type.
Definition node.cpp:271
virtual void sends_secondary_event(GapJunctionEvent &ge)
Required to check, if source neuron may send a SecondaryEvent.
Definition node.cpp:381
virtual void handle(SpikeEvent &e)
Handle incoming spike events.
Definition node.cpp:265
const std::string recordables("recordables")
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33
Declarations for base class Node.
Buffers of the model.
Definition rate_neuron_opn.h:229
std::vector< double > random_numbers
remembers the random_numbers in
Definition rate_neuron_opn.h:243
UniversalDataLogger< rate_neuron_opn > logger_
Logger for all analog data.
Definition rate_neuron_opn.h:245
std::vector< double > instant_rates_ex_
buffer for rate vector received
Definition rate_neuron_opn.h:238
RingBuffer delayed_rates_ex_
buffer for rate vector received by
Definition rate_neuron_opn.h:234
std::vector< double > instant_rates_in_
buffer for rate vector received
Definition rate_neuron_opn.h:240
RingBuffer delayed_rates_in_
buffer for rate vector received by
Definition rate_neuron_opn.h:236
std::vector< double > last_y_values
remembers y_values from last wfr_update
Definition rate_neuron_opn.h:242
Independent parameters of the model.
Definition rate_neuron_opn.h:174
bool linear_summation_
Target of non-linearity.
Definition rate_neuron_opn.h:188
double sigma_
Noise parameter.
Definition rate_neuron_opn.h:179
void get(Dictionary &) const
Store current values in dictionary.
Definition rate_neuron_opn_impl.h:85
bool mult_coupling_
use multiplicative coupling? Default is false
Definition rate_neuron_opn.h:191
double tau_
Time constant in ms.
Definition rate_neuron_opn.h:176
Parameters_()
Sets default parameter values.
Definition rate_neuron_opn_impl.h:61
double mu_
Mean input.
Definition rate_neuron_opn.h:182
void set(const Dictionary &, Node *node)
Definition rate_neuron_opn_impl.h:100
State variables of the model.
Definition rate_neuron_opn.h:206
double noisy_rate_
Noisy rate, i.e. rate +noise.
Definition rate_neuron_opn.h:209
double rate_
Rate.
Definition rate_neuron_opn.h:207
void get(Dictionary &) const
Definition rate_neuron_opn_impl.h:138
double noise_
Noise.
Definition rate_neuron_opn.h:208
State_()
Default initialization.
Definition rate_neuron_opn_impl.h:72
void set(const Dictionary &, Node *node)
Set values from dictionary.
Definition rate_neuron_opn_impl.h:147
Internal variables of the model.
Definition rate_neuron_opn.h:254
double P1_
Definition rate_neuron_opn.h:256
double output_noise_factor_
Definition rate_neuron_opn.h:260
normal_distribution normal_dist_
normal distribution
Definition rate_neuron_opn.h:262
double P2_
Definition rate_neuron_opn.h:257