ANNarchy 5.0.0
  • ANNarchy
  • Installation
  • Tutorial
  • Manual
  • Notebooks
  • Reference

  • ANNarchy
  • Core components
    • Network
    • Population
    • Projection
    • Monitor
    • PopulationView
    • Dendrite
  • Neuron and Synapse models
    • Neuron
    • Synapse
    • Parameter
    • Variable
    • Creating
    • Pruning
    • Constant
  • Neuron models
    • LeakyIntegrator
    • Izhikevich
    • IF_curr_exp
    • IF_cond_exp
    • IF_curr_alpha
    • IF_cond_alpha
    • HH_cond_exp
    • EIF_cond_alpha_isfa_ista
    • EIF_cond_exp_isfa_ista
  • Synapse models
    • Hebb
    • Oja
    • IBCM
    • STP
    • STDP
  • Inputs
    • InputArray
    • TimedArray
    • PoissonPopulation
    • TimedPoissonPopulation
    • SpikeSourceArray
    • HomogeneousCorrelatedSpikeTrains
    • CurrentInjection
    • DecodingProjection
    • ImagePopulation
    • VideoPopulation
  • Random Distributions
    • Uniform
    • DiscreteUniform
    • Normal
    • LogNormal
    • Exponential
    • Gamma
    • Binomial
  • Functions
    • add_function
    • functions
  • Callbacks
    • every
  • Utilities
    • report
    • timeit
    • sparse_random_matrix
    • sparse_delays_from_weights
    • magic_network
  • Convolution
    • Convolution
    • Pooling
    • Transpose
    • Copy
  • BOLD monitoring
    • BoldMonitor
    • BoldModel
    • balloon_RN
    • balloon_RL
    • balloon_CN
    • balloon_CL
    • balloon_maith2021
    • balloon_two_inputs
  • Tensorboard logging
    • Logger
  • ANN-to-SNN conversion
    • ANNtoSNNConverter
  • DEPRECATED Top-level API
    • setup
    • compile
    • clear
    • reset
    • set_seed
    • get_population
    • get_projection
    • populations
    • projections
    • monitors
    • simulate
    • simulate_until
    • step
    • enable_learning
    • disable_learning
    • get_time
    • set_time
    • get_current_step
    • set_current_step
    • dt
    • save
    • load
    • save_parameters
    • load_parameters
    • callbacks_enabled
    • disable_callbacks
    • enable_callbacks
    • clear_all_callbacks

On this page

  • DecodingProjection
    • Parameters

DecodingProjection

DecodingProjection(
    self,
    pre,
    post,
    target,
    window=0.0,
    name=None,
    copied=False,
    net_id=0,
)

Decoding projection to transform spike trains into firing rates.

The pre-synaptic population must be a spiking population, while the post-synaptic one must be rate-coded.

Pre-synaptic spikes are accumulated for each post-synaptic neuron. A sliding window can be used to smoothen the results with the window parameter.

The decoded firing rate is accessible in the post-synaptic neurons with sum(target).

The projection can be connected using any method available in Projection (although all-to-all or many-to-one makes mostly sense). Delays are ignored.

The weight value allows to scale the firing rate: if you want a pre-synaptic firing rate of 100 Hz to correspond to a post-synaptic rate of 1.0, use w = 1./100..

Example:

net = ann.Network()

pop1 = net.create(ann.PoissonPopulation(1000, rates=100.))
pop2 = net.create(1, ann.Neuron(equations="r=sum(exc)"))

proj = net.connect(ann.DecodingProjection(pop1, pop2, 'exc', window=10.0))
proj.all_to_all(1.0)

Parameters

Name Type Description Default
pre Population pre-synaptic population. required
post Population post-synaptic population. required
target str type of the connection. required
window float duration of the time window to collect spikes (default: dt). 0.0
name str optional name. None
CurrentInjection
ImagePopulation
 

Copyright Julien Vitay, Helge Ülo Dinkelbach, Fred Hamker