23#ifndef CORRELATION_DETECTOR_H
24#define CORRELATION_DETECTOR_H
226 void update(
Time const&,
const long,
const long )
override;
334 if ( receptor_type > 1 )
339 return receptor_type;
354 const bool reset_required = ptmp.
set( d, *
this,
this );
356 stmp.
set( d,
P_, reset_required,
this );
Dictionary class for interface to Python and C++ API.
Definition dictionary.h:213
virtual void get_status(Dictionary &) const
Definition device.h:179
virtual void set_status(const Dictionary &)
Definition device.h:185
Base class for all NEST network objects.
Definition node.h:99
std::string get_name() const
Return class name.
Definition node.cpp:105
Common properties of all pseudo-recording devices.
Definition pseudo_recording_device.h:72
Event for spike information.
Definition event.h:418
Class to convert times from one representation to another.
Definition nest_timeconverter.h:42
Definition nest_time.h:135
static Time get_resolution()
Definition nest_time.h:325
Exception to be thrown if the specified receptor type does not exist in the node.
Definition exceptions.h:417
Definition correlation_detector.h:182
void init_state_() override
Configure state variables depending on runtime information.
Definition correlation_detector.cpp:236
std::string get_element_type() const override
Return the element type of the node.
Definition correlation_detector.h:199
std::deque< Spike_ > SpikelistType
Definition correlation_detector.h:255
PseudoRecordingDevice device_
Definition correlation_detector.h:326
void set_status(const Dictionary &) override
Change properties of the node according to the entries in the dictionary.
Definition correlation_detector.h:351
void handle(SpikeEvent &) override
Handle incoming spike events.
Definition correlation_detector.cpp:265
State_ S_
Definition correlation_detector.h:328
void get_status(Dictionary &) const override
Export properties of the node by setting entries in the status dictionary.
Definition correlation_detector.h:343
size_t handles_test_event(SpikeEvent &, size_t) override
Check if the node can handle a particular event and receptor type.
Definition correlation_detector.h:332
Parameters_ P_
Definition correlation_detector.h:327
bool has_proxies() const override
This device has proxies, so that it will receive spikes also from sources which live on other threads...
Definition correlation_detector.h:193
correlation_detector()
Definition correlation_detector.cpp:214
void calibrate_time(const TimeConverter &tc) override
Re-calculate time-based properties of the node.
Definition correlation_detector.cpp:354
void init_buffers_() override
Configure persistent internal data structures.
Definition correlation_detector.cpp:242
void update(Time const &, const long, const long) override
Advance the state of the node in time through the given interval.
Definition correlation_detector.cpp:260
void pre_run_hook() override
Re-calculate dependent parameters of the node.
Definition correlation_detector.cpp:249
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 handle(SpikeEvent &e)
Handle incoming spike events.
Definition node.cpp:265
const std::string recorder("recorder")
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33
void register_correlation_detector(const std::string &name)
Correlation detector breaks with the persistence scheme as follows: the internal buffers for storing ...
Definition correlation_detector.cpp:42
Declarations for base class Node.
Definition correlation_detector.h:262
void get(Dictionary &) const
Store current values in dictionary.
Definition correlation_detector.cpp:110
Time Tstart_
start of recording
Definition correlation_detector.h:265
Parameters_()
Sets default parameter values.
Definition correlation_detector.cpp:51
Time get_default_delta_tau()
Definition correlation_detector.h:364
Time Tstop_
end of recording
Definition correlation_detector.h:266
Time tau_max_
maximum time difference of events to detect
Definition correlation_detector.h:264
Parameters_ & operator=(const Parameters_ &)
Definition correlation_detector.cpp:80
Time delta_tau_
width of correlation histogram bins
Definition correlation_detector.h:263
bool set(const Dictionary &, const correlation_detector &, Node *)
Set values from dictionary.
Definition correlation_detector.cpp:128
Spike structure to store in the deque of recently received events.
Definition correlation_detector.h:235
Spike_(long timestep, double weight)
Definition correlation_detector.h:239
bool operator>(const Spike_ &second) const
Greater operator needed for insertion sort.
Definition correlation_detector.h:249
double weight_
Definition correlation_detector.h:237
long timestep_
Definition correlation_detector.h:236
Definition correlation_detector.h:297
std::vector< double > histogram_correction_
used for Kahan summation algorithm
Definition correlation_detector.h:307
std::vector< long > count_histogram_
Unweighted histogram.
Definition correlation_detector.h:310
std::vector< SpikelistType > incoming_
incoming spikes, sorted
Definition correlation_detector.h:299
void set(const Dictionary &, const Parameters_ &, bool, Node *)
Definition correlation_detector.cpp:170
void reset(const Parameters_ &)
Definition correlation_detector.cpp:191
State_()
initialize default state
Definition correlation_detector.cpp:95
void get(Dictionary &) const
Definition correlation_detector.cpp:119
std::vector< double > histogram_
Weighted histogram.
Definition correlation_detector.h:304
std::vector< long > n_events_
spike counters
Definition correlation_detector.h:298