23 #ifndef IAF_COND_ALPHA_MC_H
24 #define IAF_COND_ALPHA_MC_H
42 #include <gsl/gsl_errno.h>
43 #include <gsl/gsl_matrix.h>
44 #include <gsl/gsl_odeiv.h>
345 gsl_odeiv_control*
c_;
346 gsl_odeiv_evolve*
e_;
387 template <State_::StateVecElems_ elem, Compartments_ comp>
448 if ( receptor_type != 0 )
475 (*receptor_dict_)[
Name(
"soma_curr")] =
I_SOMA;
479 (*receptor_dict_)[
Name(
"proximal_curr")] =
I_PROX;
483 (*receptor_dict_)[
Name(
"distal_curr")] =
I_DIST;
511 #endif //IAF_COND_ALPHA_MC_H
const Name recordables("recordables")
List of recordable state data (Device parameters)
Definition: nest_names.h:244
iaf_cond_alpha_mc()
Definition: iaf_cond_alpha_mc.cpp:408
static const size_t NUM_SPIKE_RECEPTORS
Definition: iaf_cond_alpha_mc.h:209
Definition: iaf_cond_alpha_mc.h:192
Variables_ V_
Definition: iaf_cond_alpha_mc.h:397
double_t C_m[NCOMP]
Membrane Capacitance in pF.
Definition: iaf_cond_alpha_mc.h:260
int int_t
Integer number with at least 16 bit.
Definition: nest.h:95
Independent parameters of the model.
Definition: iaf_cond_alpha_mc.h:254
Definition of Archiving_Node which is capable of recording and managing a spike history.
void get(DictionaryDatum &) const
Store current values in dictionary.
Definition: iaf_cond_alpha_mc.cpp:307
State_ S_
Definition: iaf_cond_alpha_mc.h:396
Buffers_ B_
Definition: iaf_cond_alpha_mc.h:398
const Name receptor_type("receptor_type")
Connection parameters.
Definition: nest_names.h:240
static RecordablesMap< iaf_cond_alpha_mc > recordablesMap_
Dictionary of receptor types, leads to seg fault on exit, see #328.
Definition: iaf_cond_alpha_mc.h:407
double_t get_r_() const
Read out number of refractory steps, used by UniversalDataLogger.
Definition: iaf_cond_alpha_mc.h:391
static std::vector< Name > comp_names_
Table of compartment names.
Definition: iaf_cond_alpha_mc.h:401
double_t V_reset
Reset Potential in mV.
Definition: iaf_cond_alpha_mc.h:256
Definition: iaf_cond_alpha_mc.h:294
double_t t_ref
Refractory period in ms.
Definition: iaf_cond_alpha_mc.h:257
const Name d("d")
Specific to Izhikevich 2003.
Definition: nest_names.h:83
Exception to be thrown if the specified receptor type does not accept the event type.
Definition: exceptions.h:273
double_t tau_synI[NCOMP]
Synaptic Time Constant for Inhibitory Synapse in ms.
Definition: iaf_cond_alpha_mc.h:265
double_t I_stim_[NCOMP]
Input currents injected by CurrentEvent.
Definition: iaf_cond_alpha_mc.h:363
~iaf_cond_alpha_mc()
Definition: iaf_cond_alpha_mc.cpp:430
static const port MIN_CURR_RECEPTOR
Minimal current receptor type.
Definition: iaf_cond_alpha_mc.h:216
Parameters_ & operator=(const Parameters_ &)
needed to copy C-arrays
Definition: iaf_cond_alpha_mc.cpp:226
void set_sender(Node &)
Change pointer to sending Node.
Definition: event.h:714
static const port MIN_SPIKE_RECEPTOR
Minimal spike receptor type.
Definition: iaf_cond_alpha_mc.h:199
double_t tau_synE[NCOMP]
Synaptic Time Constant Excitatory Synapse in ms.
Definition: iaf_cond_alpha_mc.h:264
Definition: iaf_cond_alpha_mc.h:222
double_t g_L[NCOMP]
Leak Conductance in nS.
Definition: iaf_cond_alpha_mc.h:259
double_t get_y_elem_() const
Read out state vector elements, used by UniversalDataLogger First template argument is component "nam...
Definition: iaf_cond_alpha_mc.h:388
Definition: iaf_cond_alpha_mc.h:192
Represent strings by ints to facilitate fast comparison.
Definition: name.h:53
gsl_odeiv_control * c_
adaptive stepsize control function
Definition: iaf_cond_alpha_mc.h:345
gsl_odeiv_system sys_
struct describing system
Definition: iaf_cond_alpha_mc.h:347
port send_test_event(Node &, rport, synindex, bool)
Send an event to the receiving_node passed as an argument.
Definition: iaf_cond_alpha_mc.h:411
Event for electrical currents.
Definition: event.h:420
long_t rport
Connection port number to distinguish incoming connections, also called receiver port.
Definition: nest.h:147
Definition: iaf_cond_alpha_mc.h:205
Definition: iaf_cond_alpha_mc.h:293
double IntegrationStep_
current integration time step, updated by GSL
Definition: iaf_cond_alpha_mc.h:354
Definition: iaf_cond_alpha_mc.h:206
int iaf_cond_alpha_mc_dynamics(double, const double *, double *, void *)
Function computing right-hand side of ODE for GSL solver.
std::vector< RingBuffer > spikes_
buffers and sums up incoming spikes/currents
Definition: iaf_cond_alpha_mc.h:340
double_t y_[STATE_VEC_SIZE]
neuron state, must be C-array for GSL solver
Definition: iaf_cond_alpha_mc.h:302
void init_state_(const Node &proto)
Private function to initialize the state of a node to model defaults.
Definition: iaf_cond_alpha_mc.cpp:442
Definition: iaf_cond_alpha_mc.h:295
static const size_t NUM_CURR_RECEPTORS
Definition: iaf_cond_alpha_mc.h:224
A class that associates names and tokens.
Definition: dict.h:45
Map names of recordables to data access functions.
Definition: recordables_map.h:58
double_t g_conn[NCOMP-1]
Conductances connecting compartments, in nS.
Definition: iaf_cond_alpha_mc.h:258
Definition: iaf_cond_alpha_mc.h:152
Buffers_(iaf_cond_alpha_mc &)
Sets buffer pointers to 0.
Definition: iaf_cond_alpha_mc.cpp:283
void get(DictionaryDatum &) const
Definition: iaf_cond_alpha_mc.cpp:379
void handle(SpikeEvent &)
Handle incoming spike events.
Definition: iaf_cond_alpha_mc.cpp:584
Definition: iaf_cond_alpha_mc.h:296
Definition: nest_time.h:130
Definition: iaf_cond_alpha_mc.h:221
State variables of the model.
Definition: iaf_cond_alpha_mc.h:285
friend class UniversalDataLogger< iaf_cond_alpha_mc >
Definition: iaf_cond_alpha_mc.h:231
std::string get_name() const
Return class name.
Definition: node.cpp:83
const Name receptor_types("receptor_types")
Connection parameters.
Definition: nest_names.h:241
Definition: iaf_cond_alpha_mc.h:294
void set(const DictionaryDatum &)
Set values from dicitonary.
Definition: iaf_cond_alpha_mc.cpp:334
void set_status(const DictionaryDatum &d)
Definition: archiving_node.cpp:185
void get_status(DictionaryDatum &) const
Definition: iaf_cond_alpha_mc.h:459
int_t RefractoryCounts_
Definition: iaf_cond_alpha_mc.h:378
Exception to be thrown if the specified receptor type does not exist in the node. ...
Definition: exceptions.h:254
Definition: iaf_cond_alpha_mc.h:205
const Name target("target")
Connection parameters.
Definition: nest_names.h:282
Internal variables of the model.
Definition: iaf_cond_alpha_mc.h:371
double_t E_L[NCOMP]
Leak reversal Potential (aka resting potential) in mV.
Definition: iaf_cond_alpha_mc.h:263
gsl_odeiv_evolve * e_
evolution function
Definition: iaf_cond_alpha_mc.h:346
Definition: iaf_cond_alpha_mc.h:192
int_t r_
number of refractory steps remaining
Definition: iaf_cond_alpha_mc.h:303
double_t V_th
Threshold Potential in mV.
Definition: iaf_cond_alpha_mc.h:255
static size_t idx(size_t comp, StateVecElems_ elem)
Compute linear index into state array from compartment and element.
Definition: iaf_cond_alpha_mc.h:319
Parameters_ P_
Definition: iaf_cond_alpha_mc.h:395
SpikeSynapseTypes
Spike receptors.
Definition: iaf_cond_alpha_mc.h:204
StateVecElems_
Elements of state vector.
Definition: iaf_cond_alpha_mc.h:293
a node which archives spike history for the purposes of timing dependent plasticity ...
Definition: archiving_node.h:50
long_t port
Connection port number to distinguis outgoing connections.
Definition: nest.h:155
double_t step_
step size in ms
Definition: iaf_cond_alpha_mc.h:353
void update(Time const &, const long_t, const long_t)
Bring the node from state $t$ to $t+n*dt$.
Definition: iaf_cond_alpha_mc.cpp:510
double_t I_e[NCOMP]
Constant Current in pA.
Definition: iaf_cond_alpha_mc.h:266
virtual void handle(SpikeEvent &e)
Handle incoming spike events.
Definition: node.cpp:198
Definition: iaf_cond_alpha_mc.h:204
Definition: iaf_cond_alpha_mc.h:204
double double_t
Double precision floating point numbers.
Definition: nest.h:93
void set_status(const DictionaryDatum &)
Definition: iaf_cond_alpha_mc.h:489
double_t E_in[NCOMP]
Inhibitory reversal Potential in mV.
Definition: iaf_cond_alpha_mc.h:262
Compartments_
Compartments, NCOMP is number.
Definition: iaf_cond_alpha_mc.h:192
virtual port handles_test_event(SpikeEvent &, rport receptor_type)
Check if the node can handle a particular event and receptor type.
Definition: node.cpp:203
UniversalDataLogger< iaf_cond_alpha_mc > logger_
Logger for all analog data.
Definition: iaf_cond_alpha_mc.h:335
Parameters_()
Sets default parameter values.
Definition: iaf_cond_alpha_mc.cpp:164
double_t get_ms() const
Definition: nest_time.h:389
Request data to be logged/logged data to be sent.
Definition: event.h:486
static Time get_resolution()
Definition: nest_time.h:303
unsigned char synindex
Unsigned char type for enumerations of synapse types.
Definition: nest.h:115
Buffers of the model.
Definition: iaf_cond_alpha_mc.h:330
friend int iaf_cond_alpha_mc_dynamics(double, const double *, double *, void *)
Function computing right-hand side of ODE for GSL solver.
Default types used by the NEST kernel.
void get_status(DictionaryDatum &d) const
Definition: archiving_node.cpp:175
double_t PSConInit_E_[NCOMP]
initial value to normalise excitatory synaptic conductance
Definition: iaf_cond_alpha_mc.h:373
Definition: iaf_cond_alpha_mc.h:192
Event for spike information.
Definition: event.h:320
double_t E_ex[NCOMP]
Excitatory reversal Potential in mV.
Definition: iaf_cond_alpha_mc.h:261
Base class for all NEST network objects.
Definition: node.h:96
CurrentSynapseTypes
Current receptors.
Definition: iaf_cond_alpha_mc.h:221
void calibrate()
Re-calculate dependent parameters of the node.
Definition: iaf_cond_alpha_mc.cpp:490
Definition: iaf_cond_alpha_mc.h:221
double_t PSConInit_I_[NCOMP]
initial value to normalise inhibitory synaptic conductance
Definition: iaf_cond_alpha_mc.h:376
port handles_test_event(SpikeEvent &, rport)
Check if the node can handle a particular event and receptor type.
Definition: iaf_cond_alpha_mc.h:419
static const size_t STATE_VEC_SIZE
total size of state vector
Definition: iaf_cond_alpha_mc.h:299
std::vector< RingBuffer > currents_
Definition: iaf_cond_alpha_mc.h:341
long long_t
Integer number with at least 32 bit.
Definition: nest.h:96
State_(const Parameters_ &)
Default initialization.
Definition: iaf_cond_alpha_mc.cpp:254
const double e
Definition: numerics.cpp:62
gsl_odeiv_step * s_
GSL ODE stuff.
Definition: iaf_cond_alpha_mc.h:344
State_ & operator=(const State_ &)
Definition: iaf_cond_alpha_mc.cpp:273
Definition: iaf_cond_alpha_mc.h:221
Definition: iaf_cond_alpha_mc.h:207
void init_buffers_()
Private function to initialize the buffers of a node.
Definition: iaf_cond_alpha_mc.cpp:448
Definition: iaf_cond_alpha_mc.h:206
Definition: iaf_cond_alpha_mc.h:295
void set(const DictionaryDatum &, const Parameters_ &)
Definition: iaf_cond_alpha_mc.cpp:392