Skip to content
This repository was archived by the owner on Aug 7, 2025. It is now read-only.
This repository was archived by the owner on Aug 7, 2025. It is now read-only.

Recording gsyn_exc and gsyn_inh #16

@neworderofjamie

Description

@neworderofjamie

This needs to be a special case as GeNN handles each synapse groups input's separately. The best solution is probably to implement this in a new GSynMonitor class in recording.py:

  1. In Recorder._record add additional cases for "gsyn_exc" and "gsyn_inh" which add a GSynMonitor - this can maybe build a list of what incoming projections parent.population with correct receptor_type (i.e. "inhibitory" if we're recording "gsyn_inh") (a new list might need adding to Population to track incoming projections)
  2. In Recorder._record_vars, for "gsyn_exc" and "gsyn_inh", loop through the list of projections previously obtained by the GSynMonitor and copy the data from the GPU using model.pull_var_from_device(SYNAPSE_GROUP_NAME, "inSyn")
  3. In the GSynMonitor implement init_data_view using SynapseGroup._assign_external_pointer to get access to each synapse group's "inSyn" variable
  4. Override GSynMonitor.__call__ to sum these views.

This is infact more general. For example the GIF neuron allows recording of two adaption variables which are the sum of multiple actual state variables.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueGood for newcomers

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions