Recording backend `memory` - Store data in main memory ###################################################### Description +++++++++++ When a recording device sends data to the ``memory`` backend, it is stored internally in efficient vectors. These vectors are made available to the user level in the device's status dictionary under the key ``events``. The ``events`` dictionary always contains the global IDs of the source nodes of the recorded data in the field ``sender``. It also always contains the time of the recording. Depending on the setting of the property ``time_in_steps``, this time can be stored in two different formats: - If ``time_in_steps`` is `false` (which is the default), the time is stored as a single floating point number in the field ``times``, interpreted as the simulation time in ms - If ``time_in_steps`` is `true`, the time is stored as a pair consisting of the integer number of simulation time steps in units of the simulation resolution in ``times`` and the negative offset from the next such grid point as a floating point number in ms in ``offset``. All additional data collected or sampled by the recording device is contained in the ``events`` dictionary in arrays. These data are named based on the recordable they came from and with the appropriate data type (either integer or floating point). The number of events that were collected by the ``memory`` backend can be read out of the `n_events` entry in the status dictionary of the recording device. To delete data from memory, `n_events` can be set to 0. Other values cannot be set. Parameter summary +++++++++++++++++ events A dictionary containing the recorded data in the form of one numeric array for each quantity measured. It always has the sender global IDs of recorded events under the key ``senders`` and the time of the recording, the format of which depends on the setting of ``time_in_steps``. n_events The number of events collected or sampled since the last reset of `n_events`. By setting `n_events` to 0, all events recorded so far will be discarded from memory. time_in_steps A Boolean (default: *false*) specifying whether to store time in steps, i.e., in integer multiples of the simulation resolution (under the key ``times`` of the ``events`` dictionary) plus a floating point number for the negative offset from the next grid point in ms (under key ``offset``), or just the simulation time in ms under key ``times``. This property cannot be set after Simulate has been called.