NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest Namespace Reference

Namespace for the NEST simulation kernel. More...

Namespaces

namespace  names
 This namespace contains global name std::string objects.
 
namespace  timers
 

Classes

class  AbstractLayer
 Abstract base class for Layers of unspecified dimension. More...
 
class  AbstractMask
 Abstract base class for masks with unspecified dimension. More...
 
class  ac_generator
 
class  AllMask
 Mask which covers all of space. More...
 
class  AllToAllBuilder
 
class  amat2_psc_exp
 
class  AMPA
 
class  AMPA_NMDA
 
class  AnchoredMask
 Mask shifted by an anchor. More...
 
class  ArchivingNode
 A node which archives spike history for the purposes of spike-timing dependent plasticity (STDP) More...
 
class  ArrayDoubleParameter
 Array parameter classes, returning double values in order. More...
 
class  ArrayLongParameter
 Array parameter classes, returning integer values in order. More...
 
struct  AssignedRanks
 
class  BackendAlreadyRegistered
 
class  BackendNotPrepared
 
class  BackendPrepared
 
class  BadDelay
 Exception to be thrown if an invalid delay is used in a connection. More...
 
class  BadParameter
 Exception to be thrown if a parameter cannot be set. More...
 
class  BadParameterValue
 Exception to be thrown if a parameter value is not acceptable. More...
 
class  BadProperty
 Exception to be thrown if a status parameter is incomplete or inconsistent. More...
 
class  BallMask
 Mask defining a circular or spherical region. More...
 
class  BaseRandomGenerator
 Base class for RNG engine wrappers. More...
 
class  BaseRandomGeneratorFactory
 Base class for random generator factory. More...
 
class  bernoulli_synapse
 
class  BernoulliBuilder
 
class  binary_neuron
 Binary stochastic neuron with linear or sigmoidal gain function. More...
 
class  BipartiteConnBuilder
 Abstract base class for Bipartite ConnBuilders which form the components of ConnBuilder. More...
 
class  BipartiteConnBuilderFactory
 Factory class for bipartite ConnBuilders. More...
 
class  BoolIndicatorUInt64
 A wrapper class for an integer that is only allowed to take the values 0 and 1. More...
 
struct  Box
 A box is defined by the lower left corner (minimum coordinates) and the upper right corner (maximum coordinates). More...
 
class  BoxMask
 Mask defining a box region. More...
 
class  BufferResizeLog
 Collect information on spike transmission buffer resizing. More...
 
class  clopath_synapse
 
class  ClopathArchivingNode
 An archiving node which additionally archives parameters and buffers needed for the Clopath plasticity rule. More...
 
class  cm_default
 
class  CommonPropertiesHomW
 Class containing the common properties for all synapses with common weight. More...
 
class  CommonSynapseProperties
 Class containing the common properties for all connections of a certain type. More...
 
class  ComparingParameter
 Parameter class representing the comparison of two parameters. More...
 
class  Compartment
 
class  CompartmentCurrents
 
class  CompTree
 
class  ConditionalParameter
 Parameter class choosing a value based on a comparing parameter. More...
 
class  ConductanceEvent
 Event for electrical conductances. More...
 
class  ConnBuilder
 Class representing a connection builder which may be bi- or tripartite. More...
 
class  Connection
 Base class for representing connections. More...
 
class  ConnectionCreator
 This class is a representation of the dictionary of connection properties given as an argument to the ConnectLayers function. More...
 
class  ConnectionID
 
class  ConnectionLabel
 The class ConnectionLabel enables synapse model to be labeled by a positive integer. More...
 
class  ConnectionManager
 
class  Connector
 Homogeneous connector, contains synapses of one particular type (syn_id_). More...
 
class  ConnectorBase
 Base class to allow storing Connectors for different synapse types in vectors. More...
 
class  ConnectorModel
 
class  ConnParameter
 
class  ConnTestDummyNodeBase
 Base class for dummy nodes used in connection testing. More...
 
class  ConstantParameter
 Parameter with constant value. More...
 
class  cont_delay_synapse
 
class  ConverseMask
 Mask oriented in the opposite direction. More...
 
class  correlation_detector
 
class  correlomatrix_detector
 
class  correlospinmatrix_detector
 
class  CosParameter
 Parameter class representing the cosine of a parameter. More...
 
class  CSDMapEntry
 Entry of compressed_spike_data_map_. More...
 
class  CurrentEvent
 Event for electrical currents. More...
 
class  CycleTimeLog
 Collect cycle duration and spike-count information for individual update cycles. More...
 
class  DataAccessFunctor
 Class that reads out state vector elements, used by UniversalDataLogger. More...
 
class  DataEvent
 Event for transmitting arbitrary data. More...
 
class  DataLoggingReply
 Provide logged data through request transmitting reference. More...
 
class  DataLoggingRequest
 Request data to be logged/logged data to be sent. More...
 
class  DataSecondaryEvent
 Template class for the storage and communication of a std::vector of type DataType. More...
 
class  dc_generator
 
class  DelayChecker
 
class  DelayedRateConnectionEvent
 Event for rate model connections with delay. More...
 
class  DeprecationWarning
 
class  Device
 Class implementing common interface and properties common for all devices. More...
 
class  DeviceNode
 Base class for device objects. More...
 
class  DifferenceMask
 Mask combining two masks with a minus operation, the difference. More...
 
class  DifferenceParameter
 Parameter class representing the difference of two parameters. More...
 
class  diffusion_connection
 
class  DiffusionConnectionEvent
 Event for diffusion connections (rate model connections for the siegert_neuron). More...
 
class  DimensionMismatch
 Exception to be thrown if the dimensions of two or more objects do not agree. More...
 
class  DimensionParameter
 Position-generating Parameter class. More...
 
class  DistributionError
 Exception to be thrown if a problem with the distribution of elements is encountered. More...
 
class  DoubleDataEvent
 
class  DSCurrentEvent
 "Callback request event" for use in Device. More...
 
class  DSSpikeEvent
 "Callback request event" for use in Device. More...
 
class  DynamicModuleManagementError
 Exception to be thrown if loading or unloading a dynamically loaded module fails. More...
 
class  DynamicRecordablesMap
 Map names of recordables to DataAccessFunctors. More...
 
class  EllipseMask
 Mask defining an elliptical or ellipsoidal region. More...
 
struct  EnableBitMaskOperators
 These methods support type-safe bitfields using C++'s enum classes. More...
 
struct  EnableBitMaskOperators< ConnectionModelProperties >
 
class  eprop_iaf
 Class implementing a LIF neuron model for e-prop plasticity with additional biological features. More...
 
class  eprop_iaf_adapt
 Class implementing an adaptive LIF neuron model for e-prop plasticity with additional biological features. More...
 
class  eprop_iaf_adapt_bsshslm_2020
 Class implementing an adaptive LIF neuron model for e-prop plasticity. More...
 
class  eprop_iaf_bsshslm_2020
 Class implementing a LIF neuron model for e-prop plasticity. More...
 
class  eprop_iaf_psc_delta
 Class implementing a LIF neuron model for e-prop plasticity with additional biological features. More...
 
class  eprop_iaf_psc_delta_adapt
 Class implementing an adaptive LIF neuron model for e-prop plasticity with additional biological features. More...
 
class  eprop_learning_signal_connection
 Class implementing a feedback connection model for e-prop plasticity with additional biological features. More...
 
class  eprop_learning_signal_connection_bsshslm_2020
 Class implementing a feedback connection model for e-prop plasticity. More...
 
class  eprop_readout
 Class implementing a readout neuron model for e-prop plasticity with additional biological features. More...
 
class  eprop_readout_bsshslm_2020
 Class implementing a readout neuron model for e-prop plasticity. More...
 
class  eprop_synapse
 Class implementing a synapse model for e-prop plasticity with additional biological features. More...
 
class  eprop_synapse_bsshslm_2020
 Class implementing a synapse model for e-prop plasticity. More...
 
class  EpropArchivingNode
 Base class implementing archiving for node models supporting e-prop plasticity. More...
 
class  EpropArchivingNodeReadout
 Class implementing an intermediate archiving node model for readout node models supporting e-prop plasticity. More...
 
class  EpropArchivingNodeRecurrent
 Class implementing an intermediate archiving node model for recurrent node models supporting e-prop plasticity. More...
 
class  EpropSynapseBSSHSLM2020CommonProperties
 Base class implementing common properties for e-prop synapses. More...
 
class  EpropSynapseCommonProperties
 Base class implementing common properties for e-prop synapses with additional biological features. More...
 
class  Event
 Encapsulate information sent between nodes. More...
 
class  EventDeliveryManager
 
class  ExpDistParameter
 Parameter class representing an exponential distribution applied on a parameter. More...
 
class  ExponentialParameter
 Random parameter with exponential distribution. More...
 
class  ExpParameter
 Parameter class representing the exponential of a parameter. More...
 
class  FixedInDegreeBuilder
 
class  FixedOutDegreeBuilder
 
class  FixedTotalNumberBuilder
 
class  FlushEventMechanism
 Class implementing a flush event mechanism for neuron models. More...
 
class  FreeLayer
 Layer with free positioning of neurons, positions specified by user. More...
 
class  GABA
 
class  GaborParameter
 
class  gainfunction_erfc
 
class  gainfunction_ginzburg
 
class  gainfunction_mcculloch_pitts
 
class  gamma_sup_generator
 
class  GammaParameter
 Parameter class representing a gamma distribution applied on a parameter. More...
 
class  gap_junction
 
class  GapJunctionEvent
 Event for gap-junction information. More...
 
class  Gaussian2DParameter
 Parameter class representing a gaussian distribution in two dimensions applied on a parameter. More...
 
class  GaussianParameter
 Parameter class representing a gaussian distribution applied on a parameter. More...
 
class  GenericBipartiteConnBuilderFactory
 Generic factory class for bipartite ConnBuilder objects. More...
 
class  GenericConnectorModel
 
class  GenericFactory
 Generic Factory class for objects deriving from a base class BaseT. More...
 
class  GenericGrowthCurveFactory
 Generic factory class for GrowthCurve objects. More...
 
class  GenericModel
 Generic Model template. More...
 
class  GenericThirdConnBuilderFactory
 Generic factory class for tripartite ConnBuilder objects. More...
 
class  gif_psc_exp
 
class  gif_psc_exp_multisynapse
 
class  glif_psc
 
class  glif_psc_double_alpha
 
class  GridLayer
 Layer with neurons placed in a grid. More...
 
class  GridMask
 Mask defined in terms of grid points rather than spacial coordinates. More...
 
class  GrowthCurve
 Defines the way the number of synaptic elements changes through time according to the calcium concentration of the neuron. More...
 
class  GrowthCurveFactory
 Factory class for generating objects of type GrowthCurve. More...
 
class  GrowthCurveGaussian
 Gaussian version of a growth curve. More...
 
class  GrowthCurveLinear
 Linear version of a growth curve. More...
 
class  GrowthCurveSigmoid
 Sigmoid version of a growth curve. More...
 
class  GSLSolverFailure
 Exception to be thrown if a GSL solver does not return GSL_SUCCESS. More...
 
class  histentry
 Class to represent a single entry in the spiking history of the ArchivingNode. More...
 
class  histentry_extended
 Class to represent a single entry in the spiking history of the ClopathArchivingNode or the UrbanczikArchivingNode. More...
 
class  HistEntryEprop
 Base class implementing history entries for e-prop plasticity. More...
 
class  HistEntryEpropFiringRateReg
 Class implementing entries of the firing rate regularization history for e-prop plasticity. More...
 
class  HistEntryEpropReadout
 Class implementing entries of the readout node model's history of e-prop dynamic variables. More...
 
class  HistEntryEpropRecurrent
 Class implementing entries of the recurrent node model's history of e-prop dynamic variables. More...
 
class  HistEntryEpropUpdate
 Class implementing entries of the update history for e-prop plasticity. More...
 
class  ht_synapse
 
class  iaf_chs_2007
 
class  iaf_psc_alpha
 
class  iaf_psc_alpha_multisynapse
 
class  iaf_psc_alpha_ps
 
class  iaf_psc_delta
 
class  iaf_psc_delta_ps
 
class  iaf_psc_exp
 
class  iaf_psc_exp_htum
 
class  iaf_psc_exp_multisynapse
 
class  iaf_psc_exp_ps
 
class  iaf_psc_exp_ps_lossless
 
class  iaf_tum_2000
 
class  ignore_and_fire
 
class  IgnoreAndSpikeMechanism
 Class implementing an ignore-and-fire mechanism for neuron models. More...
 
class  IllegalConnection
 To be thrown if a connection is not possible. More...
 
class  IncompatibleReceptorType
 Exception to be thrown if the specified receptor type does not accept the event type. More...
 
class  InexistentConnection
 To be thrown if a connection does not exists but something is to be done with it. More...
 
class  inhomogeneous_poisson_generator
 
class  InstantaneousRateConnectionEvent
 Event for rate model connections without delay. More...
 
class  InternalError
 Exception to be thrown if an internal error occurs. More...
 
class  IntersectionMask
 Mask combining two masks with a Boolean AND, the intersection. More...
 
class  InvalidDefaultResolution
 Exception to be thrown on prototype construction if Time objects incompatible. More...
 
class  InvalidTimeInModel
 Exception to be thrown on instance construction if Time objects incompatible. More...
 
class  IOError
 Exception to be thrown if an error occured in an I/O operation. More...
 
class  IOManager
 Manager to handle everything related to input and output. More...
 
class  izhikevich
 
class  jonke_synapse
 
class  JonkeCommonProperties
 Class containing the common properties for all synapses of type dopamine connection. More...
 
class  K
 Channel taken from the following .mod file: https://senselab.med.yale.edu/ModelDB/ShowModel?model=140828&file=/Branco_2010/mod.files/kv.mod#tabs-2. More...
 
class  KernelException
 Base class for all Kernel exceptions. More...
 
class  KernelManager
 Global properties of the simulation kernel. More...
 
class  KeyError
 Exception to be thrown if when trying to delete an entry from DynamicRecordablesMap that does not exist. More...
 
class  Layer
 Abstract base class for Layer of given dimension (D=2 or 3). More...
 
class  LayerExpected
 
class  LayerMetadata
 Class containing spatial information to be used as metadata in a NodeCollection. More...
 
class  LayerNodeExpected
 
class  LearningSignalConnectionEvent
 Event for learning signal connections. More...
 
class  ListRingBuffer
 
class  LocalNodeExpected
 
class  LoggingEvent
 
class  LoggingManager
 
class  LognormalParameter
 Random parameter with lognormal distribution. More...
 
class  ManagerInterface
 Interface for kernel manager classes. More...
 
class  Mask
 Abstract base class for masks with given dimension. More...
 
class  MaskedLayer
 Class for applying masks to layers. More...
 
class  mat2_psc_exp
 
class  MaxParameter
 Parameter class representing the maximum of a parameter's value and a given value. More...
 
class  MinParameter
 Parameter class representing the minimum of a parameter's value and a given value. More...
 
class  mip_generator
 
class  Model
 Base class for all Models. More...
 
class  ModelInUse
 Exception to be thrown if a (neuron/synapse) model with the the specified ID is used within the network and the providing module hence cannot be uninstalled. More...
 
class  ModelManager
 
class  modelrange
 
class  ModelRangeManager
 
class  ModuleManager
 
class  MPIManager
 
class  MultiChannelInputBuffer
 
class  MultiIndex
 An index into a multidimensional array. More...
 
class  multimeter
 
class  MultRBuffer
 
class  MUSICManager
 Encapsulate all calls to MUSIC. More...
 
class  Na
 Channel taken from the following .mod file: https://senselab.med.yale.edu/ModelDB/ShowModel?model=140828&file=/Branco_2010/mod.files/na.mod#tabs-2. More...
 
class  NamingConflict
 Throw if an existing name is attempted to be redefined. More...
 
class  nc_const_iterator
 Iterator for NodeCollections. More...
 
class  NESTExtensionInterface
 
class  NewModelNameExists
 Exception to be thrown if a name requested for a user-defined model exist already. More...
 
class  NMDA
 
class  Node
 Base class for all NEST network objects. More...
 
class  NodeCollection
 Superclass for NodeCollections. More...
 
class  NodeCollectionComposite
 Subclass for the composite NodeCollection type. More...
 
class  NodeCollectionMetadata
 Class for Metadata attached to NodeCollection. More...
 
class  NodeCollectionPrimitive
 Subclass for the primitive NodeCollection type. More...
 
class  NodeIDTriple
 Represent single node entry in node collection. More...
 
class  NodeManager
 
class  NodePosParameter
 Node position parameter. More...
 
class  NodeWithProxiesExpected
 
class  noise_generator
 
class  nonlinearities_gauss_rate
 
class  nonlinearities_lin_rate
 
class  nonlinearities_sigmoid_rate
 
class  nonlinearities_sigmoid_rate_gg_1998
 
class  nonlinearities_tanh_rate
 
class  nonlinearities_threshold_lin_rate
 
struct  NoOpStopwatch
 
class  NormalParameter
 Random parameter with normal distribution. More...
 
class  NoThreadSiblingsAvailable
 Exception to be thrown if the specified Node does not exist. More...
 
class  NotImplemented
 Exception to be thrown if a feature is unavailable. More...
 
class  Ntree
 A Ntree object represents a subtree or leaf in a Ntree structure. More...
 
class  NumericalInstability
 Exception to be thrown if numerical instabilities are detected. More...
 
class  OffGridSpikeData
 
struct  OffGridSpikeDataWithRank
 Combine target rank and spike data information for storage in emitted_off_grid_spikes_register. More...
 
class  OffGridTarget
 
class  OneToOneBuilder
 
class  Parameter
 Abstract base class for parameters. More...
 
class  ParameterConnParameterWrapper
 
class  parrot_neuron
 
class  parrot_neuron_ps
 
class  PerThreadBoolIndicator
 A thread-safe vector to keep track of the status across threads, for example during gather operations. More...
 
class  poisson_generator
 
class  poisson_generator_ps
 
class  PoissonBuilder
 
class  Position
 
class  PowParameter
 Parameter class representing the parameter raised to the power of an exponent. More...
 
class  pp_psc_delta
 
class  ppd_sup_generator
 
struct  PrimitiveSortOp
 Functor for sorting a vector of NodeCollectionPrimitives. More...
 
class  ProductParameter
 Parameter class representing the product of two parameters. More...
 
class  proxynode
 Proxy to provide Nodes on remote machines. More...
 
class  PseudoRecordingDevice
 Common properties of all pseudo-recording devices. More...
 
class  pulsepacket_generator
 
class  quantal_stp_synapse
 
class  QuotientParameter
 Parameter class representing the quotient of two parameters. More...
 
class  RandomDistribution
 Wrapper for distributions. More...
 
class  RandomGenerator
 Wrapper for RNG engines. More...
 
class  RandomGeneratorFactory
 
class  RandomManager
 Manage the kernel's random number generators. More...
 
class  RangeCheck
 Exception to be thrown if a given array has the wrong size. More...
 
class  rate_connection_delayed
 
class  rate_connection_instantaneous
 
class  rate_neuron_ipn
 
class  rate_neuron_opn
 
class  rate_transformer_node
 
class  RateEvent
 Event for firing rate information. More...
 
class  RecordablesMap
 Map names of recordables to data access functions. More...
 
class  RecordingBackend
 Abstract base class for all NESTio recording backends. More...
 
class  RecordingBackendASCII
 ASCII specialization of the RecordingBackend interface. More...
 
class  RecordingBackendMemory
 Memory specialization of the RecordingBackend interface. More...
 
class  RecordingBackendMPI
 A recording backend for sending information with MPI. More...
 
class  RecordingBackendScreen
 A simple recording backend implementation that prints all recorded data to screen. More...
 
class  RecordingBackendSIONlib
 
class  RecordingDevice
 Base class for all recording devices. More...
 
class  RedrawParameter
 Parameter class redrawing a parameter value if it is outside of specified limits. More...
 
class  RingBuffer
 Buffer Layout. More...
 
class  ScalarDoubleParameter
 Single double value. More...
 
class  ScalarIntegerParameter
 Single integer value. More...
 
class  SecondaryEvent
 Base class of secondary events. More...
 
class  SecondaryTargetDataFields
 
class  SendBufferPosition
 This class simplifies keeping track of write position in MPI buffer while collocating spikes. More...
 
class  sic_connection
 
class  SICEvent
 Event for slow inward current (SIC) connections between astrocytes and neurons. More...
 
class  SimulationManager
 
class  SinParameter
 Parameter class representing the sine of a parameter. More...
 
class  sinusoidal_poisson_generator
 
class  SliceRingBuffer
 Queue for all spikes arriving into a neuron. More...
 
class  Source
 Stores the node ID of a presynaptic neuron and the number of local targets, along with a flag, whether this entry has been processed yet. More...
 
class  SourceTable
 This data structure stores the node IDs of presynaptic neurons during postsynaptic connection creation, before the connection information has been transferred to the presynaptic side. More...
 
struct  SourceTablePosition
 Three-tuple to store position in 3d vector of sources. More...
 
class  SparseNodeArray
 Sparse representation of local nodes. More...
 
class  SpatialDistanceParameter
 Parameter representing the spatial distance between two nodes, optionally in a specific dimension. More...
 
class  SPBuilder
 
class  spike_dilutor
 
class  spike_generator
 
class  spike_recorder
 
class  spike_train_injector
 
class  spikecounter
 
class  SpikeData
 Used to communicate spikes. More...
 
struct  SpikeDataWithRank
 Combine target rank and spike data information for storage in emitted_spikes_register. More...
 
class  SpikeEvent
 Event for spike information. More...
 
class  spin_detector
 
class  SPManager
 The SPManager class is in charge of managing the dynamic creation and deletion of synapses in the simulation when structural plasticity is enabled. More...
 
class  static_synapse
 
class  static_synapse_hom_w
 
struct  StaticAssert
 Compile time assertions. More...
 
struct  StaticAssert< true >
 
class  stdp_dopamine_synapse
 
class  stdp_facetshw_synapse_hom
 Class representing an STDP connection with homogeneous parameters, i.e. More...
 
class  stdp_nn_pre_centered_synapse
 
class  stdp_nn_restr_synapse
 
class  stdp_nn_symm_synapse
 
class  stdp_pl_synapse_hom
 
class  stdp_synapse
 
class  stdp_synapse_hom
 
class  stdp_triplet_synapse
 
class  STDPDopaCommonProperties
 Class containing the common properties for all synapses of type dopamine connection. More...
 
class  STDPFACETSHWHomCommonProperties
 Class containing the common properties for all synapses of type stdp_facetshw_synapse_hom. More...
 
class  STDPHomCommonProperties
 Class containing the common properties for all synapses of type stdp_synapse_hom. More...
 
class  STDPPLHomCommonProperties
 Class containing the common properties for all synapses of type stdp_pl_synapse_hom. More...
 
class  step_current_generator
 
class  step_rate_generator
 
class  StepMultipleRequired
 Exception to be thrown if a Time object should be multiple of the resolution. More...
 
class  StimulationBackend
 Abstract base class for all NESTio stimulation backends. More...
 
class  StimulationBackendMPI
 A simple input backend MPI implementation. More...
 
class  StimulationDevice
 Base class for common properties of StimulationDevices. More...
 
class  Stopwatch
 This template has two template arguments. More...
 
class  StructuralPlasticityNode
 Implements functionality related to structural synaptic plasticity. More...
 
class  SumParameter
 Parameter class representing the sum of two parameters. More...
 
class  SymmetricBernoulliBuilder
 
class  SynapticElement
 Synaptic element of a node (axonal bouton or dendritic spine) for the purposes of structural plasticity. More...
 
struct  SynIdDelay
 
class  Target
 check legal size More...
 
class  TargetData
 Used to communicate part of the connection infrastructure from post- to presynaptic side. More...
 
class  TargetDataFields
 
class  TargetIdentifierIndex
 Class providing compact (hpc) target identified by index. More...
 
class  TargetIdentifierPtrRport
 Class providing classic target identified information with target pointer and rport. More...
 
class  TargetSendBufferPosition
 This class simplifies keeping track of write position in MPI buffer while collocating targets. More...
 
class  TargetTable
 This data structure stores all targets of the local neurons. More...
 
class  TargetTableDevices
 This data structure stores the connections between local neurons and devices. More...
 
class  ThirdBernoulliWithPoolBuilder
 Build third-factor connectivity based on Bernoulli trials, selecting third factor nodes from a fixed pool per target node. More...
 
class  ThirdConnBuilderFactory
 Factory class for Third-factor ConnBuilders. More...
 
class  ThirdInBuilder
 Builder creating "thírd in" connections based on data from "third out" builder. More...
 
class  ThirdOutBuilder
 Builder for connections from third-factor nodes to primary target populations. More...
 
class  Time
 
class  TimeConverter
 Class to convert times from one representation to another. More...
 
class  TimeMultipleRequired
 Exception to be thrown if a Time object should be a multiple of another. More...
 
class  tsodyks2_synapse
 
class  tsodyks_synapse
 
class  tsodyks_synapse_hom
 
class  TsodyksHomCommonProperties
 Class containing the common properties for all synapses of type tsodyks_synapse_hom. More...
 
class  TypeMismatch
 Exception to be thrown if a given type does not match the expected type. More...
 
class  UnaccessedDictionaryEntry
 Not all elements in a Dictionary have been accessed. More...
 
class  UndefinedName
 
class  UnexpectedEvent
 Exception to be thrown by the event handler of a node if it receives an event it cannot handle. More...
 
class  UniformIntParameter
 Random parameter with uniform distribution in [0,max), yielding integer values. More...
 
class  UniformParameter
 Random parameter with uniform distribution in [min,max). More...
 
class  UnionMask
 Mask combining two masks with a Boolean OR, the sum. More...
 
class  UnknownCompartment
 
class  UnknownComponent
 Exception to be thrown if a component with the the specified name does not exist. More...
 
class  UnknownModelName
 Exception to be thrown if a model with the the specified name does not exist. More...
 
class  UnknownNode
 Exception to be thrown if the specified Node does not exist. More...
 
class  UnknownPort
 To be thrown if a port does not exists. More...
 
class  UnknownReceptorType
 Exception to be thrown if the specified receptor type does not exist in the node. More...
 
class  UnknownSynapseType
 Exception to be thrown if the specified Synapse type does not exist. More...
 
class  UnknownThread
 Exception to be thrown if a thread id outside the range encountered. More...
 
class  UnmatchedSteps
 
class  UnsupportedEvent
 Exception to be thrown by a Connection object if a connection with an unsupported event type is attempted. More...
 
class  urbanczik_synapse
 
class  UrbanczikArchivingNode
 An archiving node which additionally archives parameters and buffers needed for the Urbanczik-Senn plasticity rule. More...
 
class  vogels_sprekeler_synapse
 
class  voltmeter
 
class  volume_transmitter
 
class  VPManager
 
class  weight_recorder
 
class  WeightOptimizer
 Base class implementing a weight optimizer model. More...
 
class  WeightOptimizerAdam
 Base class implementing an Adam weight optimizer model. More...
 
class  WeightOptimizerCommonProperties
 Base class implementing common properties of a weight optimizer model. More...
 
class  WeightOptimizerCommonPropertiesAdam
 Class implementing common properties of an Adam weight optimizer model. More...
 
class  WeightOptimizerCommonPropertiesGradientDescent
 Class implementing common properties of a gradient descent weight optimizer model. More...
 
class  WeightOptimizerGradientDescent
 Base class implementing a gradient descent weight optimizer model. More...
 
class  WeightRecorderEvent
 Event for recording the weight of a spike. More...
 

Typedefs

typedef void(* deliver_logging_event_ptr) (const LoggingEvent &e)
 
typedef long long tic_t
 Type for Time tics.
 
typedef size_t synindex
 For enumerations of synapse types.
 
typedef unsigned short targetindex
 Unsigned short type for compact target representation.
 
typedef binary_neuron< gainfunction_erfc > erfc_neuron
 
typedef rate_neuron_ipn< nonlinearities_gauss_rate > gauss_rate_ipn
 
typedef rate_transformer_node< nonlinearities_gauss_rate > rate_transformer_gauss
 
typedef binary_neuron< gainfunction_ginzburg > ginzburg_neuron
 
typedef rate_neuron_ipn< nonlinearities_lin_rate > lin_rate_ipn
 
typedef rate_neuron_opn< nonlinearities_lin_rate > lin_rate_opn
 
typedef rate_transformer_node< nonlinearities_lin_rate > rate_transformer_lin
 
typedef binary_neuron< gainfunction_mcculloch_pitts > mcculloch_pitts_neuron
 
typedef rate_neuron_ipn< nonlinearities_sigmoid_rate > sigmoid_rate_ipn
 
typedef rate_transformer_node< nonlinearities_sigmoid_rate > rate_transformer_sigmoid
 
typedef rate_neuron_ipn< nonlinearities_sigmoid_rate_gg_1998 > sigmoid_rate_gg_1998_ipn
 
typedef rate_transformer_node< nonlinearities_sigmoid_rate_gg_1998 > rate_transformer_sigmoid_gg_1998
 
typedef rate_neuron_ipn< nonlinearities_tanh_rate > tanh_rate_ipn
 
typedef rate_neuron_opn< nonlinearities_tanh_rate > tanh_rate_opn
 
typedef rate_transformer_node< nonlinearities_tanh_rate > rate_transformer_tanh
 
typedef rate_neuron_ipn< nonlinearities_threshold_lin_rate > threshold_lin_rate_ipn
 
typedef rate_neuron_opn< nonlinearities_threshold_lin_rate > threshold_lin_rate_opn
 
typedef rate_transformer_node< nonlinearities_threshold_lin_rate > rate_transformer_threshold_lin
 
typedef MPIManager::OffGridSpike OffGridSpike
 
typedef std::shared_ptr< AbstractLayer > AbstractLayerPTR
 
using MaskPTR = std::shared_ptr< AbstractMask >
 
using ParameterFactory = GenericFactory< Parameter >
 
using MaskFactory = GenericFactory< AbstractMask >
 
using MaskCreatorFunction = MaskFactory::CreatorFunction
 
using NodeCollectionPTR = std::shared_ptr< NodeCollection >
 
using NodeCollectionMetadataPTR = std::shared_ptr< NodeCollectionMetadata >
 
using ParameterPTR = std::shared_ptr< Parameter >
 
using RngPtr = BaseRandomGenerator *
 
using uniform_int_distribution = RandomDistribution< std::uniform_int_distribution< unsigned long > >
 
using uniform_real_distribution = RandomDistribution< std::uniform_real_distribution<> >
 
using normal_distribution = RandomDistribution< std::normal_distribution<> >
 
using lognormal_distribution = RandomDistribution< std::lognormal_distribution<> >
 
using binomial_distribution = RandomDistribution< std::binomial_distribution< unsigned long > >
 
using gamma_distribution = RandomDistribution< std::gamma_distribution<> >
 
using exponential_distribution = RandomDistribution< std::exponential_distribution<> >
 
using discrete_distribution = RandomDistribution< std::discrete_distribution< unsigned long > >
 
using poisson_distribution = RandomDistribution< std::poisson_distribution< unsigned long > >
 
using success_csdmapentry_size = StaticAssert< sizeof(CSDMapEntry)==8 >::success
 check legal size
 
using success_spike_data_size = StaticAssert< sizeof(SpikeData)==8 >::success
 check legal size
 
using success_offgrid_spike_data_size = StaticAssert< sizeof(OffGridSpikeData)==16 >::success
 check legal size
 
using success_syn_id_delay_data_size = StaticAssert< sizeof(SynIdDelay)==4 >::success
 check legal size
 
using success_target_size = StaticAssert< sizeof(Target)==8 >::success
 
using success_target_data_fields_size = StaticAssert< sizeof(TargetDataFields)==8 >::success
 check legal size
 
using success_secondary_target_data_fields_size = StaticAssert< sizeof(SecondaryTargetDataFields)==8 >::success
 check legal size
 
using success_target_data_size = StaticAssert< sizeof(TargetData)==12 >::success
 check legal size
 

Enumerations

enum class  VerbosityLevel {
  ALL = 0 , DEBUG = 5 , STATUS = 7 , INFO = 10 ,
  PROGRESS = 15 , DEPRECATED = 18 , WARNING = 20 , ERROR = 30 ,
  FATAL = 40 , QUIET = 100
}
 Report only messages at levels higher than chosen level to user or logs. Default INFO. More...
 
enum  SignalType { NONE = 0 , SPIKE = 1 , BINARY = 2 , ALL = SPIKE | BINARY }
 enum type of signal conveyed by spike events of a node. More...
 
enum class  ConnectionModelProperties : unsigned {
  NONE = 0 , SUPPORTS_HPC = 1 << 0 , SUPPORTS_LBL = 1 << 1 , IS_PRIMARY = 1 << 2 ,
  HAS_DELAY = 1 << 3 , SUPPORTS_WFR = 1 << 4 , REQUIRES_SYMMETRIC = 1 << 5 , REQUIRES_CLOPATH_ARCHIVING = 1 << 6 ,
  REQUIRES_URBANCZIK_ARCHIVING = 1 << 7 , REQUIRES_EPROP_ARCHIVING = 1 << 8
}
 
enum  enum_status_spike_data_id { SPIKE_DATA_ID_DEFAULT , SPIKE_DATA_ID_END , SPIKE_DATA_ID_COMPLETE , SPIKE_DATA_ID_INVALID }
 Mark spike transmission status in SpikeData entries. More...
 
enum  enum_flush_event { FLUSH_EVENT_FALSE , FLUSH_EVENT_TRUE }
 
enum class  StopwatchGranularity { Normal , Detailed }
 
enum class  StopwatchParallelism { MasterOnly , Threaded }
 
enum  enum_status_target_id { TARGET_ID_PROCESSED , TARGET_ID_UNPROCESSED }
 This class implements a 64-bit target neuron identifier type. More...
 
enum  enum_status_target_data_id { TARGET_DATA_ID_DEFAULT , TARGET_DATA_ID_COMPLETE , TARGET_DATA_ID_END , TARGET_DATA_ID_INVALID }
 

Functions

double beta_normalization_factor (const double tau_rise, const double tau_decay)
 Computes the normalization constant for the beta function.
 
template<typename T >
bool update_value_param (Dictionary const &d, const std::string &key, T &value, nest::Node *node)
 Obtain value from parameter dictionary including evaluation of random or spatial parameters.
 
template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator| (const Enum lhs, const Enum rhs)
 
template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator& (const Enum lhs, const Enum rhs)
 
template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator^ (const Enum &lhs, const Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator|= (Enum &lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator&= (Enum &lhs, Enum rhs)
 
template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type operator^= (Enum &lhs, Enum rhs)
 
template<typename Enum >
bool flag_is_set (const Enum en, const Enum flag)
 
std::ostream & operator<< (std::ostream &out, const LoggingEvent &e)
 
constexpr uint64_t generate_bit_mask (const uint8_t num_bits, const uint8_t bit_position)
 Default types used by the NEST kernel.
 
constexpr uint64_t generate_max_value (const uint8_t num_bits)
 
 __attribute__ ((__unused__)) const expr size_t invalid_index = invalid_targetindex - 1
 Unsigned long type for enumerations.
 
template<typename E >
constexpr auto to_underlying (E e) noexcept
 Cast enum value to underlying integer type.
 
template<typename CN >
double regula_falsi (const CN &node, const double dt)
 Localize threshold crossing by using Illinois algorithm of regula falsi method.
 
template<typename T >
size_t median3_ (const BlockVector< T > &vec, const size_t i, const size_t j, const size_t k)
 Calculates the median of three elements.
 
template<typename T1 , typename T2 >
void insertion_sort (BlockVector< T1 > &vec_sort, BlockVector< T2 > &vec_perm, const size_t lo, const size_t hi)
 Insertion sort, adapted from Sedgewick & Wayne (2011), Algorithms 4th edition, p251ff.
 
template<typename T1 , typename T2 >
void quicksort3way (BlockVector< T1 > &vec_sort, BlockVector< T2 > &vec_perm, const size_t lo, const size_t hi)
 Quicksort with 3-way partitioning, adapted from Sedgewick & Wayne (2011), Algorithms 4th edition, p296ff (see http://algs4.cs.princeton.edu/23quicksort/QuickX.java.html).
 
template<typename T1 , typename T2 >
void sort (BlockVector< T1 > &vec_sort, BlockVector< T2 > &vec_perm)
 Sorts two vectors according to elements in first vector.
 
void register_ac_generator (const std::string &name)
 
void register_amat2_psc_exp (const std::string &name)
 
void register_bernoulli_synapse (const std::string &name)
 
void register_clopath_synapse (const std::string &name)
 
void register_cm_default (const std::string &name)
 
void register_cont_delay_synapse (const std::string &name)
 
void register_correlation_detector (const std::string &name)
 Correlation detector breaks with the persistence scheme as follows: the internal buffers for storing spikes are part of State_, but are initialized by init_buffers_().
 
void register_correlomatrix_detector (const std::string &name)
 
void register_correlospinmatrix_detector (const std::string &name)
 Correlospinmatrix detector breaks with the persistence scheme as follows: the internal buffers for storing spikes are part of State_, but are initialized by init_buffers_().
 
void register_dc_generator (const std::string &name)
 
void register_diffusion_connection (const std::string &name)
 
void register_eprop_iaf (const std::string &name)
 
void register_eprop_iaf_adapt (const std::string &name)
 
void register_eprop_iaf_adapt_bsshslm_2020 (const std::string &name)
 
void register_eprop_iaf_bsshslm_2020 (const std::string &name)
 
void register_eprop_iaf_psc_delta (const std::string &name)
 
void register_eprop_iaf_psc_delta_adapt (const std::string &name)
 
void register_eprop_learning_signal_connection (const std::string &name)
 
void register_eprop_learning_signal_connection_bsshslm_2020 (const std::string &name)
 
void register_eprop_readout (const std::string &name)
 
void register_eprop_readout_bsshslm_2020 (const std::string &name)
 
void register_eprop_synapse (const std::string &name)
 Register the eprop synapse model.
 
void register_eprop_synapse_bsshslm_2020 (const std::string &name)
 Register the eprop synapse model.
 
void register_erfc_neuron (const std::string &name)
 
void register_gamma_sup_generator (const std::string &name)
 
void register_gap_junction (const std::string &name)
 
void register_gauss_rate_ipn (const std::string &name)
 
void register_rate_transformer_gauss (const std::string &name)
 
void register_gif_psc_exp (const std::string &name)
 
void register_gif_psc_exp_multisynapse (const std::string &name)
 
void register_ginzburg_neuron (const std::string &name)
 
void register_glif_psc (const std::string &name)
 
void register_glif_psc_double_alpha (const std::string &name)
 
void register_ht_synapse (const std::string &name)
 
void register_iaf_chs_2007 (const std::string &name)
 
void register_iaf_psc_alpha (const std::string &name)
 
void register_iaf_psc_alpha_multisynapse (const std::string &name)
 
void register_iaf_psc_alpha_ps (const std::string &name)
 
void register_iaf_psc_delta (const std::string &name)
 The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.
 
void register_iaf_psc_delta_ps (const std::string &name)
 
void register_iaf_psc_exp (const std::string &name)
 The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.
 
void register_iaf_psc_exp_htum (const std::string &name)
 
void register_iaf_psc_exp_multisynapse (const std::string &name)
 
void register_iaf_psc_exp_ps (const std::string &name)
 
void register_iaf_psc_exp_ps_lossless (const std::string &name)
 
void register_iaf_tum_2000 (const std::string &name)
 
void register_ignore_and_fire (const std::string &name)
 
void register_inhomogeneous_poisson_generator (const std::string &name)
 
void register_izhikevich (const std::string &name)
 
void register_jonke_synapse (const std::string &name)
 
void register_lin_rate_ipn (const std::string &name)
 
void register_lin_rate_opn (const std::string &name)
 
void register_rate_transformer_lin (const std::string &name)
 
void register_mat2_psc_exp (const std::string &name)
 The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.
 
void register_mcculloch_pitts_neuron (const std::string &name)
 
void register_mip_generator (const std::string &name)
 
void register_models ()
 Function to register all node and connection models that were selected for compilation either by using the cmake switch -Dwith-models=<model;list> or as specified in the modelset given to the option -Dwith-modelset=<modelset>
 
void register_multimeter (const std::string &name)
 
void register_voltmeter (const std::string &name)
 
void register_noise_generator (const std::string &name)
 
void register_parrot_neuron (const std::string &name)
 
void register_parrot_neuron_ps (const std::string &name)
 
void register_poisson_generator (const std::string &name)
 
void register_poisson_generator_ps (const std::string &name)
 
void register_pp_psc_delta (const std::string &name)
 
void register_ppd_sup_generator (const std::string &name)
 
void register_pulsepacket_generator (const std::string &name)
 
void register_quantal_stp_synapse (const std::string &name)
 
void register_rate_connection_delayed (const std::string &name)
 Class representing a delayed rate connection.
 
void register_rate_connection_instantaneous (const std::string &name)
 Class representing a rate connection.
 
void register_sic_connection (const std::string &name)
 
void register_sigmoid_rate_ipn (const std::string &name)
 
void register_rate_transformer_sigmoid (const std::string &name)
 
void register_sigmoid_rate_gg_1998_ipn (const std::string &name)
 
void register_rate_transformer_sigmoid_gg_1998 (const std::string &name)
 
void register_sinusoidal_poisson_generator (const std::string &name)
 
void register_spike_dilutor (const std::string &name)
 
void register_spike_generator (const std::string &name)
 
void register_spike_recorder (const std::string &name)
 Class spike_recorder.
 
void register_spike_train_injector (const std::string &name)
 Spike train injector node.
 
void register_spin_detector (const std::string &name)
 Spin detector class.
 
void register_static_synapse (const std::string &name)
 
void register_static_synapse_hom_w (const std::string &name)
 
void register_stdp_dopamine_synapse (const std::string &name)
 Class representing an stdp_dopamine_synapse with homogeneous parameters, i.e.
 
void register_stdp_facetshw_synapse_hom (const std::string &name)
 
void register_stdp_nn_pre_centered_synapse (const std::string &name)
 
void register_stdp_nn_restr_synapse (const std::string &name)
 
void register_stdp_nn_symm_synapse (const std::string &name)
 
void register_stdp_pl_synapse_hom (const std::string &name)
 Class representing an STDP connection with homogeneous parameters, i.e.
 
void register_stdp_synapse (const std::string &name)
 
void register_stdp_synapse_hom (const std::string &name)
 Class representing an STDP connection with homogeneous parameters, i.e.
 
void register_stdp_triplet_synapse (const std::string &name)
 
void register_step_current_generator (const std::string &name)
 
void register_step_rate_generator (const std::string &name)
 
void register_tanh_rate_ipn (const std::string &name)
 
void register_tanh_rate_opn (const std::string &name)
 
void register_rate_transformer_tanh (const std::string &name)
 
void register_threshold_lin_rate_ipn (const std::string &name)
 
void register_threshold_lin_rate_opn (const std::string &name)
 
void register_rate_transformer_threshold_lin (const std::string &name)
 
void register_tsodyks2_synapse (const std::string &name)
 
void register_tsodyks_synapse (const std::string &name)
 
void register_tsodyks_synapse_hom (const std::string &name)
 
void register_urbanczik_synapse (const std::string &name)
 
void register_vogels_sprekeler_synapse (const std::string &name)
 
void register_volume_transmitter (const std::string &name)
 
void register_weight_recorder (const std::string &name)
 
static std::deque< ConnectionID > & extend_connectome (std::deque< ConnectionID > &out, std::deque< ConnectionID > &in)
 
template<int D>
static bool node_id_less (const std::pair< Position< D >, size_t > &a, const std::pair< Position< D >, size_t > &b)
 
bool operator< (const histentry_extended &he, double t)
 
bool operator< (const HistEntryEprop &a, const HistEntryEprop &b)
 
bool operator< (const HistEntryEprop &e, long t)
 
bool operator< (long t, const HistEntryEprop &e)
 
KernelManager & kernel ()
 
RngPtr get_rank_synced_rng ()
 
RngPtr get_vp_synced_rng (size_t tid)
 
RngPtr get_vp_specific_rng (size_t tid)
 
void test_link (int, int)
 
void test_links ()
 
AbstractMask * create_doughnut (const Dictionary &d)
 
void init_nest (int *argc, char **argv[])
 
void shutdown_nest (int exitcode)
 
void install_module (const std::string &module)
 
void reset_kernel ()
 
void enable_structural_plasticity ()
 
void disable_structural_plasticity ()
 
void register_logger_client (const deliver_logging_event_ptr client_callback)
 
std::string print_nodes_to_string ()
 
std::string pprint_to_string (NodeCollectionPTR nc)
 
size_t nc_size (NodeCollectionPTR nc)
 
void set_kernel_status (const Dictionary &dict)
 
Dictionary get_kernel_status ()
 
Dictionary get_nc_status (NodeCollectionPTR nc)
 
void set_nc_status (NodeCollectionPTR nc, std::vector< Dictionary > &params)
 
void set_connection_status (const std::deque< ConnectionID > &conns, const Dictionary &dict)
 
void set_connection_status (const std::deque< ConnectionID > &conns, const std::vector< Dictionary > &dicts)
 
std::vector< Dictionary > get_connection_status (const std::deque< ConnectionID > &conns)
 
void set_node_status (const size_t node_id, const Dictionary &dict)
 
Dictionary get_node_status (const size_t node_id)
 
Dictionary get_connection_status (const ConnectionID &conn)
 
NodeCollectionPTR slice_nc (const NodeCollectionPTR nc, long start, long stop, long step)
 
NodeCollectionPTR create (const std::string &model_name, const size_t n_nodes)
 
NodeCollectionPTR create_spatial (const Dictionary &layer_dict)
 
NodeCollectionPTR make_nodecollection (const std::vector< size_t > &node_ids)
 
NodeCollectionPTR get_nodes (const Dictionary &params, const bool local_only)
 
bool equal (const NodeCollectionPTR lhs, const NodeCollectionPTR rhs)
 
bool contains (const NodeCollectionPTR nc, const size_t node_id)
 
long find (const NodeCollectionPTR nc, size_t node_id)
 
Dictionary get_metadata (const NodeCollectionPTR nc)
 
void connect (NodeCollectionPTR sources, NodeCollectionPTR targets, const Dictionary &connectivity, const std::vector< Dictionary > &synapse_params)
 Create bipartite connections.
 
void disconnect (NodeCollectionPTR sources, NodeCollectionPTR targets, const Dictionary &connectivity, const std::vector< Dictionary > &synapse_params)
 Disconnect nodes.
 
void connect_tripartite (NodeCollectionPTR sources, NodeCollectionPTR targets, NodeCollectionPTR third, const Dictionary &connectivity, const Dictionary &third_connectivity, const std::map< std::string, std::vector< Dictionary > > &synapse_specs)
 Create tripartite connections.
 
void connect_arrays (const long *sources, const long *targets, const double *weights, const double *delays, const std::vector< std::string > &p_keys, const double *p_values, size_t n, const std::string &syn_model)
 Connect arrays of node IDs one-to-one.
 
void connect_sonata (const Dictionary &graph_specs, const long hyperslab_size)
 
std::deque< ConnectionID > get_connections (const Dictionary &dict)
 
void disconnect (const std::deque< ConnectionID > &conns)
 
void simulate (const double t)
 
void run (const double time)
 
void prepare ()
 do calibrations for network, open files, ... before run()
 
void cleanup ()
 do cleanup after a simulation, such as closing files
 
void synchronize ()
 Force synchronization of MPI processes.
 
void copy_model (const std::string &oldmodname, const std::string &newmodname, const Dictionary &dict)
 
void set_model_defaults (const std::string &component, const Dictionary &dict)
 
Dictionary get_model_defaults (const std::string &component)
 
ParameterPTR create_parameter (const any_type &value)
 
ParameterPTR create_parameter (const double value)
 
ParameterPTR create_parameter (const long value)
 
ParameterPTR create_parameter (const Dictionary &param_dict)
 
ParameterPTR create_parameter (const std::string &name, const Dictionary &d)
 
ParameterFactory & parameter_factory_ (void)
 
MaskFactory & mask_factory_ (void)
 
double get_value (const ParameterPTR param)
 
bool is_spatial (const ParameterPTR param)
 
std::vector< double > apply (const ParameterPTR param, const NodeCollectionPTR nc)
 
std::vector< double > apply (const ParameterPTR param, const Dictionary &positions)
 
NodeCollectionPTR node_collection_array_index (NodeCollectionPTR nc, const long *array, unsigned long n)
 
NodeCollectionPTR node_collection_array_index (NodeCollectionPTR nc, const bool *array, unsigned long n)
 
std::vector< size_t > node_collection_to_array (NodeCollectionPTR node_collection, const std::string &selection)
 
void message (const VerbosityLevel level, const std::string &function, const std::string &message, const std::string &file, const size_t line)
 
template<template< typename > class ConnectorModelT>
void register_connection_model (const std::string &name)
 Register connection model (i.e.
 
template<typename NodeModelT >
void register_node_model (const std::string &name, std::string deprecation_info=std::string())
 Register node model (i.e.
 
void print_nodes_to_stream (std::ostream &out=std::cout)
 
MaskPTR create_mask (const std::string &name, const Dictionary &d)
 Create a new Mask object using the mask factory.
 
template<class T >
bool register_parameter (const std::string &name)
 
template<class T >
bool register_mask ()
 
bool register_mask (const std::string &name, MaskCreatorFunction creator)
 
template<class N >
N time_abs (const N n)
 Class to handle simulation time and realtime.
 
template<>
long long time_abs (long long n)
 
bool operator== (const Time &t1, const Time &t2)
 
bool operator!= (const Time &t1, const Time &t2)
 
bool operator< (const Time &t1, const Time &t2)
 
bool operator> (const Time &t1, const Time &t2)
 
bool operator<= (const Time &t1, const Time &t2)
 
bool operator>= (const Time &t1, const Time &t2)
 
Time operator+ (const Time &t1, const Time &t2)
 
Time operator- (const Time &t1, const Time &t2)
 
Time operator* (const long factor, const Time &t)
 
Time operator* (const Time &t, long factor)
 
NodeCollectionPTR operator+ (NodeCollectionPTR lhs, NodeCollectionPTR rhs)
 
std::ostream & operator<< (std::ostream &out, const NodeCollectionPTR nc)
 
static double mod (double x, double p)
 
ParameterPTR multiply_parameter (const ParameterPTR first, const ParameterPTR second)
 Create the product of one parameter with another.
 
ParameterPTR divide_parameter (const ParameterPTR first, const ParameterPTR second)
 Create the quotient of one parameter with another.
 
ParameterPTR add_parameter (const ParameterPTR first, const ParameterPTR second)
 Create the sum of one parameter with another.
 
ParameterPTR subtract_parameter (const ParameterPTR first, const ParameterPTR second)
 Create the difference between one parameter and another.
 
ParameterPTR compare_parameter (const ParameterPTR first, const ParameterPTR second, const Dictionary &d)
 Create comparison of one parameter with another.
 
ParameterPTR conditional_parameter (const ParameterPTR condition, const ParameterPTR if_true, const ParameterPTR if_false)
 Create a parameter that chooses between two other parameters, based on a given condition parameter.
 
ParameterPTR min_parameter (const ParameterPTR parameter, const double other)
 Create parameter whose value is the minimum of a given parameter's value and the given value.
 
ParameterPTR max_parameter (const ParameterPTR parameter, const double other)
 Create parameter whose value is the maximum of a given parameter's value and the given value.
 
ParameterPTR redraw_parameter (const ParameterPTR parameter, const double min, const double max)
 Create parameter redrawing the value if the value of a parameter is outside the set limits.
 
ParameterPTR exp_parameter (const ParameterPTR parameter)
 Create the exponential of a parameter.
 
ParameterPTR sin_parameter (const ParameterPTR parameter)
 Create the sine of a parameter.
 
ParameterPTR cos_parameter (const ParameterPTR parameter)
 Create the cosine of a parameter.
 
ParameterPTR pow_parameter (const ParameterPTR parameter, const double exponent)
 Create a parameter raised to the power of an exponent.
 
ParameterPTR dimension_parameter (const ParameterPTR x_parameter, const ParameterPTR y_parameter)
 Create a parameter that can generate position vectors from a given set of parameters.
 
ParameterPTR dimension_parameter (const ParameterPTR x_parameter, const ParameterPTR y_parameter, const ParameterPTR z_parameter)
 
template<int D, class T >
std::ostream & operator<< (std::ostream &os, const Position< D, T > &pos)
 
template<typename T >
size_t number_of_uints_covered ()
 This template function returns the number of uints covered by a variable of type T.
 
template<typename T >
void write_to_comm_buffer (T d, std::vector< unsigned int >::iterator &pos)
 This template function writes data of type T to a given position of a std::vector< unsigned int >.
 
template<typename T >
void read_from_comm_buffer (T &d, std::vector< unsigned int >::iterator &pos)
 This template function reads data of type T from a given position of a std::vector< unsigned int >.
 
bool operator< (const Source &lhs, const Source &rhs)
 
bool operator> (const Source &lhs, const Source &rhs)
 
bool operator== (const Source &lhs, const Source &rhs)
 
bool operator== (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
bool operator!= (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
bool operator< (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
bool operator> (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
bool operator<= (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
bool operator>= (const SourceTablePosition &lhs, const SourceTablePosition &rhs)
 
AbstractLayerPTR get_layer (NodeCollectionPTR nc)
 
NodeCollectionPTR create_layer (const Dictionary &layer_dict)
 
std::vector< std::vector< double > > get_position (NodeCollectionPTR layer_nc)
 
std::vector< double > get_position (const size_t node_id)
 
std::vector< std::vector< double > > displacement (NodeCollectionPTR layer_to_nc, NodeCollectionPTR layer_from_nc)
 
std::vector< std::vector< double > > displacement (NodeCollectionPTR layer_nc, const std::vector< std::vector< double > > &point)
 
std::vector< double > distance (NodeCollectionPTR layer_to_nc, NodeCollectionPTR layer_from_nc)
 
std::vector< double > distance (NodeCollectionPTR layer_nc, const std::vector< std::vector< double > > &point)
 
std::vector< double > distance (const std::vector< ConnectionID > &conns)
 
MaskPTR create_mask (const Dictionary &mask_dict)
 
NodeCollectionPTR select_nodes_by_mask (const NodeCollectionPTR layer_nc, const std::vector< double > &anchor, const MaskPTR mask)
 
bool inside (const std::vector< double > &point, const MaskPTR mask)
 
MaskPTR intersect_mask (const MaskPTR mask1, const MaskPTR mask2)
 
MaskPTR union_mask (const MaskPTR mask1, const MaskPTR mask2)
 
MaskPTR minus_mask (const MaskPTR mask1, const MaskPTR mask2)
 
void connect_layers (NodeCollectionPTR source_nc, NodeCollectionPTR target_nc, const Dictionary &connection_dict)
 
void dump_layer_nodes (const NodeCollectionPTR layer_nc, const std::string &filename)
 
void dump_layer_connections (const NodeCollectionPTR source_layer_nc, const NodeCollectionPTR target_layer_nc, const std::string &syn_model, const std::string &filename)
 
Dictionary get_layer_status (NodeCollectionPTR)
 

Variables

constexpr uint8_t NUM_BITS_RANK = 18U
 
constexpr uint8_t NUM_BITS_TID = 9U
 
constexpr uint8_t NUM_BITS_SYN_ID = 9U
 
constexpr uint8_t NUM_BITS_LCID = 27U
 
constexpr uint8_t NUM_BITS_PROCESSED_FLAG = 1U
 
constexpr uint8_t NUM_BITS_MARKER_SPIKE_DATA = 2U
 
constexpr uint8_t NUM_BITS_FLUSH_EVENT = 1U
 
constexpr uint8_t NUM_BITS_LAG = 14U
 
constexpr uint8_t NUM_BITS_DELAY = 21U
 
constexpr uint8_t NUM_BITS_NODE_ID = 61U
 
constexpr uint64_t MAX_LCID = generate_max_value( NUM_BITS_LCID )
 
constexpr int64_t MAX_RANK = generate_max_value( NUM_BITS_RANK )
 
constexpr int64_t MAX_TID = generate_max_value( NUM_BITS_TID )
 
constexpr uint64_t MAX_SYN_ID = generate_max_value( NUM_BITS_SYN_ID )
 
constexpr uint64_t DISABLED_NODE_ID = generate_max_value( NUM_BITS_NODE_ID )
 
constexpr uint64_t MAX_NODE_ID = DISABLED_NODE_ID - 1
 
constexpr tic_t tic_t_max = std::numeric_limits< tic_t >::max()
 
constexpr tic_t tic_t_min = std::numeric_limits< tic_t >::min()
 
constexpr synindex invalid_synindex = MAX_SYN_ID
 
constexpr targetindex invalid_targetindex = USHRT_MAX
 
constexpr size_t invalid_lcid = MAX_LCID
 Marker for invalid LCID values.
 
constexpr size_t invalid_thread = std::numeric_limits< size_t >::max()
 Value for invalid connection thread id.
 
constexpr size_t invalid_port = std::numeric_limits< size_t >::max()
 Value for invalid connection port number.
 
constexpr long delay_min = std::numeric_limits< long >::min()
 Values for min and max delay.
 
constexpr long delay_max = std::numeric_limits< long >::max()
 
static const long UNLABELED_CONNECTION = -1
 Connections are unlabeled by default.
 
const Time TimeZero
 
const struct nest::PrimitiveSortOp primitive_sort_op
 
constexpr bool use_detailed_timers = false
 
constexpr bool use_threaded_timers = false
 

Detailed Description

Namespace for the NEST simulation kernel.

Contact point element for dynamic synapse creation and deletion.

Part of definition of volume_transmitter to record and manage spike times and multiplicity of neurons releasing a neuromodulator, which is needed for neuromodulated synaptic plasticity (volume transmitter and neuromodulated synapses are not included in the release version of NEST at the moment).

Implementation of volume_transmitter to record and manage spike times and multiplicity of neurons releasing a neuromodulator (volume_transmitter is not included in the current release version of NEST)

Interface for NEST Extenstion Modules.

General deprecation warning class for models with deprecated parameters.

Base class for parameters provided to connection routines.

Class managing flexible connection creation.

Created based on the connection_creator used for spatial networks.

Principles for these parameters are

  • Each parameter is a single scalar value.
  • The parameter will be returned as type double.
  • The parameter values can be given either as
    • a single scalar: the same value is returned for each call
    • a random deviate generator: a new random values is returned for each call
    • an array of scalars: values are returned in order

General class for handling deprecations. The deprecation warning will only be issued the first time the deprecated parameter is updated.

Note
Usage: In model constructor put this->deprecation_warning.set_deprecated(deprecated_parameter);

In function updating the deprecated parameter put node->deprecation_warning.deprecation_warning(deprecated_parameter); or node->deprecation_warning.deprecation_warning(deprecated_parameter, new_parameter);

All NEST Extension Modules must be derived from this interface class.

Method init() will be called after the module is loaded.

The constructor should be empty.

Author
Wiebke Potjans
Date
december 2008
Note
moved to separate file to avoid circular inclusion in node.h
Author
Wiebke Potjans
Note
moved to separate file to avoid circular inclusion in node.h
Date
december 2008

This class represents synaptic element of a node (like Axonl boutons or dendritic spines) used for structural plasticity. The synaptic elements represent connection points between two neurons. They grow according to a homeostatic growth rule. The dynamics of the number of synaptic elements is driven by the average electrical activity of the neuron (indirectly measured through the Calcium concentration of the node). The probability of two neurons creating a new synapse between them, depends on the number of available synaptic elements of each neuron.

Parameters
zCurrent number of synaptic elements. Stored as a double variable but the actual usable number of synaptic elements is an integer truncated from this double value. A standard value for the growth of a synaptic element is around 0.0001 elements/ms.
continuousDefines if the number of synaptic elements should be treated as a continuous double number or as an integer value. Default is false.
growth_rateThe maximum amount by which the synaptic elements will change between time steps. In elements/ms.
tau_vacantRate at which vacant synaptic elements will decay. Typical is 0.1 which represents a loss of 10% of the vacant synaptic elements each time the structural_plasticity_update_interval is reached by the simulation time.
growth_curveRule which defines the dynamics of this synaptic element.
Note
Parameters are documented in the class implementation.
See also
GrowthCurve, SPManager, SPBuilder, Node, ArchivingNode
Author
Mikael Naveau, Sandra Diaz (July 2013)

[1] Butz, Markus, Florentin Wörgötter, and Arjen van Ooyen. "Activity-dependent structural plasticity." Brain research reviews 60.2 (2009): 287-305. [2] Butz, Markus, and Arjen van Ooyen. "A simple rule for dendritic spine and axonal bouton formation can account for cortical reorganization after focal retinal lesions." PLoS Comput Biol 9.10 (2013): e1003259.

Typedef Documentation

◆ AbstractLayerPTR

typedef std::shared_ptr< AbstractLayer > nest::AbstractLayerPTR

◆ binomial_distribution

using nest::binomial_distribution = typedef RandomDistribution< std::binomial_distribution< unsigned long > >

◆ deliver_logging_event_ptr

typedef void(* nest::deliver_logging_event_ptr) (const LoggingEvent &e)

◆ discrete_distribution

using nest::discrete_distribution = typedef RandomDistribution< std::discrete_distribution< unsigned long > >

◆ erfc_neuron

◆ exponential_distribution

using nest::exponential_distribution = typedef RandomDistribution< std::exponential_distribution<> >

◆ gamma_distribution

using nest::gamma_distribution = typedef RandomDistribution< std::gamma_distribution<> >

◆ gauss_rate_ipn

◆ ginzburg_neuron

◆ lin_rate_ipn

◆ lin_rate_opn

◆ lognormal_distribution

using nest::lognormal_distribution = typedef RandomDistribution< std::lognormal_distribution<> >

◆ MaskCreatorFunction

◆ MaskFactory

◆ MaskPTR

using nest::MaskPTR = typedef std::shared_ptr< AbstractMask >

◆ mcculloch_pitts_neuron

◆ NodeCollectionMetadataPTR

using nest::NodeCollectionMetadataPTR = typedef std::shared_ptr< NodeCollectionMetadata >

◆ NodeCollectionPTR

using nest::NodeCollectionPTR = typedef std::shared_ptr< NodeCollection >

◆ normal_distribution

using nest::normal_distribution = typedef RandomDistribution< std::normal_distribution<> >

◆ OffGridSpike

◆ ParameterFactory

◆ ParameterPTR

using nest::ParameterPTR = typedef std::shared_ptr< Parameter >

◆ poisson_distribution

using nest::poisson_distribution = typedef RandomDistribution< std::poisson_distribution< unsigned long > >

◆ rate_transformer_gauss

◆ rate_transformer_lin

◆ rate_transformer_sigmoid

◆ rate_transformer_sigmoid_gg_1998

◆ rate_transformer_tanh

◆ rate_transformer_threshold_lin

◆ RngPtr

◆ sigmoid_rate_gg_1998_ipn

◆ sigmoid_rate_ipn

◆ success_csdmapentry_size

using nest::success_csdmapentry_size = typedef StaticAssert< sizeof( CSDMapEntry ) == 8 >::success

check legal size

◆ success_offgrid_spike_data_size

using nest::success_offgrid_spike_data_size = typedef StaticAssert< sizeof( OffGridSpikeData ) == 16 >::success

check legal size

◆ success_secondary_target_data_fields_size

check legal size

◆ success_spike_data_size

using nest::success_spike_data_size = typedef StaticAssert< sizeof( SpikeData ) == 8 >::success

check legal size

◆ success_syn_id_delay_data_size

using nest::success_syn_id_delay_data_size = typedef StaticAssert< sizeof( SynIdDelay ) == 4 >::success

check legal size

◆ success_target_data_fields_size

using nest::success_target_data_fields_size = typedef StaticAssert< sizeof( TargetDataFields ) == 8 >::success

check legal size

◆ success_target_data_size

using nest::success_target_data_size = typedef StaticAssert< sizeof( TargetData ) == 12 >::success

check legal size

◆ success_target_size

using nest::success_target_size = typedef StaticAssert< sizeof( Target ) == 8 >::success

◆ synindex

typedef size_t nest::synindex

For enumerations of synapse types.

◆ tanh_rate_ipn

◆ tanh_rate_opn

◆ targetindex

typedef unsigned short nest::targetindex

Unsigned short type for compact target representation.

See Kunkel et al, Front Neuroinform 8:78 (2014). target index into thread local node vector

◆ threshold_lin_rate_ipn

◆ threshold_lin_rate_opn

◆ tic_t

typedef long long nest::tic_t

Type for Time tics.

◆ uniform_int_distribution

using nest::uniform_int_distribution = typedef RandomDistribution< std::uniform_int_distribution< unsigned long > >

◆ uniform_real_distribution

using nest::uniform_real_distribution = typedef RandomDistribution< std::uniform_real_distribution<> >

Enumeration Type Documentation

◆ ConnectionModelProperties

enum class nest::ConnectionModelProperties : unsigned
strong
Enumerator
NONE 
SUPPORTS_HPC 
SUPPORTS_LBL 
IS_PRIMARY 
HAS_DELAY 
SUPPORTS_WFR 
REQUIRES_SYMMETRIC 
REQUIRES_CLOPATH_ARCHIVING 
REQUIRES_URBANCZIK_ARCHIVING 
REQUIRES_EPROP_ARCHIVING 

◆ enum_flush_event

Enumerator
FLUSH_EVENT_FALSE 
FLUSH_EVENT_TRUE 

◆ enum_status_spike_data_id

Mark spike transmission status in SpikeData entries.

Note
Assumes that send buffer has at least two entries per rank, begin ≠ end.
To ensure that we only need two bits for this flag, flags will be interpreted differently depending on where they are used in a send buffer.

Below,

  • begpos and endpos refer to the first and last entries for a given rank-specific chunk of the send buffer
  • local_max_spikes_per_rank is the largest number of spikes a given rank needs to transmit to any other rank.
  • global_max_spikes_per_rank is the maximum of all local_max_spikes_per_rank values. It determines the

SpikeData marker values are defined as follows: have

  • DEFAULT: Normal entry, cannot occur in endpos
  • END: Marks last entry containing data.
    • If it occurs in endpos,
      • it implies COMPLETE
      • it indicates that local_max_spikes_per_rank of the sending rank is equal to the current buffer size
  • COMPLETE: Can only occur in endpos and indicates that the sending rank could write all emitted spikes to the transmission buffer.
    • END is then in earlier position.
    • The LCID entry of endpos contains the local_max_spikes_per_rank of the corresponding sending rank.

INVALID:

  • In begpos indicates that no spikes are transmitted (
    Note
    : END at begpos means one spike transmitted)
  • In endpos, indicates that the pertaining rank could not send all spikes.
    • The LCID entry of endpos contains the local_max_spikes_per_rank of the corresponding sending rank.
Note
Logic for reading from spike transmission buffer
  1. If marker at begpos for a rank is INVALID, there are no spikes to read
  2. Read until END marker is met. All entries including the one with END contain valid spikes.
  3. Check marker in endpos for completeness of transmission and required transmission buffer chunk size
    1. Completeness
      • If COMPLETE or END, transmission is complete
      • If INVALID, not all spikes could be sent, repeat with increased chunk size
      • If DEFAULT, something is seriously wrong
    2. Required chunk size
      • If marker is END, the required chunk size is equal to current chunk size (and LCID field contains LCID for spike in endpos)
      • If marker is COMPLETE or INVALID, the required chunk size is given by the valued stored in the LCID field of endpos
Enumerator
SPIKE_DATA_ID_DEFAULT 
SPIKE_DATA_ID_END 
SPIKE_DATA_ID_COMPLETE 
SPIKE_DATA_ID_INVALID 

◆ enum_status_target_data_id

Enumerator
TARGET_DATA_ID_DEFAULT 
TARGET_DATA_ID_COMPLETE 
TARGET_DATA_ID_END 
TARGET_DATA_ID_INVALID 

◆ enum_status_target_id

This class implements a 64-bit target neuron identifier type.

It uniquely identifies a target neuron on a (remote) machine. Used in TargetTable for the presynaptic part of the connection infrastructure.

The bitwise layout of the neuron identifier for the "standard" CMAKE option:

+-----— processed flag | +-— synapse-type id (syn_id) | | ||-------—||–thread–||------—rank-------—||-—local connection id (lcid)-—| 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 | | | | | | | | | | | | | | | | 63 56 55 48 47 40 39 32 31 24 23 16 15 8 7 0

The bitwise layout of the neuron identifier for the "hpc" CMAKE option:

+-----— processed flag | +-— synapse-type id (syn_id) | | ||--—||—thread-—||------—rank---------—||-—local connection id (lcid)-—| 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 | | | | | | | | | | | | | | | | 63 56 55 48 47 40 39 32 31 24 23 16 15 8 7 0

Other custom layouts can be chosen by providing a list of 5 numbers, representing the bits required for rank, thread, synapse id, local connection id and processed flag, respectively. The number of bits needs to sum to 64. The processed flag must always use one bit.

Enumerator
TARGET_ID_PROCESSED 
TARGET_ID_UNPROCESSED 

◆ SignalType

enum type of signal conveyed by spike events of a node.

These types are used upon connect to check if spikes sent by one neuron are interpreted the same way by receiving neuron.

Each possible signal that may be represented (currently SPIKE and BINARY) is interpreted as a separate bit flag. This way, upon connection, we determine by a bitwise AND operation if sender and receiver are compatible. The check takes place in connection::check_connection().

A device, such as the spike-generator or spike_recorder, that can in a meaningful way be connected to either neuron model can use the wildcard ALL, that will match any connection partner.

Enumerator
NONE 
SPIKE 
BINARY 
ALL 

◆ StopwatchGranularity

enum class nest::StopwatchGranularity
strong
Enumerator
Normal 

Always measure stopwatch.

Detailed 

Only measure if detailed stopwatches are activated.

◆ StopwatchParallelism

enum class nest::StopwatchParallelism
strong
Enumerator
MasterOnly 

Only the master thread owns a stopwatch.

Threaded 

Every thread measures an individual stopwatch.

◆ VerbosityLevel

enum class nest::VerbosityLevel
strong

Report only messages at levels higher than chosen level to user or logs. Default INFO.

Enumerator
ALL 
DEBUG 
STATUS 
INFO 
PROGRESS 
DEPRECATED 
WARNING 
ERROR 
FATAL 
QUIET 

Function Documentation

◆ __attribute__()

nest::__attribute__ ( (__unused__)  ) const = invalid_targetindex - 1

Unsigned long type for enumerations.

◆ add_parameter()

ParameterPTR nest::add_parameter ( const ParameterPTR  first,
const ParameterPTR  second 
)

Create the sum of one parameter with another.

Returns
a new dynamically allocated parameter.

◆ apply() [1/2]

std::vector< double > nest::apply ( const ParameterPTR  param,
const Dictionary &  positions 
)

References nest::names::source(), and nest::names::targets().

Here is the call graph for this function:

◆ apply() [2/2]

std::vector< double > nest::apply ( const ParameterPTR  param,
const NodeCollectionPTR  nc 
)

References nest::NodeManager::get_node_or_proxy(), get_rank_synced_rng(), kernel(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ beta_normalization_factor()

double nest::beta_normalization_factor ( const double  tau_rise,
const double  tau_decay 
)
inline

Computes the normalization constant for the beta function.

Parameters
tau_riseSynaptic rise time constant, in ms
tau_decaySynaptic decay time constant, in ms

Calculates the factor used to normalize the synaptic conductance such that incoming spike causes a peak conductance of 1 nS.

The solution to the beta function ODE obtained by the solver is

g(t) = c / ( a - b ) * ( e^(-b t) - e^(-a t) )

with a = 1/tau_rise, b = 1/tau_decay, a != b. The maximum of this function is at

t* = 1/(a-b) ln a/b

We want to scale the function so that

max g == g(t*) == g_peak

We thus need to set

c = g_peak * ( a - b ) / ( e^(-b t*) - e^(-a t*) )

See Rotter & Diesmann, Biol Cybern 81:381 (1999) and Roth and van Rossum, Ch 6, in De Schutter, Computational Modeling Methods for Neuroscientists, MIT Press, 2010.

The denominator, tau_difference, that appears in the expression of the peak time is computed here to check that it is not zero. Another denominator, peak_value, appears in the expression of the normalization factor. Both tau_difference and peak_value are zero if tau_decay = tau_rise. But they can also be zero if tau_decay and tau_rise are not equal but very close to each other, due to the numerical precision limits. In such case the beta function reduces to the alpha function, and the normalization factor for the alpha function should be used.

References numerics::e.

◆ cleanup()

void nest::cleanup ( )

do cleanup after a simulation, such as closing files

Do cleanup to end a simulation using run() commands. After calling cleanup(), further run() calls must only happen after another call to prepare()

See also
run()
prepare()

References nest::KernelManager::cleanup(), and kernel().

Referenced by simulate().

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

◆ compare_parameter()

ParameterPTR nest::compare_parameter ( const ParameterPTR  first,
const ParameterPTR  second,
const Dictionary &  d 
)

Create comparison of one parameter with another.

Returns
a new dynamically allocated parameter.

◆ conditional_parameter()

ParameterPTR nest::conditional_parameter ( const ParameterPTR  condition,
const ParameterPTR  if_true,
const ParameterPTR  if_false 
)

Create a parameter that chooses between two other parameters, based on a given condition parameter.

The resulting value of the condition parameter is treated as a bool, meaning that a zero value evaluates as false, and all other values evaluate as true.

Returns
a new dynamically allocated parameter.

◆ connect()

void nest::connect ( NodeCollectionPTR  sources,
NodeCollectionPTR  targets,
const Dictionary &  connectivity,
const std::vector< Dictionary > &  synapse_params 
)

Create bipartite connections.

References nest::ConnectionManager::connect(), nest::KernelManager::connection_manager, and kernel().

Here is the call graph for this function:

◆ connect_arrays()

void nest::connect_arrays ( const long *  sources,
const long *  targets,
const double *  weights,
const double *  delays,
const std::vector< std::string > &  p_keys,
const double *  p_values,
size_t  n,
const std::string &  syn_model 
)

Connect arrays of node IDs one-to-one.

Connects an array of sources to an array of targets, with weights and delays from specified arrays, using the one-to-one rule. Additional synapse parameters can be specified with p_keys and p_values. Sources, targets, weights, delays, and receptor types are given as pointers to the first element. All arrays must have the same length, n. Weights, delays, and receptor types can be unspecified by passing a nullptr.

The p_keys vector contains keys of additional synapse parameters, with associated values in the flat array p_values. If there are n sources and targets, and M additional synapse parameters, p_keys has a size of M, and the p_values array has length of M*n.

References nest::ConnectionManager::connect_arrays(), nest::KernelManager::connection_manager, and kernel().

Here is the call graph for this function:

◆ connect_layers()

◆ connect_sonata()

void nest::connect_sonata ( const Dictionary &  graph_specs,
const long  hyperslab_size 
)

References nest::ConnectionManager::connect_sonata(), nest::KernelManager::connection_manager, and kernel().

Here is the call graph for this function:

◆ connect_tripartite()

void nest::connect_tripartite ( NodeCollectionPTR  sources,
NodeCollectionPTR  targets,
NodeCollectionPTR  third,
const Dictionary &  connectivity,
const Dictionary &  third_connectivity,
const std::map< std::string, std::vector< Dictionary > > &  synapse_specs 
)

Create tripartite connections.

Note
synapse_specs is dictionary {"primary": <syn_spec>, "third_in": <syn_spec>, "third_out": <syn_spec>}; all entries are optional.

References nest::ConnectionManager::connect_tripartite(), nest::KernelManager::connection_manager, and kernel().

Here is the call graph for this function:

◆ contains()

bool nest::contains ( const NodeCollectionPTR  nc,
const size_t  node_id 
)

◆ copy_model()

void nest::copy_model ( const std::string &  oldmodname,
const std::string &  newmodname,
const Dictionary &  dict 
)

References nest::ModelManager::copy_model(), kernel(), and nest::KernelManager::model_manager.

Here is the call graph for this function:

◆ cos_parameter()

ParameterPTR nest::cos_parameter ( const ParameterPTR  parameter)

Create the cosine of a parameter.

Returns
a new dynamically allocated parameter.

◆ create()

NodeCollectionPTR nest::create ( const std::string &  model_name,
const size_t  n_nodes 
)

References nest::NodeManager::add_node(), nest::ModelManager::get_node_model_id(), kernel(), nest::KernelManager::model_manager, and nest::KernelManager::node_manager.

Referenced by create_mask(), and create_parameter().

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

◆ create_doughnut()

AbstractMask * nest::create_doughnut ( const Dictionary &  d)

References nest::names::anchor(), nest::names::inner_radius(), and nest::names::outer_radius().

Referenced by init_nest().

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

◆ create_layer()

NodeCollectionPTR nest::create_layer ( const Dictionary &  layer_dict)

References Dictionary::all_entries_accessed(), nest::AbstractLayer::create_layer(), and Dictionary::init_access_flags().

Referenced by create_spatial().

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

◆ create_mask() [1/2]

MaskPTR nest::create_mask ( const Dictionary &  mask_dict)

References Dictionary::all_entries_accessed(), nest::names::anchor(), create_mask(), Dictionary::get(), Dictionary::init_access_flags(), and nest::GridMask< D >::set_anchor().

Here is the call graph for this function:

◆ create_mask() [2/2]

MaskPTR nest::create_mask ( const std::string &  name,
const Dictionary &  d 
)
inline

Create a new Mask object using the mask factory.

Parameters
nameMask type to create.
dDictionary with parameters specific for this mask type.
Returns
dynamically allocated new Mask object.

References create(), and mask_factory_().

Referenced by nest::ConnectionCreator::ConnectionCreator(), and create_mask().

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

◆ create_parameter() [1/5]

ParameterPTR nest::create_parameter ( const any_type &  value)

References create_parameter(), and get_typename().

Referenced by nest::ConnectionCreator::ConnectionCreator(), create_parameter(), create_parameter(), and nest::ConnectionCreator::extract_params_().

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

◆ create_parameter() [2/5]

ParameterPTR nest::create_parameter ( const Dictionary &  param_dict)

References Dictionary::all_entries_accessed(), Dictionary::begin(), create_parameter(), Dictionary::get(), Dictionary::init_access_flags(), and Dictionary::size().

Here is the call graph for this function:

◆ create_parameter() [3/5]

ParameterPTR nest::create_parameter ( const double  value)

◆ create_parameter() [4/5]

ParameterPTR nest::create_parameter ( const long  value)

◆ create_parameter() [5/5]

ParameterPTR nest::create_parameter ( const std::string &  name,
const Dictionary &  d 
)

References create(), and parameter_factory_().

Here is the call graph for this function:

◆ create_spatial()

NodeCollectionPTR nest::create_spatial ( const Dictionary &  layer_dict)

References create_layer().

Here is the call graph for this function:

◆ dimension_parameter() [1/2]

ParameterPTR nest::dimension_parameter ( const ParameterPTR  x_parameter,
const ParameterPTR  y_parameter 
)

Create a parameter that can generate position vectors from a given set of parameters.

Returns
a new dynamically allocated parameter.

◆ dimension_parameter() [2/2]

ParameterPTR nest::dimension_parameter ( const ParameterPTR  x_parameter,
const ParameterPTR  y_parameter,
const ParameterPTR  z_parameter 
)

◆ disable_structural_plasticity()

void nest::disable_structural_plasticity ( )

References nest::SPManager::disable_structural_plasticity(), kernel(), and nest::KernelManager::sp_manager.

Here is the call graph for this function:

◆ disconnect() [1/2]

void nest::disconnect ( const std::deque< ConnectionID > &  conns)

References nest::SPManager::disconnect(), nest::NodeManager::get_node_or_proxy(), kernel(), nest::KernelManager::node_manager, nest::KernelManager::sp_manager, and nest::NodeManager::update_thread_local_node_data().

Here is the call graph for this function:

◆ disconnect() [2/2]

void nest::disconnect ( NodeCollectionPTR  sources,
NodeCollectionPTR  targets,
const Dictionary &  connectivity,
const std::vector< Dictionary > &  synapse_params 
)

Disconnect nodes.

Parameters
connectivityMust be one-to-one or all-to-all.
synapse_paramsCan contain only a synapse model to limit disconnection to that model. Must be vector of length 1, but is still passed as vector for compatibility with ConnBuilder constructor.

References nest::SPManager::disconnect(), kernel(), and nest::KernelManager::sp_manager.

Here is the call graph for this function:

◆ displacement() [1/2]

std::vector< std::vector< double > > nest::displacement ( NodeCollectionPTR  layer_nc,
const std::vector< std::vector< double > > &  point 
)

References get_layer(), nest::NodeManager::is_local_node_id(), kernel(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ displacement() [2/2]

std::vector< std::vector< double > > nest::displacement ( NodeCollectionPTR  layer_to_nc,
NodeCollectionPTR  layer_from_nc 
)

References get_layer(), get_position(), nest::NodeManager::is_local_node_id(), kernel(), and nest::KernelManager::node_manager.

Referenced by nest::Layer< D >::compute_displacement(), and nest::Layer< D >::compute_distance().

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

◆ distance() [1/3]

std::vector< double > nest::distance ( const std::vector< ConnectionID > &  conns)

References get_layer(), get_position(), kernel(), nest::NodeManager::node_id_to_node_collection(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ distance() [2/3]

std::vector< double > nest::distance ( NodeCollectionPTR  layer_nc,
const std::vector< std::vector< double > > &  point 
)

References get_layer(), nest::NodeManager::is_local_node_id(), kernel(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ distance() [3/3]

std::vector< double > nest::distance ( NodeCollectionPTR  layer_to_nc,
NodeCollectionPTR  layer_from_nc 
)

References get_layer(), get_position(), nest::NodeManager::is_local_node_id(), kernel(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ divide_parameter()

ParameterPTR nest::divide_parameter ( const ParameterPTR  first,
const ParameterPTR  second 
)

Create the quotient of one parameter with another.

Returns
a new dynamically allocated parameter.

◆ dump_layer_connections()

void nest::dump_layer_connections ( const NodeCollectionPTR  source_layer_nc,
const NodeCollectionPTR  target_layer_nc,
const std::string &  syn_model,
const std::string &  filename 
)

References get_layer().

Here is the call graph for this function:

◆ dump_layer_nodes()

void nest::dump_layer_nodes ( const NodeCollectionPTR  layer_nc,
const std::string &  filename 
)

References get_layer().

Here is the call graph for this function:

◆ enable_structural_plasticity()

void nest::enable_structural_plasticity ( )

References nest::SPManager::enable_structural_plasticity(), kernel(), and nest::KernelManager::sp_manager.

Here is the call graph for this function:

◆ equal()

bool nest::equal ( const NodeCollectionPTR  lhs,
const NodeCollectionPTR  rhs 
)

◆ exp_parameter()

ParameterPTR nest::exp_parameter ( const ParameterPTR  parameter)

Create the exponential of a parameter.

Returns
a new dynamically allocated parameter.

◆ extend_connectome()

static std::deque< ConnectionID > & nest::extend_connectome ( std::deque< ConnectionID > &  out,
std::deque< ConnectionID > &  in 
)
inlinestatic

Referenced by nest::ConnectionManager::get_connections().

Here is the caller graph for this function:

◆ find()

long nest::find ( const NodeCollectionPTR  nc,
size_t  node_id 
)

Referenced by nest::DynamicRecordablesMap< HostNode >::erase(), nest::SourceTable::fill_compressed_spike_data(), nest::cm_default::init_recordables_pointers_(), nest::RecordingBackendScreen::write(), and nest::RecordingBackendSIONlib::write().

Here is the caller graph for this function:

◆ flag_is_set()

template<typename Enum >
bool nest::flag_is_set ( const Enum  en,
const Enum  flag 
)

Referenced by nest::ConnectorModel::has_property().

Here is the caller graph for this function:

◆ generate_bit_mask()

constexpr uint64_t nest::generate_bit_mask ( const uint8_t  num_bits,
const uint8_t  bit_position 
)
constexpr

Default types used by the NEST kernel.

These typedefs should be used in place of the primitive C/C++ types. Thus, it will be easy to change the precision of the kernel or to adapt the kernel to different architectures (e.g. 32 or 64 bit).

◆ generate_max_value()

constexpr uint64_t nest::generate_max_value ( const uint8_t  num_bits)
constexpr

◆ get_connection_status() [1/2]

Dictionary nest::get_connection_status ( const ConnectionID &  conn)

◆ get_connection_status() [2/2]

std::vector< Dictionary > nest::get_connection_status ( const std::deque< ConnectionID > &  conns)

References nest::KernelManager::connection_manager, nest::ConnectionManager::get_synapse_status(), and kernel().

Here is the call graph for this function:

◆ get_connections()

std::deque< ConnectionID > nest::get_connections ( const Dictionary &  dict)

References Dictionary::all_entries_accessed(), nest::KernelManager::connection_manager, nest::ConnectionManager::get_connections(), Dictionary::init_access_flags(), and kernel().

Here is the call graph for this function:

◆ get_kernel_status()

Dictionary nest::get_kernel_status ( )

References nest::KernelManager::get_status(), and kernel().

Here is the call graph for this function:

◆ get_layer()

AbstractLayerPTR nest::get_layer ( NodeCollectionPTR  nc)

References nest::LayerMetadata::get_layer().

Referenced by connect_layers(), nest::AbstractLayer::create_layer(), displacement(), displacement(), distance(), distance(), distance(), dump_layer_connections(), dump_layer_nodes(), get_position(), get_position(), and select_nodes_by_mask().

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

◆ get_layer_status()

Dictionary nest::get_layer_status ( NodeCollectionPTR  )

◆ get_metadata()

Dictionary nest::get_metadata ( const NodeCollectionPTR  nc)

References nest::names::network_size().

Referenced by nest::Layer< D >::~Layer().

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

◆ get_model_defaults()

Dictionary nest::get_model_defaults ( const std::string &  component)

◆ get_nc_status()

Dictionary nest::get_nc_status ( NodeCollectionPTR  nc)

References Dictionary::end(), Dictionary::find(), get_node_status(), get_typename(), and Dictionary::size().

Here is the call graph for this function:

◆ get_node_status()

Dictionary nest::get_node_status ( const size_t  node_id)

References nest::NodeManager::get_status(), kernel(), and nest::KernelManager::node_manager.

Referenced by get_nc_status().

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

◆ get_nodes()

NodeCollectionPTR nest::get_nodes ( const Dictionary &  params,
const bool  local_only 
)

References nest::NodeManager::get_nodes(), kernel(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ get_position() [1/2]

std::vector< double > nest::get_position ( const size_t  node_id)

References get_layer(), kernel(), nest::NodeManager::node_id_to_node_collection(), and nest::KernelManager::node_manager.

Here is the call graph for this function:

◆ get_position() [2/2]

std::vector< std::vector< double > > nest::get_position ( NodeCollectionPTR  layer_nc)

References get_layer(), nest::NodeManager::is_local_node_id(), kernel(), and nest::KernelManager::node_manager.

Referenced by nest::FreeLayer< D >::communicate_positions_(), nest::Layer< D >::compute_displacement(), displacement(), distance(), distance(), nest::Layer< D >::dump_nodes(), and nest::Layer< D >::get_position_vector().

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

◆ get_rank_synced_rng()

RngPtr nest::get_rank_synced_rng ( )
inline

References nest::RandomManager::get_rank_synced_rng(), kernel(), and nest::KernelManager::random_manager.

Referenced by nest::Parameter::apply(), apply(), nest::FixedOutDegreeBuilder::connect_(), nest::FixedTotalNumberBuilder::connect_(), nest::SPManager::create_synapses(), nest::SPManager::delete_synapses_from_post(), nest::SPManager::delete_synapses_from_pre(), nest::ConnectionCreator::fixed_outdegree_(), get_value(), and nest::FreeLayer< D >::set_status().

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

◆ get_value()

double nest::get_value ( const ParameterPTR  param)

References get_rank_synced_rng().

Here is the call graph for this function:

◆ get_vp_specific_rng()

RngPtr nest::get_vp_specific_rng ( size_t  tid)
inline

References nest::RandomManager::get_vp_specific_rng(), kernel(), and nest::KernelManager::random_manager.

Referenced by nest::OneToOneBuilder::connect_(), nest::AllToAllBuilder::connect_(), nest::FixedInDegreeBuilder::connect_(), nest::FixedOutDegreeBuilder::connect_(), nest::FixedTotalNumberBuilder::connect_(), nest::BernoulliBuilder::connect_(), nest::PoissonBuilder::connect_(), nest::SPBuilder::connect_(), nest::ConnectionCreator::connect_to_target_(), nest::ConnectionCreator::connect_to_target_poisson_(), nest::gamma_sup_generator::event_hook(), nest::inhomogeneous_poisson_generator::event_hook(), nest::mip_generator::event_hook(), nest::poisson_generator::event_hook(), nest::poisson_generator_ps::event_hook(), nest::ppd_sup_generator::event_hook(), nest::sinusoidal_poisson_generator::event_hook(), nest::spike_dilutor::event_hook(), nest::ConnectionCreator::fixed_indegree_(), nest::rate_neuron_ipn< TNonlinearities >::init_buffers_(), nest::rate_neuron_opn< TNonlinearities >::init_buffers_(), nest::binary_neuron< TGainfunction >::pre_run_hook(), nest::gif_psc_exp::pre_run_hook(), nest::gif_psc_exp_multisynapse::pre_run_hook(), nest::iaf_psc_exp::pre_run_hook(), nest::iaf_tum_2000::pre_run_hook(), nest::pp_psc_delta::pre_run_hook(), nest::bernoulli_synapse< targetidentifierT >::send(), nest::quantal_stp_synapse< targetidentifierT >::send(), nest::OneToOneBuilder::sp_connect_(), nest::AllToAllBuilder::sp_connect_(), nest::ThirdBernoulliWithPoolBuilder::third_connect(), nest::noise_generator::update(), nest::pulsepacket_generator::update(), nest::sinusoidal_poisson_generator::update(), nest::rate_neuron_ipn< TNonlinearities >::update_(), nest::rate_neuron_opn< TNonlinearities >::update_(), and update_value_param().

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

◆ get_vp_synced_rng()

RngPtr nest::get_vp_synced_rng ( size_t  tid)
inline

References nest::RandomManager::get_vp_synced_rng(), kernel(), and nest::KernelManager::random_manager.

Referenced by nest::SymmetricBernoulliBuilder::connect_(), and nest::mip_generator::update().

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

◆ init_nest()

void nest::init_nest ( int *  argc,
char **  argv[] 
)

References create_doughnut(), nest::KernelManager::create_kernel_manager(), nest::MPIManager::init_mpi(), nest::KernelManager::initialize(), kernel(), nest::KernelManager::mpi_manager, and register_mask().

Here is the call graph for this function:

◆ insertion_sort()

template<typename T1 , typename T2 >
void nest::insertion_sort ( BlockVector< T1 > &  vec_sort,
BlockVector< T2 > &  vec_perm,
const size_t  lo,
const size_t  hi 
)

Insertion sort, adapted from Sedgewick & Wayne (2011), Algorithms 4th edition, p251ff.

Sorts the two vectors vec_sort and vec_perm, by sorting the entries in vec_sort and applying the same exchanges to vec_perm.

Referenced by quicksort3way().

Here is the caller graph for this function:

◆ inside()

bool nest::inside ( const std::vector< double > &  point,
const MaskPTR  mask 
)

Referenced by nest::BallMask< D >::inside(), nest::EllipseMask< D >::inside(), nest::BallMask< D >::inside(), nest::EllipseMask< D >::inside(), nest::BoxMask< D >::inside(), and nest::Mask< D >::inside().

Here is the caller graph for this function:

◆ install_module()

void nest::install_module ( const std::string &  module)

References nest::ModuleManager::install(), kernel(), and nest::KernelManager::module_manager.

Here is the call graph for this function:

◆ intersect_mask()

MaskPTR nest::intersect_mask ( const MaskPTR  mask1,
const MaskPTR  mask2 
)

◆ is_spatial()

bool nest::is_spatial ( const ParameterPTR  param)

◆ kernel()

KernelManager & nest::kernel ( )
inline

References nest::KernelManager::get_kernel_manager().

Referenced by nest::GenericConnectorModel< ConnectionT >::add_connection(), nest::TargetTableDevices::add_connection_from_device(), nest::TargetTableDevices::add_connection_to_device(), nest::NodeManager::add_devices_(), nest::BufferResizeLog::add_entry(), nest::SparseNodeArray::add_local_node(), nest::NodeManager::add_music_nodes_(), nest::NodeManager::add_neurons_(), nest::NodeManager::add_node(), nest::SliceRingBuffer::add_spike(), nest::DataSecondaryEvent< DataType, Subclass >::add_syn_id(), nest::TargetTable::add_target(), nest::nc_const_iterator::advance_local_iter_to_new_part_(), nest::SimulationManager::advance_time_(), dictionary_::all_entries_accessed(), nest::PerThreadBoolIndicator::all_false(), nest::PerThreadBoolIndicator::all_true(), nest::PerThreadBoolIndicator::any_false(), nest::PerThreadBoolIndicator::any_true(), apply(), nest::NodeCollectionPrimitive::assert_consistent_model_ids_(), nest::DelayChecker::assert_two_valid_delays_steps(), nest::DelayChecker::assert_valid_delay_ms(), nest::inhomogeneous_poisson_generator::Parameters_::assert_valid_rate_time_and_insert(), nest::BipartiteConnBuilder::BipartiteConnBuilder(), nest::RecordingBackendSIONlib::build_filename_(), nest::ConnectionManager::calibrate(), nest::ModelManager::calibrate(), nest::SimulationManager::call_update_(), nest::BipartiteConnBuilder::change_connected_synaptic_elements(), nest::KernelManager::change_number_of_threads(), nest::RandomManager::check_rng_synchrony(), nest::ConnectionManager::check_secondary_connections_exist(), nest::stdp_dopamine_synapse< targetidentifierT >::check_synapse_params(), nest::NodeManager::check_wfr_use(), cleanup(), nest::RecordingBackendMPI::cleanup(), nest::SimulationManager::cleanup(), nest::StimulationBackendMPI::cleanup(), nest::RecordingBackendSIONlib::close_files_(), nest::ConnectionManager::collect_compressed_spike_data(), nest::SourceTable::collect_compressible_sources(), nest::EventDeliveryManager::collocate_target_data_buffers_(), nest::EventDeliveryManager::collocate_target_data_buffers_compressed_(), nest::FreeLayer< D >::communicate_positions_(), nest::ModelManager::compare_model_by_id_(), nest::SourceTable::compute_buffer_pos_for_unique_secondary_sources(), nest::ConnectionManager::compute_compressed_secondary_recv_buffer_positions(), nest::RecordingBackendASCII::DeviceData::compute_filename_(), nest::eprop_iaf_adapt_bsshslm_2020::compute_gradient(), nest::eprop_iaf_bsshslm_2020::compute_gradient(), nest::eprop_readout_bsshslm_2020::compute_gradient(), nest::ConnectionManager::compute_target_data_buffer_size(), nest::RecordingBackendASCII::compute_vp_node_id_string_(), nest::EventDeliveryManager::configure_secondary_buffers(), nest::EventDeliveryManager::configure_spike_data_buffers(), nest::EventDeliveryManager::configure_spike_register(), nest::BipartiteConnBuilder::connect(), nest::ConnectionManager::connect(), nest::ConnectionManager::connect(), nest::ConnectionManager::connect(), connect(), nest::ThirdInBuilder::connect_(), nest::OneToOneBuilder::connect_(), nest::AllToAllBuilder::connect_(), nest::FixedInDegreeBuilder::connect_(), nest::FixedOutDegreeBuilder::connect_(), nest::FixedTotalNumberBuilder::connect_(), nest::BernoulliBuilder::connect_(), nest::PoissonBuilder::connect_(), nest::SymmetricBernoulliBuilder::connect_(), nest::SPBuilder::connect_(), nest::ConnectionManager::connect_(), nest::ConnectionManager::connect_arrays(), connect_arrays(), connect_layers(), nest::ConnectionManager::connect_sonata(), connect_sonata(), nest::ConnectionCreator::connect_to_target_(), nest::ConnectionCreator::connect_to_target_poisson_(), nest::ConnectionManager::connect_tripartite(), connect_tripartite(), nest::ConnectionManager::connection_required(), nest::ConnectionCreator::ConnectionCreator(), nest::ModelManager::copy_connection_model_(), copy_model(), nest::ModelManager::copy_node_model_(), create(), nest::NodeCollection::create_(), nest::AbstractLayer::create_layer(), nest::SPManager::delete_synapse(), nest::SPManager::delete_synapses_from_post(), nest::SPManager::delete_synapses_from_pre(), nest::EventDeliveryManager::deliver_events_(), nest::EventDeliveryManager::deliver_secondary_events(), nest::ConnectionManager::deliver_secondary_events(), nest::NodeManager::destruct_nodes_(), disable_structural_plasticity(), nest::SliceRingBuffer::discard_events(), nest::SPManager::disconnect(), disconnect(), nest::SPManager::disconnect(), disconnect(), nest::OneToOneBuilder::disconnect_(), nest::AllToAllBuilder::disconnect_(), displacement(), displacement(), distance(), distance(), distance(), nest::EventDeliveryManager::distribute_target_data_buffers_(), nest::SourceTable::dump_compressed_spike_data(), nest::SourceTable::dump_compressible_sources(), nest::Layer< D >::dump_connections(), nest::SourceTable::dump_sources(), nest::Stopwatch< detailed_timer, threaded_timer >::elapsed(), nest::iaf_psc_exp_ps::emit_instant_spike_(), nest::iaf_psc_exp_ps_lossless::emit_instant_spike_(), nest::iaf_psc_alpha_ps::emit_instant_spike_(), nest::iaf_psc_delta_ps::emit_instant_spike_(), nest::iaf_psc_exp_ps::emit_spike_(), nest::iaf_psc_exp_ps_lossless::emit_spike_(), nest::iaf_psc_delta_ps::emit_spike_(), nest::iaf_psc_alpha_ps::emit_spike_(), enable_structural_plasticity(), nest::SPManager::enable_structural_plasticity(), nest::EpropArchivingNode< HistEntryT >::erase_used_eprop_history(), nest::ConnectionCreator::extract_params_(), nest::SourceTable::fill_compressed_spike_data(), nest::ConnectionManager::fill_target_buffer(), nest::NodeManager::finalize_nodes(), nest::SourceTable::find_first_source(), nest::SourceTable::find_maximal_position(), nest::ConnectionCreator::fixed_indegree_(), nest::ConnectionCreator::fixed_outdegree_(), nest::EventDeliveryManager::gather_secondary_events(), nest::EventDeliveryManager::gather_spike_data_(), nest::EventDeliveryManager::gather_target_data(), nest::EventDeliveryManager::gather_target_data_compressed(), get_connection_status(), get_connection_status(), get_connections(), nest::ConnectionManager::get_connections(), nest::ConnectionManager::get_connections(), nest::TargetTableDevices::get_connections_from_devices_(), nest::TargetTableDevices::get_connections_to_device_for_lid_(), nest::TargetTableDevices::get_connections_to_devices_(), nest::ModelManager::get_connector_defaults(), nest::ConnectionManager::get_delay_checker(), nest::VPManager::get_end_rank_per_thread(), nest::EventDeliveryManager::get_global_max_spikes_per_rank_(), nest::ArchivingNode::get_history(), nest::RingBuffer::get_index_(), nest::MultRBuffer::get_index_(), nest::ListRingBuffer::get_index_(), nest::ArchivingNode::get_K_value(), nest::ArchivingNode::get_K_values(), get_kernel_status(), nest::ListRingBuffer::get_list(), nest::ClopathArchivingNode::get_LTD_value(), nest::NodeManager::get_max_num_local_nodes(), nest::Node::get_model_(), get_model_defaults(), nest::ModelRangeManager::get_model_of_node_id(), nest::NodeManager::get_mpi_local_node_or_device_head(), nest::Node::get_name(), nest::SourceTable::get_next_target_data(), nest::SourceTable::get_node_id(), nest::NodeManager::get_node_or_proxy(), nest::NodeManager::get_node_or_proxy(), nest::NodePosParameter::get_node_pos_(), get_node_status(), nest::NodeManager::get_nodes(), get_nodes(), nest::VPManager::get_num_assigned_ranks_per_thread(), nest::ModelManager::get_num_connection_models(), nest::VPManager::get_num_virtual_processes(), nest::RecordingBackendMPI::get_port(), nest::StimulationBackendMPI::get_port(), get_position(), get_position(), nest::SimulationManager::get_previous_slice_origin(), nest::ModelManager::get_proxy_node(), get_rank_synced_rng(), nest::ConnectionManager::get_sources(), nest::Model::get_status(), nest::multimeter::get_status(), nest::spike_recorder::get_status(), nest::spin_detector::get_status(), nest::weight_recorder::get_status(), nest::GenericConnectorModel< ConnectionT >::get_status(), nest::proxynode::get_status(), nest::RecordingDevice::get_status(), nest::SPManager::get_status(), nest::FreeLayer< D >::get_status(), nest::Stopwatch< detailed_timer, threaded_timer >::get_status(), nest::Node::get_status_base(), nest::ConnectionManager::get_synapse_status(), nest::TargetTableDevices::get_synapse_status_to_device(), nest::SPManager::get_synaptic_elements(), nest::TargetIdentifierIndex::get_target_ptr(), nest::ConnectionManager::get_targets(), nest::NodeManager::get_thread_siblings(), nest::RingBuffer::get_value(), nest::MultRBuffer::get_value(), nest::RingBuffer::get_value_wfr_update(), nest::VPManager::get_vp(), get_vp_specific_rng(), get_vp_synced_rng(), nest::NodeCollectionComposite::gid_to_rank_(), nest::NodeCollectionComposite::gid_to_vp_(), nest::ignore_and_fire::handle(), nest::amat2_psc_exp::handle(), nest::binary_neuron< TGainfunction >::handle(), nest::cm_default::handle(), nest::eprop_iaf::handle(), nest::eprop_iaf_adapt::handle(), nest::eprop_iaf_adapt_bsshslm_2020::handle(), nest::eprop_iaf_bsshslm_2020::handle(), nest::eprop_iaf_psc_delta::handle(), nest::eprop_iaf_psc_delta_adapt::handle(), nest::eprop_readout::handle(), nest::eprop_readout_bsshslm_2020::handle(), nest::gif_psc_exp::handle(), nest::gif_psc_exp_multisynapse::handle(), nest::glif_psc::handle(), nest::glif_psc_double_alpha::handle(), nest::iaf_psc_alpha::handle(), nest::iaf_psc_alpha_multisynapse::handle(), nest::iaf_psc_alpha_ps::handle(), nest::iaf_psc_delta::handle(), nest::iaf_psc_delta_ps::handle(), nest::iaf_psc_exp::handle(), nest::iaf_psc_exp_htum::handle(), nest::iaf_psc_exp_multisynapse::handle(), nest::iaf_psc_exp_ps::handle(), nest::iaf_psc_exp_ps_lossless::handle(), nest::iaf_tum_2000::handle(), nest::izhikevich::handle(), nest::mat2_psc_exp::handle(), nest::pp_psc_delta::handle(), nest::rate_neuron_ipn< TNonlinearities >::handle(), nest::rate_neuron_opn< TNonlinearities >::handle(), nest::rate_transformer_node< TNonlinearities >::handle(), nest::ignore_and_fire::handle(), nest::amat2_psc_exp::handle(), nest::binary_neuron< TGainfunction >::handle(), nest::cm_default::handle(), nest::correlomatrix_detector::handle(), nest::correlospinmatrix_detector::handle(), nest::eprop_iaf::handle(), nest::eprop_iaf_adapt::handle(), nest::eprop_iaf_adapt_bsshslm_2020::handle(), nest::eprop_iaf_bsshslm_2020::handle(), nest::eprop_iaf_psc_delta::handle(), nest::eprop_iaf_psc_delta_adapt::handle(), nest::eprop_readout::handle(), nest::eprop_readout_bsshslm_2020::handle(), nest::gif_psc_exp::handle(), nest::gif_psc_exp_multisynapse::handle(), nest::glif_psc::handle(), nest::glif_psc_double_alpha::handle(), nest::iaf_chs_2007::handle(), nest::iaf_psc_alpha::handle(), nest::iaf_psc_alpha_multisynapse::handle(), nest::iaf_psc_alpha_ps::handle(), nest::iaf_psc_delta::handle(), nest::iaf_psc_delta_ps::handle(), nest::iaf_psc_exp::handle(), nest::iaf_psc_exp_htum::handle(), nest::iaf_psc_exp_multisynapse::handle(), nest::iaf_psc_exp_ps::handle(), nest::iaf_psc_exp_ps_lossless::handle(), nest::iaf_tum_2000::handle(), nest::izhikevich::handle(), nest::mat2_psc_exp::handle(), nest::parrot_neuron::handle(), nest::parrot_neuron_ps::handle(), nest::pp_psc_delta::handle(), nest::spike_dilutor::handle(), nest::volume_transmitter::handle(), nest::noise_generator::handles_test_event(), nest::eprop_readout::handles_test_event(), nest::eprop_readout_bsshslm_2020::handles_test_event(), dictionary_::init_access_flags(), nest::rate_neuron_ipn< TNonlinearities >::init_buffers_(), nest::rate_neuron_opn< TNonlinearities >::init_buffers_(), nest::rate_transformer_node< TNonlinearities >::init_buffers_(), nest::ClopathArchivingNode::init_clopath_buffers(), nest::EventDeliveryManager::init_moduli(), nest::MPIManager::init_mpi(), init_nest(), nest::spike_dilutor::init_state_(), nest::SourceTable::initialize(), nest::TargetTable::initialize(), nest::TargetTableDevices::initialize(), nest::RecordingBackendASCII::initialize(), nest::RecordingBackendMemory::initialize(), nest::RecordingBackendMPI::initialize(), nest::RecordingBackendScreen::initialize(), nest::RecordingBackendSIONlib::initialize(), nest::StimulationBackendMPI::initialize(), nest::ConnectionManager::initialize(), nest::EventDeliveryManager::initialize(), nest::ModelManager::initialize(), nest::NodeManager::initialize(), nest::RandomManager::initialize(), nest::PerThreadBoolIndicator::initialize(), nest::ConnectionManager::initialize_iteration_state(), install_module(), nest::NodeManager::is_local_node(), nest::NodeManager::is_local_node_id(), nest::VPManager::is_local_vp(), nest::Stopwatch< detailed_timer, threaded_timer >::is_running_(), nest::FreeLayer< D >::lid_to_position_id_(), nest::LognormalParameter::LognormalParameter(), nest::BipartiteConnBuilder::loop_over_targets_(), message(), nest::nc_const_iterator::nc_const_iterator(), nest::nc_const_iterator::nc_const_iterator(), nest::LoggingEvent::nest_verbosity_level(), nest::NodeCollectionPrimitive::NodeCollectionPrimitive(), nest::NormalParameter::NormalParameter(), nest::RecordingBackendASCII::DeviceData::open_file(), nest::RecordingBackendSIONlib::open_files_(), nest::nc_const_iterator::operator*(), nest::SynapticElement::operator=(), nest::ConnectionCreator::pairwise_bernoulli_on_source_(), nest::ConnectionCreator::pairwise_bernoulli_on_target_(), nest::ConnectionCreator::pairwise_poisson_(), nest::SourceTable::populate_target_data_fields_(), nest::NodeManager::post_run_cleanup(), nest::RecordingBackendSIONlib::post_step_hook(), nest::ac_generator::pre_run_hook(), nest::noise_generator::pre_run_hook(), nest::pulsepacket_generator::pre_run_hook(), nest::sinusoidal_poisson_generator::pre_run_hook(), nest::spike_train_injector::pre_run_hook(), nest::volume_transmitter::pre_run_hook(), nest::RecordingDevice::pre_run_hook(), prepare(), nest::RecordingBackendMPI::prepare(), nest::SimulationManager::prepare(), nest::StimulationBackendMPI::prepare(), nest::TargetTable::prepare(), nest::SliceRingBuffer::prepare_delivery(), nest::NodeManager::prepare_nodes(), nest::Stopwatch< detailed_timer, threaded_timer >::print(), nest::NodeManager::print(), nest::NodeCollectionComposite::print_me(), print_nodes_to_string(), nest::NodeCollectionPrimitive::print_primitive(), nest::stdp_dopamine_synapse< targetidentifierT >::process_dopa_spikes_(), nest::NodeCollectionPrimitive::rank_local_begin(), nest::NodeCollectionComposite::rank_local_begin(), nest::rate_neuron_ipn< TNonlinearities >::rate_neuron_ipn(), nest::rate_neuron_ipn< TNonlinearities >::rate_neuron_ipn(), nest::rate_neuron_opn< TNonlinearities >::rate_neuron_opn(), nest::rate_neuron_opn< TNonlinearities >::rate_neuron_opn(), nest::rate_transformer_node< TNonlinearities >::rate_transformer_node(), nest::rate_transformer_node< TNonlinearities >::rate_transformer_node(), nest::ThirdInBuilder::register_connection(), register_connection_model(), register_logger_client(), register_node_model(), nest::ModelManager::register_node_model_(), nest::ModelManager::register_specific_connection_model_(), nest::ArchivingNode::register_stdp_connection(), nest::SourceTable::remove_disabled_sources(), nest::Stopwatch< detailed_timer, threaded_timer >::reset(), nest::EventDeliveryManager::reset_complete_marker_spike_data_(), reset_kernel(), nest::RingBuffer::resize(), nest::MultRBuffer::resize(), nest::ListRingBuffer::resize(), nest::MultiChannelInputBuffer< num_channels >::resize(), nest::SliceRingBuffer::resize(), nest::SourceTable::resize_compressible_sources(), nest::ConnectionManager::resize_connections(), nest::EventDeliveryManager::resize_send_recv_buffers_spike_data_(), nest::EventDeliveryManager::resize_send_recv_buffers_target_data(), nest::SourceTable::resize_sources(), nest::TargetTableDevices::resize_to_number_of_neurons(), nest::TargetTableDevices::resize_to_number_of_synapse_types(), nest::Event::retrieve_sender_node_id_from_source_table(), run(), nest::SimulationManager::run(), nest::stdp_nn_pre_centered_synapse< targetidentifierT >::send(), nest::stdp_nn_restr_synapse< targetidentifierT >::send(), nest::stdp_nn_symm_synapse< targetidentifierT >::send(), nest::stdp_synapse< targetidentifierT >::send(), nest::stdp_triplet_synapse< targetidentifierT >::send(), nest::vogels_sprekeler_synapse< targetidentifierT >::send(), nest::jonke_synapse< targetidentifierT >::send(), nest::stdp_dopamine_synapse< targetidentifierT >::send(), nest::stdp_facetshw_synapse_hom< targetidentifierT >::send(), nest::stdp_synapse_hom< targetidentifierT >::send(), nest::stdp_pl_synapse_hom< targetidentifierT >::send(), nest::eprop_synapse_bsshslm_2020< targetidentifierT >::send(), nest::EventDeliveryManager::send(), nest::ConnectionManager::send_from_device(), nest::EventDeliveryManager::send_local_(), nest::EventDeliveryManager::send_local_(), nest::EventDeliveryManager::send_off_grid_remote(), nest::EventDeliveryManager::send_remote(), nest::EventDeliveryManager::send_secondary(), nest::proxynode::send_test_event(), nest::TargetTableDevices::send_to_device(), nest::TargetTableDevices::send_to_device(), nest::ConnectionManager::send_to_devices(), nest::ConnectionManager::send_to_devices(), nest::Connector< ConnectionT >::send_weight_event(), nest::SendBufferPosition::SendBufferPosition(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_secondary_event(), nest::proxynode::sends_signal(), nest::RecordingDevice::Parameters_::set(), nest::StimulationDevice::Parameters_::set(), nest::SynapticElement::set(), nest::DataSecondaryEvent< DataType, Subclass >::set_coeff_length(), set_connection_status(), set_connection_status(), nest::ConnectionManager::set_connections_have_changed(), nest::BipartiteConnBuilder::set_default_weight_or_delay_(), nest::EventDeliveryManager::set_end_marker_(), nest::StimulationDevice::set_initialized_(), nest::RecordingDevice::set_initialized_(), set_kernel_status(), set_model_defaults(), set_nc_status(), set_node_status(), nest::VPManager::set_num_threads(), nest::ArchivingNode::set_spiketime(), nest::RecordingBackendASCII::DeviceData::set_status(), nest::RecordingBackendMemory::DeviceData::set_status(), nest::spike_generator::set_status(), nest::spike_train_injector::set_status(), nest::ConnectionManager::set_status(), nest::GenericConnectorModel< ConnectionT >::set_status(), nest::FreeLayer< D >::set_status(), nest::RecordingDevice::set_status(), nest::SimulationManager::set_status(), nest::SPManager::set_status(), nest::StimulationDevice::set_status(), nest::VPManager::set_status(), nest::DelayChecker::set_status(), nest::cont_delay_synapse< targetidentifierT >::set_status(), nest::EpropSynapseCommonProperties::set_status(), nest::EpropSynapseBSSHSLM2020CommonProperties::set_status(), nest::STDPDopaCommonProperties::set_status(), nest::CommonSynapseProperties::set_status(), nest::Connection< targetidentifierT >::set_status(), nest::FlushEventMechanism::set_status(), nest::NodeManager::set_status(), nest::ModelManager::set_synapse_defaults_(), nest::BipartiteConnBuilder::set_synapse_model_(), nest::BipartiteConnBuilder::set_synapse_params(), nest::ConnectionManager::set_synapse_status(), nest::TargetTableDevices::set_synapse_status_to_device(), nest::TargetIdentifierIndex::set_target(), nest::Model::set_threads(), shutdown_nest(), nest::BipartiteConnBuilder::single_connect_(), nest::BipartiteConnBuilder::single_disconnect_(), nest::NodeCollectionComposite::slice(), nest::SourceTable::source_should_be_processed_(), nest::OneToOneBuilder::sp_connect_(), nest::AllToAllBuilder::sp_connect_(), nest::OneToOneBuilder::sp_disconnect_(), nest::AllToAllBuilder::sp_disconnect_(), nest::NodeCollectionComposite::specific_local_begin_(), nest::ConnectionManager::split_to_neuron_device_vectors_(), nest::Stopwatch< detailed_timer, threaded_timer >::start(), nest::Stopwatch< detailed_timer, threaded_timer >::stop(), nest::SynapticElement::SynapticElement(), nest::ConnectionManager::sync_has_primary_connections(), synchronize(), nest::ThirdBernoulliWithPoolBuilder::third_connect(), nest::ThirdBernoulliWithPoolBuilder::ThirdBernoulliWithPoolBuilder(), nest::ThirdInBuilder::ThirdInBuilder(), nest::NodeCollectionPrimitive::thread_local_begin(), nest::NodeCollectionComposite::thread_local_begin(), nest::VPManager::thread_to_vp(), nest::NodeCollection::to_array(), nest::ConnectionManager::trigger_update_weight(), nest::iaf_chs_2007::update(), nest::iaf_psc_exp::update(), nest::iaf_tum_2000::update(), nest::volume_transmitter::update(), nest::ignore_and_fire::update(), nest::ac_generator::update(), nest::amat2_psc_exp::update(), nest::binary_neuron< TGainfunction >::update(), nest::cm_default::update(), nest::dc_generator::update(), 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(), nest::eprop_readout::update(), nest::eprop_readout_bsshslm_2020::update(), nest::gamma_sup_generator::update(), nest::gif_psc_exp::update(), nest::gif_psc_exp_multisynapse::update(), nest::glif_psc::update(), nest::glif_psc_double_alpha::update(), nest::iaf_psc_alpha::update(), nest::iaf_psc_alpha_multisynapse::update(), nest::iaf_psc_delta::update(), nest::iaf_psc_exp_htum::update(), nest::iaf_psc_exp_multisynapse::update(), nest::inhomogeneous_poisson_generator::update(), nest::izhikevich::update(), nest::mat2_psc_exp::update(), nest::mip_generator::update(), nest::multimeter::update(), nest::noise_generator::update(), nest::parrot_neuron::update(), nest::parrot_neuron_ps::update(), nest::poisson_generator::update(), nest::poisson_generator_ps::update(), nest::pp_psc_delta::update(), nest::ppd_sup_generator::update(), nest::pulsepacket_generator::update(), nest::sinusoidal_poisson_generator::update(), nest::spike_dilutor::update(), nest::spike_generator::update(), nest::spike_train_injector::update(), nest::step_rate_generator::update(), nest::step_current_generator::update(), nest::SimulationManager::update_(), nest::rate_neuron_ipn< TNonlinearities >::update_(), nest::rate_neuron_opn< TNonlinearities >::update_(), nest::rate_transformer_node< TNonlinearities >::update_(), nest::SimulationManager::update_connection_infrastructure(), nest::SPBuilder::update_delay(), nest::ConnectionManager::update_delay_extrema_(), nest::StimulationBackendMPI::update_device(), nest::EventDeliveryManager::update_moduli(), nest::BipartiteConnBuilder::update_param_dict_(), nest::SPManager::update_structural_plasticity(), nest::NodeManager::update_thread_local_node_data(), update_value_param(), nest::GenericConnectorModel< ConnectionT >::used_default_delay(), nest::NodeCollection::valid(), nest::NormalParameter::value(), nest::LognormalParameter::value(), nest::VPManager::vp_to_thread(), nest::RecordingDevice::write(), nest::RecordingBackendMPI::write(), nest::EventDeliveryManager::write_done_marker_secondary_events_(), nest::EventDeliveryManager::write_toggle(), nest::ThirdBernoulliWithPoolBuilder::~ThirdBernoulliWithPoolBuilder(), and nest::ThirdInBuilder::~ThirdInBuilder().

Here is the call graph for this function:

◆ make_nodecollection()

NodeCollectionPTR nest::make_nodecollection ( const std::vector< size_t > &  node_ids)

References nest::NodeCollection::create().

Here is the call graph for this function:

◆ mask_factory_()

MaskFactory & nest::mask_factory_ ( void  )

Referenced by create_mask(), register_mask(), and register_mask().

Here is the caller graph for this function:

◆ max_parameter()

ParameterPTR nest::max_parameter ( const ParameterPTR  parameter,
const double  other 
)

Create parameter whose value is the maximum of a given parameter's value and the given value.

Returns
a new dynamically allocated parameter.

◆ median3_()

template<typename T >
size_t nest::median3_ ( const BlockVector< T > &  vec,
const size_t  i,
const size_t  j,
const size_t  k 
)
inline

Calculates the median of three elements.

See http://algs4.cs.princeton.edu/23quicksort/QuickX.java.html.

Referenced by quicksort3way().

Here is the caller graph for this function:

◆ message()

void nest::message ( const VerbosityLevel  level,
const std::string &  function,
const std::string &  message,
const std::string &  file,
const size_t  line 
)

References kernel(), nest::KernelManager::logging_manager, message(), and nest::LoggingManager::publish_log().

Referenced by nest::NodeCollectionPrimitive::assert_consistent_model_ids_(), nest::LoggingEvent::LoggingEvent(), and message().

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

◆ min_parameter()

ParameterPTR nest::min_parameter ( const ParameterPTR  parameter,
const double  other 
)

Create parameter whose value is the minimum of a given parameter's value and the given value.

Returns
a new dynamically allocated parameter.

◆ minus_mask()

MaskPTR nest::minus_mask ( const MaskPTR  mask1,
const MaskPTR  mask2 
)

◆ mod()

static double nest::mod ( double  x,
double  p 
)
inlinestatic

Referenced by nest::Ntree< D, T, max_capacity, max_depth >::masked_iterator::masked_iterator(), nest::ModelManager::memory_info(), and nest::NodeManager::print().

Here is the caller graph for this function:

◆ multiply_parameter()

ParameterPTR nest::multiply_parameter ( const ParameterPTR  first,
const ParameterPTR  second 
)

Create the product of one parameter with another.

Returns
a new dynamically allocated parameter.

◆ nc_size()

size_t nest::nc_size ( NodeCollectionPTR  nc)

◆ node_collection_array_index() [1/2]

NodeCollectionPTR nest::node_collection_array_index ( NodeCollectionPTR  nc,
const bool *  array,
unsigned long  n 
)

References nest::NodeCollection::create().

Here is the call graph for this function:

◆ node_collection_array_index() [2/2]

NodeCollectionPTR nest::node_collection_array_index ( NodeCollectionPTR  nc,
const long *  array,
unsigned long  n 
)

References nest::NodeCollection::create().

Here is the call graph for this function:

◆ node_collection_to_array()

std::vector< size_t > nest::node_collection_to_array ( NodeCollectionPTR  node_collection,
const std::string &  selection 
)

◆ node_id_less()

template<int D>
static bool nest::node_id_less ( const std::pair< Position< D >, size_t > &  a,
const std::pair< Position< D >, size_t > &  b 
)
static

◆ number_of_uints_covered()

template<typename T >
size_t nest::number_of_uints_covered ( )

This template function returns the number of uints covered by a variable of type T.

This function is used to determine the storage demands for a variable of type T in the NEST communication buffer, which is of type std::vector<unsigned int>.

◆ operator!=() [1/2]

bool nest::operator!= ( const SourceTablePosition &  lhs,
const SourceTablePosition &  rhs 
)
inline

References operator==().

Here is the call graph for this function:

◆ operator!=() [2/2]

bool nest::operator!= ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator&()

template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator& ( const Enum  lhs,
const Enum  rhs 
)
constexpr

◆ operator&=()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator&= ( Enum &  lhs,
Enum  rhs 
)

◆ operator*() [1/2]

Time nest::operator* ( const long  factor,
const Time &  t 
)
inline

◆ operator*() [2/2]

Time nest::operator* ( const Time &  t,
long  factor 
)
inline

◆ operator+() [1/2]

Time nest::operator+ ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator+() [2/2]

NodeCollectionPTR nest::operator+ ( NodeCollectionPTR  lhs,
NodeCollectionPTR  rhs 
)
inline

◆ operator-()

Time nest::operator- ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator<() [1/7]

bool nest::operator< ( const histentry_extended &  he,
double  t 
)
inline

Referenced by operator>(), and operator>=().

Here is the caller graph for this function:

◆ operator<() [2/7]

bool nest::operator< ( const HistEntryEprop &  a,
const HistEntryEprop &  b 
)
inline

◆ operator<() [3/7]

bool nest::operator< ( const HistEntryEprop &  e,
long  t 
)
inline

◆ operator<() [4/7]

bool nest::operator< ( const Source &  lhs,
const Source &  rhs 
)
inline

◆ operator<() [5/7]

◆ operator<() [6/7]

bool nest::operator< ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator<() [7/7]

bool nest::operator< ( long  t,
const HistEntryEprop &  e 
)
inline

◆ operator<<() [1/3]

template<int D, class T >
std::ostream & nest::operator<< ( std::ostream &  os,
const Position< D, T > &  pos 
)

◆ operator<<() [2/3]

std::ostream & nest::operator<< ( std::ostream &  out,
const LoggingEvent &  e 
)

◆ operator<<() [3/3]

std::ostream & nest::operator<< ( std::ostream &  out,
const NodeCollectionPTR  nc 
)
inline

◆ operator<=() [1/2]

bool nest::operator<= ( const SourceTablePosition &  lhs,
const SourceTablePosition &  rhs 
)
inline

References operator>().

Here is the call graph for this function:

◆ operator<=() [2/2]

bool nest::operator<= ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator==() [1/3]

bool nest::operator== ( const Source &  lhs,
const Source &  rhs 
)
inline

◆ operator==() [2/3]

bool nest::operator== ( const SourceTablePosition &  lhs,
const SourceTablePosition &  rhs 
)
inline

◆ operator==() [3/3]

bool nest::operator== ( const Time &  t1,
const Time &  t2 
)
inline

Referenced by operator!=().

Here is the caller graph for this function:

◆ operator>() [1/3]

bool nest::operator> ( const Source &  lhs,
const Source &  rhs 
)
inline

◆ operator>() [2/3]

bool nest::operator> ( const SourceTablePosition &  lhs,
const SourceTablePosition &  rhs 
)
inline

References operator<().

Here is the call graph for this function:

◆ operator>() [3/3]

bool nest::operator> ( const Time &  t1,
const Time &  t2 
)
inline

Referenced by operator<=().

Here is the caller graph for this function:

◆ operator>=() [1/2]

bool nest::operator>= ( const SourceTablePosition &  lhs,
const SourceTablePosition &  rhs 
)
inline

References operator<().

Here is the call graph for this function:

◆ operator>=() [2/2]

bool nest::operator>= ( const Time &  t1,
const Time &  t2 
)
inline

◆ operator^()

template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator^ ( const Enum &  lhs,
const Enum  rhs 
)
constexpr

◆ operator^=()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator^= ( Enum &  lhs,
Enum  rhs 
)

◆ operator|()

template<typename Enum >
constexpr std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator| ( const Enum  lhs,
const Enum  rhs 
)
constexpr

◆ operator|=()

template<typename Enum >
std::enable_if< EnableBitMaskOperators< Enum >::enable, Enum >::type nest::operator|= ( Enum &  lhs,
Enum  rhs 
)

◆ parameter_factory_()

ParameterFactory & nest::parameter_factory_ ( void  )

Referenced by create_parameter(), and register_parameter().

Here is the caller graph for this function:

◆ pow_parameter()

ParameterPTR nest::pow_parameter ( const ParameterPTR  parameter,
const double  exponent 
)

Create a parameter raised to the power of an exponent.

Returns
a new dynamically allocated parameter.

◆ pprint_to_string()

std::string nest::pprint_to_string ( NodeCollectionPTR  nc)

◆ prepare()

void nest::prepare ( )

do calibrations for network, open files, ... before run()

Prepares a simulation before calling any number of run(t_n) calls to actually run the simulation

See also
run()
cleanup()

References kernel(), and nest::KernelManager::prepare().

Referenced by simulate().

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

◆ print_nodes_to_stream()

void nest::print_nodes_to_stream ( std::ostream &  out = std::cout)

◆ print_nodes_to_string()

std::string nest::print_nodes_to_string ( )

References kernel(), nest::KernelManager::node_manager, and nest::NodeManager::print().

Here is the call graph for this function:

◆ quicksort3way()

template<typename T1 , typename T2 >
void nest::quicksort3way ( BlockVector< T1 > &  vec_sort,
BlockVector< T2 > &  vec_perm,
const size_t  lo,
const size_t  hi 
)

Quicksort with 3-way partitioning, adapted from Sedgewick & Wayne (2011), Algorithms 4th edition, p296ff (see http://algs4.cs.princeton.edu/23quicksort/QuickX.java.html).

Recursively sorts the two vectors vec_sort and vec_perm, by sorting the entries in vec_sort and applying the same exchanges to vec_perm.

References insertion_sort(), INSERTION_SORT_CUTOFF, median3_(), quicksort3way(), and BlockVector< value_type_ >::size().

Referenced by quicksort3way(), and sort().

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

◆ read_from_comm_buffer()

template<typename T >
void nest::read_from_comm_buffer ( T &  d,
std::vector< unsigned int >::iterator &  pos 
)

This template function reads data of type T from a given position of a std::vector< unsigned int >.

The function is used to read SecondaryEvents data from the NEST communication buffer. The pos iterator is advanced during execution. For a discussion on the functionality of this function see github issue #181 and pull request #184.

Referenced by nest::DataSecondaryEvent< DataType, Subclass >::get_coeffvalue().

Here is the caller graph for this function:

◆ redraw_parameter()

ParameterPTR nest::redraw_parameter ( const ParameterPTR  parameter,
const double  min,
const double  max 
)

Create parameter redrawing the value if the value of a parameter is outside the set limits.

Returns
a new dynamically allocated parameter.

◆ register_ac_generator()

void nest::register_ac_generator ( const std::string &  name)

◆ register_amat2_psc_exp()

void nest::register_amat2_psc_exp ( const std::string &  name)

◆ register_bernoulli_synapse()

void nest::register_bernoulli_synapse ( const std::string &  name)

◆ register_clopath_synapse()

void nest::register_clopath_synapse ( const std::string &  name)

◆ register_cm_default()

void nest::register_cm_default ( const std::string &  name)

◆ register_connection_model()

template<template< typename > class ConnectorModelT>
void nest::register_connection_model ( const std::string &  name)

Register connection model (i.e.

an instance of a class inheriting from Connection).

References kernel(), nest::KernelManager::model_manager, and nest::ModelManager::register_connection_model().

Here is the call graph for this function:

◆ register_cont_delay_synapse()

void nest::register_cont_delay_synapse ( const std::string &  name)

◆ register_correlation_detector()

void nest::register_correlation_detector ( const std::string &  name)

Correlation detector breaks with the persistence scheme as follows: the internal buffers for storing spikes are part of State_, but are initialized by init_buffers_().

Todo:
The correlation detector could be made more efficient as follows (HEP 2008-07-01):
  • incoming_ is vector of two deques
  • let handle() push_back() entries in incoming_ and do nothing else
  • keep index to last "old spike" in each incoming_; cannot be iterator since that may change
  • update() deletes all entries before now-tau_max, sorts the new entries, then registers new entries in histogram

◆ register_correlomatrix_detector()

void nest::register_correlomatrix_detector ( const std::string &  name)
Note
Correlomatrix detector breaks with the persistence scheme as follows: the internal buffers for storing spikes are part of State_, but are initialized by init_buffers_().
Todo:
The correlation detector could be made more efficient as follows (HEP 2008-07-01):
  • incoming_ is vector of two deques
  • let handle() push_back() entries in incoming_ and do nothing else
  • keep index to last "old spike" in each incoming_; cannot be iterator since that may change
  • update() deletes all entries before now-tau_max, sorts the new entries, then registers new entries in histogram

◆ register_correlospinmatrix_detector()

void nest::register_correlospinmatrix_detector ( const std::string &  name)

Correlospinmatrix detector breaks with the persistence scheme as follows: the internal buffers for storing spikes are part of State_, but are initialized by init_buffers_().

◆ register_dc_generator()

void nest::register_dc_generator ( const std::string &  name)

◆ register_diffusion_connection()

void nest::register_diffusion_connection ( const std::string &  name)

◆ register_eprop_iaf()

void nest::register_eprop_iaf ( const std::string &  name)

◆ register_eprop_iaf_adapt()

void nest::register_eprop_iaf_adapt ( const std::string &  name)

◆ register_eprop_iaf_adapt_bsshslm_2020()

void nest::register_eprop_iaf_adapt_bsshslm_2020 ( const std::string &  name)

◆ register_eprop_iaf_bsshslm_2020()

void nest::register_eprop_iaf_bsshslm_2020 ( const std::string &  name)

◆ register_eprop_iaf_psc_delta()

void nest::register_eprop_iaf_psc_delta ( const std::string &  name)

◆ register_eprop_iaf_psc_delta_adapt()

void nest::register_eprop_iaf_psc_delta_adapt ( const std::string &  name)

◆ register_eprop_learning_signal_connection()

void nest::register_eprop_learning_signal_connection ( const std::string &  name)

◆ register_eprop_learning_signal_connection_bsshslm_2020()

void nest::register_eprop_learning_signal_connection_bsshslm_2020 ( const std::string &  name)

◆ register_eprop_readout()

void nest::register_eprop_readout ( const std::string &  name)

◆ register_eprop_readout_bsshslm_2020()

void nest::register_eprop_readout_bsshslm_2020 ( const std::string &  name)

◆ register_eprop_synapse()

void nest::register_eprop_synapse ( const std::string &  name)

Register the eprop synapse model.

◆ register_eprop_synapse_bsshslm_2020()

void nest::register_eprop_synapse_bsshslm_2020 ( const std::string &  name)

Register the eprop synapse model.

◆ register_erfc_neuron()

void nest::register_erfc_neuron ( const std::string &  name)

◆ register_gamma_sup_generator()

void nest::register_gamma_sup_generator ( const std::string &  name)

◆ register_gap_junction()

void nest::register_gap_junction ( const std::string &  name)

◆ register_gauss_rate_ipn()

void nest::register_gauss_rate_ipn ( const std::string &  name)

◆ register_gif_psc_exp()

void nest::register_gif_psc_exp ( const std::string &  name)

◆ register_gif_psc_exp_multisynapse()

void nest::register_gif_psc_exp_multisynapse ( const std::string &  name)

◆ register_ginzburg_neuron()

void nest::register_ginzburg_neuron ( const std::string &  name)

◆ register_glif_psc()

void nest::register_glif_psc ( const std::string &  name)

◆ register_glif_psc_double_alpha()

void nest::register_glif_psc_double_alpha ( const std::string &  name)

◆ register_ht_synapse()

void nest::register_ht_synapse ( const std::string &  name)

◆ register_iaf_chs_2007()

void nest::register_iaf_chs_2007 ( const std::string &  name)

◆ register_iaf_psc_alpha()

void nest::register_iaf_psc_alpha ( const std::string &  name)

◆ register_iaf_psc_alpha_multisynapse()

void nest::register_iaf_psc_alpha_multisynapse ( const std::string &  name)

◆ register_iaf_psc_alpha_ps()

void nest::register_iaf_psc_alpha_ps ( const std::string &  name)

◆ register_iaf_psc_delta()

void nest::register_iaf_psc_delta ( const std::string &  name)

The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.

Because the propagator is a lower triangular matrix, no full matrix multiplication needs to be carried out and the computation can be done "in place", i.e. no temporary state vector object is required.

The template support of recent C++ compilers enables a more succinct formulation without loss of runtime performance already at minimal optimization levels. A future version of iaf_psc_delta will probably address the problem of efficient usage of appropriate vector and matrix objects.

◆ register_iaf_psc_delta_ps()

void nest::register_iaf_psc_delta_ps ( const std::string &  name)

◆ register_iaf_psc_exp()

void nest::register_iaf_psc_exp ( const std::string &  name)

The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.

Because the propagator is a lower triangular matrix, no full matrix multiplication needs to be carried out and the computation can be done "in place", i.e. no temporary state vector object is required.

The template support of recent C++ compilers enables a more succinct formulation without loss of runtime performance already at minimal optimization levels. A future version of iaf_psc_exp will probably address the problem of efficient usage of appropriate vector and matrix objects.

◆ register_iaf_psc_exp_htum()

void nest::register_iaf_psc_exp_htum ( const std::string &  name)

◆ register_iaf_psc_exp_multisynapse()

void nest::register_iaf_psc_exp_multisynapse ( const std::string &  name)

◆ register_iaf_psc_exp_ps()

void nest::register_iaf_psc_exp_ps ( const std::string &  name)

◆ register_iaf_psc_exp_ps_lossless()

void nest::register_iaf_psc_exp_ps_lossless ( const std::string &  name)

◆ register_iaf_tum_2000()

void nest::register_iaf_tum_2000 ( const std::string &  name)

◆ register_ignore_and_fire()

void nest::register_ignore_and_fire ( const std::string &  name)

◆ register_inhomogeneous_poisson_generator()

void nest::register_inhomogeneous_poisson_generator ( const std::string &  name)

◆ register_izhikevich()

void nest::register_izhikevich ( const std::string &  name)

◆ register_jonke_synapse()

void nest::register_jonke_synapse ( const std::string &  name)

◆ register_lin_rate_ipn()

void nest::register_lin_rate_ipn ( const std::string &  name)

◆ register_lin_rate_opn()

void nest::register_lin_rate_opn ( const std::string &  name)

◆ register_logger_client()

void nest::register_logger_client ( const deliver_logging_event_ptr  client_callback)

References kernel(), nest::KernelManager::logging_manager, and nest::LoggingManager::register_logging_client().

Here is the call graph for this function:

◆ register_mask() [1/2]

template<class T >
bool nest::register_mask ( )
inline

References mask_factory_(), and nest::GenericFactory< BaseT >::register_subtype().

Referenced by init_nest().

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

◆ register_mask() [2/2]

bool nest::register_mask ( const std::string &  name,
MaskCreatorFunction  creator 
)
inline

References mask_factory_(), and nest::GenericFactory< BaseT >::register_subtype().

Here is the call graph for this function:

◆ register_mat2_psc_exp()

void nest::register_mat2_psc_exp ( const std::string &  name)

The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator.

Because the propagator is a lower triangular matrix, no full matrix multiplication needs to be carried out and the computation can be done "in place", i.e. no temporary state vector object is required.

◆ register_mcculloch_pitts_neuron()

void nest::register_mcculloch_pitts_neuron ( const std::string &  name)

◆ register_mip_generator()

void nest::register_mip_generator ( const std::string &  name)

Class mip_generator generates spike trains as described in the MIP model.

◆ register_models()

void nest::register_models ( )

Function to register all node and connection models that were selected for compilation either by using the cmake switch -Dwith-models=<model;list> or as specified in the modelset given to the option -Dwith-modelset=<modelset>

Referenced by nest::ModelManager::initialize().

Here is the caller graph for this function:

◆ register_multimeter()

void nest::register_multimeter ( const std::string &  name)

◆ register_node_model()

template<typename NodeModelT >
void nest::register_node_model ( const std::string &  name,
std::string  deprecation_info = std::string() 
)

Register node model (i.e.

an instance of a class inheriting from Node).

References kernel(), nest::KernelManager::model_manager, and nest::ModelManager::register_node_model().

Here is the call graph for this function:

◆ register_noise_generator()

void nest::register_noise_generator ( const std::string &  name)

◆ register_parameter()

template<class T >
bool nest::register_parameter ( const std::string &  name)
inline

References parameter_factory_(), and nest::GenericFactory< BaseT >::register_subtype().

Here is the call graph for this function:

◆ register_parrot_neuron()

void nest::register_parrot_neuron ( const std::string &  name)

◆ register_parrot_neuron_ps()

void nest::register_parrot_neuron_ps ( const std::string &  name)

◆ register_poisson_generator()

void nest::register_poisson_generator ( const std::string &  name)

◆ register_poisson_generator_ps()

void nest::register_poisson_generator_ps ( const std::string &  name)

◆ register_pp_psc_delta()

void nest::register_pp_psc_delta ( const std::string &  name)

◆ register_ppd_sup_generator()

void nest::register_ppd_sup_generator ( const std::string &  name)

◆ register_pulsepacket_generator()

void nest::register_pulsepacket_generator ( const std::string &  name)

◆ register_quantal_stp_synapse()

void nest::register_quantal_stp_synapse ( const std::string &  name)

◆ register_rate_connection_delayed()

void nest::register_rate_connection_delayed ( const std::string &  name)

Class representing a delayed rate connection.

A rate_connection_delayed has the properties weight, delay and receiver port.

◆ register_rate_connection_instantaneous()

void nest::register_rate_connection_instantaneous ( const std::string &  name)

Class representing a rate connection.

A rate connection has the properties weight and receiver port.

◆ register_rate_transformer_gauss()

void nest::register_rate_transformer_gauss ( const std::string &  name)

◆ register_rate_transformer_lin()

void nest::register_rate_transformer_lin ( const std::string &  name)

◆ register_rate_transformer_sigmoid()

void nest::register_rate_transformer_sigmoid ( const std::string &  name)

◆ register_rate_transformer_sigmoid_gg_1998()

void nest::register_rate_transformer_sigmoid_gg_1998 ( const std::string &  name)

◆ register_rate_transformer_tanh()

void nest::register_rate_transformer_tanh ( const std::string &  name)

◆ register_rate_transformer_threshold_lin()

void nest::register_rate_transformer_threshold_lin ( const std::string &  name)

◆ register_sic_connection()

void nest::register_sic_connection ( const std::string &  name)

◆ register_sigmoid_rate_gg_1998_ipn()

void nest::register_sigmoid_rate_gg_1998_ipn ( const std::string &  name)

◆ register_sigmoid_rate_ipn()

void nest::register_sigmoid_rate_ipn ( const std::string &  name)

◆ register_sinusoidal_poisson_generator()

void nest::register_sinusoidal_poisson_generator ( const std::string &  name)

◆ register_spike_dilutor()

void nest::register_spike_dilutor ( const std::string &  name)

◆ register_spike_generator()

void nest::register_spike_generator ( const std::string &  name)

◆ register_spike_recorder()

void nest::register_spike_recorder ( const std::string &  name)

◆ register_spike_train_injector()

void nest::register_spike_train_injector ( const std::string &  name)

Spike train injector node.

See UserDocs for details.

Note
Spikes emitted by a spike train injector neuron will be counted by the local spike count.

◆ register_spin_detector()

void nest::register_spin_detector ( const std::string &  name)

Spin detector class.

This class decodes binary states based on incoming spikes. It receives spikes via its handle(SpikeEvent&) method, decodes the state, and stores them via its RecordingDevice.

◆ register_static_synapse()

void nest::register_static_synapse ( const std::string &  name)

◆ register_static_synapse_hom_w()

void nest::register_static_synapse_hom_w ( const std::string &  name)

◆ register_stdp_dopamine_synapse()

void nest::register_stdp_dopamine_synapse ( const std::string &  name)

Class representing an stdp_dopamine_synapse with homogeneous parameters, i.e.

parameters are the same for all synapses.

◆ register_stdp_facetshw_synapse_hom()

void nest::register_stdp_facetshw_synapse_hom ( const std::string &  name)

◆ register_stdp_nn_pre_centered_synapse()

void nest::register_stdp_nn_pre_centered_synapse ( const std::string &  name)

◆ register_stdp_nn_restr_synapse()

void nest::register_stdp_nn_restr_synapse ( const std::string &  name)

◆ register_stdp_nn_symm_synapse()

void nest::register_stdp_nn_symm_synapse ( const std::string &  name)

◆ register_stdp_pl_synapse_hom()

void nest::register_stdp_pl_synapse_hom ( const std::string &  name)

Class representing an STDP connection with homogeneous parameters, i.e.

parameters are the same for all synapses.

◆ register_stdp_synapse()

void nest::register_stdp_synapse ( const std::string &  name)

◆ register_stdp_synapse_hom()

void nest::register_stdp_synapse_hom ( const std::string &  name)

Class representing an STDP connection with homogeneous parameters, i.e.

parameters are the same for all synapses.

◆ register_stdp_triplet_synapse()

void nest::register_stdp_triplet_synapse ( const std::string &  name)

◆ register_step_current_generator()

void nest::register_step_current_generator ( const std::string &  name)

◆ register_step_rate_generator()

void nest::register_step_rate_generator ( const std::string &  name)

◆ register_tanh_rate_ipn()

void nest::register_tanh_rate_ipn ( const std::string &  name)

◆ register_tanh_rate_opn()

void nest::register_tanh_rate_opn ( const std::string &  name)

◆ register_threshold_lin_rate_ipn()

void nest::register_threshold_lin_rate_ipn ( const std::string &  name)

◆ register_threshold_lin_rate_opn()

void nest::register_threshold_lin_rate_opn ( const std::string &  name)

◆ register_tsodyks2_synapse()

void nest::register_tsodyks2_synapse ( const std::string &  name)

◆ register_tsodyks_synapse()

void nest::register_tsodyks_synapse ( const std::string &  name)

◆ register_tsodyks_synapse_hom()

void nest::register_tsodyks_synapse_hom ( const std::string &  name)

◆ register_urbanczik_synapse()

void nest::register_urbanczik_synapse ( const std::string &  name)

◆ register_vogels_sprekeler_synapse()

void nest::register_vogels_sprekeler_synapse ( const std::string &  name)

◆ register_voltmeter()

void nest::register_voltmeter ( const std::string &  name)

◆ register_volume_transmitter()

void nest::register_volume_transmitter ( const std::string &  name)

◆ register_weight_recorder()

void nest::register_weight_recorder ( const std::string &  name)

◆ regula_falsi()

template<typename CN >
double nest::regula_falsi ( const CN &  node,
const double  dt 
)

Localize threshold crossing by using Illinois algorithm of regula falsi method.

See https://en.wikipedia.org/wiki/Regula_falsi#The_Illinois_algorithm for details on the algorithm.

Parameters
Nodemodel object that call function
doublelength of interval since previous event
Returns
time from previous event to threshold crossing

Referenced by nest::iaf_psc_exp_ps::emit_spike_(), nest::iaf_psc_exp_ps_lossless::emit_spike_(), and nest::iaf_psc_alpha_ps::emit_spike_().

Here is the caller graph for this function:

◆ reset_kernel()

void nest::reset_kernel ( )

References kernel(), and nest::KernelManager::reset().

Here is the call graph for this function:

◆ run()

void nest::run ( const double  time)

References nest::Time::is_finite(), nest::Time::is_grid_time(), kernel(), nest::SimulationManager::run(), and nest::KernelManager::simulation_manager.

Referenced by simulate().

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

◆ select_nodes_by_mask()

NodeCollectionPTR nest::select_nodes_by_mask ( const NodeCollectionPTR  layer_nc,
const std::vector< double > &  anchor,
const MaskPTR  mask 
)

References nest::NodeCollection::create(), and get_layer().

Here is the call graph for this function:

◆ set_connection_status() [1/2]

void nest::set_connection_status ( const std::deque< ConnectionID > &  conns,
const Dictionary &  dict 
)

References Dictionary::all_entries_accessed(), nest::KernelManager::connection_manager, Dictionary::init_access_flags(), kernel(), and nest::ConnectionManager::set_synapse_status().

Here is the call graph for this function:

◆ set_connection_status() [2/2]

void nest::set_connection_status ( const std::deque< ConnectionID > &  conns,
const std::vector< Dictionary > &  dicts 
)

References nest::KernelManager::connection_manager, kernel(), and nest::ConnectionManager::set_synapse_status().

Here is the call graph for this function:

◆ set_kernel_status()

void nest::set_kernel_status ( const Dictionary &  dict)

References Dictionary::all_entries_accessed(), Dictionary::init_access_flags(), kernel(), and nest::KernelManager::set_status().

Here is the call graph for this function:

◆ set_model_defaults()

void nest::set_model_defaults ( const std::string &  component,
const Dictionary &  dict 
)

References nest::KernelManager::io_manager, kernel(), and nest::IOManager::set_recording_backend_status().

Here is the call graph for this function:

◆ set_nc_status()

void nest::set_nc_status ( NodeCollectionPTR  nc,
std::vector< Dictionary > &  params 
)

References kernel(), nest::KernelManager::node_manager, and nest::NodeManager::set_status().

Here is the call graph for this function:

◆ set_node_status()

void nest::set_node_status ( const size_t  node_id,
const Dictionary &  dict 
)

References kernel(), nest::KernelManager::node_manager, and nest::NodeManager::set_status().

Here is the call graph for this function:

◆ shutdown_nest()

void nest::shutdown_nest ( int  exitcode)

References kernel(), nest::MPIManager::mpi_finalize(), and nest::KernelManager::mpi_manager.

Here is the call graph for this function:

◆ simulate()

void nest::simulate ( const double  t)

References cleanup(), prepare(), and run().

Here is the call graph for this function:

◆ sin_parameter()

ParameterPTR nest::sin_parameter ( const ParameterPTR  parameter)

Create the sine of a parameter.

Returns
a new dynamically allocated parameter.

◆ slice_nc()

NodeCollectionPTR nest::slice_nc ( const NodeCollectionPTR  nc,
long  start,
long  stop,
long  step 
)

References Dictionary::size().

Here is the call graph for this function:

◆ sort()

template<typename T1 , typename T2 >
void nest::sort ( BlockVector< T1 > &  vec_sort,
BlockVector< T2 > &  vec_perm 
)

Sorts two vectors according to elements in first vector.

Convenience function.

References BlockVector< value_type_ >::begin(), BlockVector< value_type_ >::end(), make_iterator_pair(), quicksort3way(), and BlockVector< value_type_ >::size().

Referenced by nest::Connector< ConnectionT >::sort_connections().

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

◆ subtract_parameter()

ParameterPTR nest::subtract_parameter ( const ParameterPTR  first,
const ParameterPTR  second 
)

Create the difference between one parameter and another.

Returns
a new dynamically allocated parameter.

◆ synchronize()

void nest::synchronize ( )

Force synchronization of MPI processes.

References kernel(), nest::KernelManager::mpi_manager, and nest::MPIManager::synchronize().

Here is the call graph for this function:

◆ test_link()

void nest::test_link ( int  ,
int   
)
inline

◆ test_links()

void nest::test_links ( )
inline

◆ time_abs() [1/2]

template<class N >
N nest::time_abs ( const N  n)
inline

Class to handle simulation time and realtime.

All times given in multiples of "tics": A "tic" is a microsecond by default (1000 tics per ms).

User access to time only through accessor functions:

  • Times can be added, subtracted, and multiplied by ints
  • All real world time is given in ms as double
  • All computation is done based on tics

Three time variables are kept: #- time in tics #- time in ms #- time in steps

The largest representable time is available through Time::max().

@NOTE

  • The time base (tics per millisecond) can be set by Time::set_resolution().
  • Times in ms are rounded up to the next tic interval. This ensures that the time intervals (0, h] are open at the left point and closed at the right point. It also ensures compatibility with precise timing, namely that the offset u fulfills -h > u >= 0.
  • The resolution (tics per step) can only be set before the first node is created and before the simulation starts. The resolution can be changed after the network has been deleted and the time reset.
  • Implementers of models or methods containing persistent (member variable) Time objects, must ensure that these are recalibrated before the simulation starts. This is necessary to ensure that step values are updated after a change in resolution.

@NOTE The step-time counter is NOT changed when the resolution is changed. This is of no consequence, since changes in resolution are permitted at t=0 only.

@NOTE

  • Neurons update themselves in min-delay intervals. During such a min-delay update step, time is in a sense undefined, since it is up to the model how it takes its dynamics across the interval. Any spikes emitted and voltage information returned must be fixed to time grid points.
  • One may later consider to introduce per-tread simulation time variables.

@NOTE Delays must be added to current time, and moduloed each time a spike is inserted into a ring buffer. That operation must be very fast, and there is no time for conversions. Thus, delays must be stored in steps. Given the large number of delays in a system, we cannot use class Time with its three member variables to store delays. Delays must thus be stored explicitly as delay steps.

Markus Diesmann, 2008-01-25 Hans Ekkehard Plesser, 2004-01-25, 2006-12-18 Marc-Oliver Gewaltig, 2004-01-27

Referenced by nest::Time::range().

Here is the caller graph for this function:

◆ time_abs() [2/2]

template<>
long long nest::time_abs ( long long  n)
inline

◆ to_underlying()

template<typename E >
constexpr auto nest::to_underlying ( E  e)
constexprnoexcept

Cast enum value to underlying integer type.

Note
Useful where we do arithmetic mixing different enum types.
Once we switch to C++23, replace with std::to_underlying()

Suggested by Claude Haiku 4.5.

◆ union_mask()

MaskPTR nest::union_mask ( const MaskPTR  mask1,
const MaskPTR  mask2 
)

◆ update_value_param()

template<typename T >
bool nest::update_value_param ( Dictionary const &  d,
const std::string &  key,
T &  value,
nest::Node *  node 
)

Obtain value from parameter dictionary including evaluation of random or spatial parameters.

This function should be used instead of update_value() everywhere where the user may pass random or spatial parameters.

References nest::Node::get_node_id(), get_vp_specific_rng(), kernel(), nest::VPManager::node_id_to_vp(), nest::KernelManager::vp_manager, and nest::VPManager::vp_to_thread().

Referenced by nest::multimeter::Parameters_::set(), nest::correlation_detector::Parameters_::set(), nest::correlomatrix_detector::Parameters_::set(), nest::correlospinmatrix_detector::Parameters_::set(), nest::noise_generator::Parameters_::set(), nest::iaf_psc_alpha_multisynapse::State_::set(), nest::iaf_psc_exp::State_::set(), nest::iaf_psc_exp_multisynapse::State_::set(), nest::iaf_tum_2000::State_::set(), nest::iaf_psc_exp_htum::State_::set(), nest::iaf_psc_exp_ps_lossless::State_::set(), nest::amat2_psc_exp::State_::set(), nest::eprop_iaf::State_::set(), nest::eprop_iaf_adapt::State_::set(), nest::eprop_iaf_adapt_bsshslm_2020::State_::set(), nest::eprop_iaf_bsshslm_2020::State_::set(), nest::eprop_iaf_psc_delta::State_::set(), nest::eprop_iaf_psc_delta_adapt::State_::set(), nest::eprop_readout::State_::set(), nest::eprop_readout_bsshslm_2020::State_::set(), nest::glif_psc::State_::set(), nest::glif_psc_double_alpha::State_::set(), nest::iaf_psc_alpha_ps::State_::set(), nest::iaf_psc_delta::State_::set(), nest::iaf_psc_delta_ps::State_::set(), nest::iaf_psc_exp_ps::State_::set(), nest::mat2_psc_exp::State_::set(), nest::iaf_psc_alpha::State_::set(), nest::gif_psc_exp::State_::set(), nest::gif_psc_exp_multisynapse::State_::set(), nest::izhikevich::State_::set(), nest::pp_psc_delta::State_::set(), nest::sinusoidal_poisson_generator::Parameters_::set(), nest::eprop_iaf::Parameters_::set(), nest::eprop_iaf_adapt::Parameters_::set(), nest::eprop_iaf_adapt_bsshslm_2020::Parameters_::set(), nest::eprop_iaf_bsshslm_2020::Parameters_::set(), nest::eprop_iaf_psc_delta::Parameters_::set(), nest::eprop_iaf_psc_delta_adapt::Parameters_::set(), nest::eprop_readout::Parameters_::set(), nest::eprop_readout_bsshslm_2020::Parameters_::set(), nest::nonlinearities_gauss_rate::set(), nest::glif_psc::Parameters_::set(), nest::glif_psc_double_alpha::Parameters_::set(), nest::iaf_psc_alpha_ps::Parameters_::set(), nest::iaf_psc_delta_ps::Parameters_::set(), nest::ac_generator::Parameters_::set(), nest::amat2_psc_exp::Parameters_::set(), nest::binary_neuron< TGainfunction >::Parameters_::set(), nest::dc_generator::Parameters_::set(), nest::gainfunction_erfc::set(), nest::gamma_sup_generator::Parameters_::set(), nest::gif_psc_exp::Parameters_::set(), nest::gif_psc_exp_multisynapse::Parameters_::set(), nest::gainfunction_ginzburg::set(), nest::iaf_psc_alpha::Parameters_::set(), nest::iaf_psc_alpha_multisynapse::Parameters_::set(), nest::iaf_psc_delta::Parameters_::set(), nest::iaf_psc_exp::Parameters_::set(), nest::iaf_psc_exp_htum::Parameters_::set(), nest::iaf_psc_exp_multisynapse::Parameters_::set(), nest::iaf_psc_exp_ps::Parameters_::set(), nest::iaf_psc_exp_ps_lossless::Parameters_::set(), nest::iaf_tum_2000::Parameters_::set(), nest::ignore_and_fire::Parameters_::set(), nest::izhikevich::Parameters_::set(), nest::nonlinearities_lin_rate::set(), nest::mat2_psc_exp::Parameters_::set(), nest::gainfunction_mcculloch_pitts::set(), nest::mip_generator::Parameters_::set(), nest::poisson_generator::Parameters_::set(), nest::poisson_generator_ps::Parameters_::set(), nest::pp_psc_delta::Parameters_::set(), nest::ppd_sup_generator::Parameters_::set(), nest::rate_neuron_ipn< TNonlinearities >::Parameters_::set(), nest::rate_neuron_ipn< TNonlinearities >::State_::set(), nest::rate_neuron_opn< TNonlinearities >::Parameters_::set(), nest::rate_neuron_opn< TNonlinearities >::State_::set(), nest::rate_transformer_node< TNonlinearities >::Parameters_::set(), nest::rate_transformer_node< TNonlinearities >::State_::set(), nest::nonlinearities_sigmoid_rate::set(), nest::nonlinearities_sigmoid_rate_gg_1998::set(), nest::spike_dilutor::Parameters_::set(), nest::nonlinearities_tanh_rate::set(), nest::nonlinearities_threshold_lin_rate::set(), nest::volume_transmitter::Parameters_::set(), nest::pulsepacket_generator::Parameters_::set(), nest::spike_generator::Parameters_::set(), nest::spike_train_injector::Parameters_::set(), nest::iaf_chs_2007::Parameters_::set(), nest::iaf_chs_2007::State_::set(), nest::EpropArchivingNodeReadout< hist_shift_required >::set_status(), nest::EpropArchivingNodeRecurrent< hist_shift_required >::set_status(), nest::IgnoreAndSpikeMechanism::set_status(), and nest::FlushEventMechanism::set_status().

Here is the call graph for this function:

◆ write_to_comm_buffer()

template<typename T >
void nest::write_to_comm_buffer ( T  d,
std::vector< unsigned int >::iterator &  pos 
)

This template function writes data of type T to a given position of a std::vector< unsigned int >.

Please note that this function does not increase the size of the vector, it just writes the data to the position given by the iterator. The function is used to write data from SecondaryEvents to the NEST communication buffer. The pos iterator is advanced during execution. For a discussion on the functionality of this function see github issue #181 and pull request #184.

Referenced by nest::DataSecondaryEvent< DataType, Subclass >::operator>>().

Here is the caller graph for this function:

Variable Documentation

◆ delay_max

constexpr long nest::delay_max = std::numeric_limits< long >::max()
constexpr

◆ delay_min

constexpr long nest::delay_min = std::numeric_limits< long >::min()
constexpr

Values for min and max delay.

◆ DISABLED_NODE_ID

constexpr uint64_t nest::DISABLED_NODE_ID = generate_max_value( NUM_BITS_NODE_ID )
constexpr

◆ invalid_lcid

constexpr size_t nest::invalid_lcid = MAX_LCID
constexpr

◆ invalid_port

constexpr size_t nest::invalid_port = std::numeric_limits< size_t >::max()
constexpr

Value for invalid connection port number.

Referenced by nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::eprop_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::eprop_synapse_bsshslm_2020< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::Node::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::eprop_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::eprop_synapse_bsshslm_2020< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::bernoulli_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::clopath_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::cont_delay_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::ht_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::jonke_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::quantal_stp_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::static_synapse_hom_w< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_dopamine_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_facetshw_synapse_hom< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_nn_pre_centered_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_nn_restr_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_nn_symm_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_pl_synapse_hom< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_synapse_hom< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::stdp_triplet_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::tsodyks2_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::tsodyks_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::tsodyks_synapse_hom< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::urbanczik_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::vogels_sprekeler_synapse< targetidentifierT >::ConnTestDummyNode::handles_test_event(), nest::gamma_sup_generator::send_test_event(), nest::multimeter::send_test_event(), nest::noise_generator::send_test_event(), nest::poisson_generator_ps::send_test_event(), and nest::ppd_sup_generator::send_test_event().

◆ invalid_synindex

◆ invalid_targetindex

◆ invalid_thread

constexpr size_t nest::invalid_thread = std::numeric_limits< size_t >::max()
constexpr

Value for invalid connection thread id.

Referenced by nest::SymmetricBernoulliBuilder::connect_(), and nest::Node::is_model_prototype().

◆ MAX_LCID

◆ MAX_NODE_ID

constexpr uint64_t nest::MAX_NODE_ID = DISABLED_NODE_ID - 1
constexpr

Referenced by nest::Source::Source().

◆ MAX_RANK

constexpr int64_t nest::MAX_RANK = generate_max_value( NUM_BITS_RANK )
constexpr

Referenced by nest::Target::set_rank().

◆ MAX_SYN_ID

◆ MAX_TID

◆ NUM_BITS_DELAY

constexpr uint8_t nest::NUM_BITS_DELAY = 21U
constexpr

◆ NUM_BITS_FLUSH_EVENT

constexpr uint8_t nest::NUM_BITS_FLUSH_EVENT = 1U
constexpr

◆ NUM_BITS_LAG

constexpr uint8_t nest::NUM_BITS_LAG = 14U
constexpr

◆ NUM_BITS_LCID

constexpr uint8_t nest::NUM_BITS_LCID = 27U
constexpr

◆ NUM_BITS_MARKER_SPIKE_DATA

constexpr uint8_t nest::NUM_BITS_MARKER_SPIKE_DATA = 2U
constexpr

◆ NUM_BITS_NODE_ID

constexpr uint8_t nest::NUM_BITS_NODE_ID = 61U
constexpr

◆ NUM_BITS_PROCESSED_FLAG

constexpr uint8_t nest::NUM_BITS_PROCESSED_FLAG = 1U
constexpr

◆ NUM_BITS_RANK

constexpr uint8_t nest::NUM_BITS_RANK = 18U
constexpr

◆ NUM_BITS_SYN_ID

constexpr uint8_t nest::NUM_BITS_SYN_ID = 9U
constexpr

◆ NUM_BITS_TID

constexpr uint8_t nest::NUM_BITS_TID = 9U
constexpr

◆ primitive_sort_op

◆ tic_t_max

constexpr tic_t nest::tic_t_max = std::numeric_limits< tic_t >::max()
constexpr

◆ tic_t_min

constexpr tic_t nest::tic_t_min = std::numeric_limits< tic_t >::min()
constexpr

◆ TimeZero

const Time nest::TimeZero

◆ UNLABELED_CONNECTION

const long nest::UNLABELED_CONNECTION = -1
static

◆ use_detailed_timers

constexpr bool nest::use_detailed_timers = false
constexpr

◆ use_threaded_timers

constexpr bool nest::use_threaded_timers = false
constexpr