Hi Hans Ekkehard,

thanks for the detailed instructions, I will give it a try!

Best,
Benedikt


On 08.03.21 10:49, Hans Ekkehard Plesser wrote:

 

Hi Benedict,

 

You could convert the poisson_generator to a fixed_interval_generator.

 

Replace the parameters of the generator by "interval" (to be given in ms). On setting the parameter, you should make sure it is a multiple of the resolution. Convert it to time steps in calibrate().

 

The, change

 

void

nest::poisson_generator::update( Time const& T, const long from, const long to )

{

  assert( to >= 0 && ( delay ) from < kernel().connection_manager.get_min_delay() );

  assert( from < to );

 

  if ( P_.rate_ <= 0 )

  {

    return;

  }

 

  for ( long lag = from; lag < to; ++lag )

  {

    if ( not device_.is_active( T + Time::step( lag ) ) )

    {

      continue; // no spike at this lag

    }

 

    DSSpikeEvent se;

    kernel().event_delivery_manager.send( *this, se, lag );

  }

}

 

to call kernel().event_delivery_manager.send( *this, se, lag ) if and only if T + Time::step(lag) is a multiple of the resolution. For additional flexibility, you could add an offset parameter to shift from multiples of the resolution h to n + m * h.

 

Furthermore, reduce the event_hook( DSSpikeEvent& e ) to just

 

void

nest::poisson_generator::event_hook( DSSpikeEvent& e )

{

    e.get_receiver().handle( e );

}

 

We need this event hook to make sure all target neurons get the spike. Delivery is local, spikes will not be sent via MPI.

 

Best,

Hans Ekkehard

 

--

Prof. Dr. Hans Ekkehard Plesser

Head, Department of Data Science

Faculty of Science and Technology

Norwegian University of Life Sciences

PO Box 5003, 1432 Aas, Norway

Phone +47 6723 1560

Email hans.ekkehard.plesser@nmbu.no

Home http://arken.nmbu.no/~plesser

 

 

On 08/03/2021, 10:25, "Benedikt Feldotto" <feldotto@in.tum.de> wrote:

 

    Hi Hans,

 

    yes, that is what I am searching for: A generator that emits spikes at

    fixed intervals. However, I do need to let it run whenever I call the

    nest.Simulate(), which I think is not possible in an intuitive way with

    the spike_generator. Is there any way to tweak a generator to let it

    emit spikes in fixed intervals, in a similar fashion as the e.g. the

    poisson_generator?

 

    Thanks!

 

    Best,

 

    Benedikt

 

    On 08.03.21 09:13, Hans Ekkehard Plesser wrote:

    > Hi Benedict,

    >

    > Could you be a little more precise about the spike pattern you would like? Do you need a generator that emits spikes at fixed intervals, e.g., on spike every 10 ms? You could then use the spike_generator, but you will need to give spike times explicitly.

    >

    > Best,

    > Hans Ekkehard

    >

    > --

    >  

    > Prof. Dr. Hans Ekkehard Plesser

    > Head, Department of Data Science

    >  

    > Faculty of Science and Technology

    > Norwegian University of Life Sciences

    > PO Box 5003, 1432 Aas, Norway

    >  

    > Phone +47 6723 1560

    > Email hans.ekkehard.plesser@nmbu.no

    > Home http://arken.nmbu.no/~plesser

    >  

    >

    >  

    >

    > On 06/03/2021, 20:34, "Benedikt Feldotto" <feldotto@in.tum.de> wrote:

    >

    >      Dear all,

    >

    >      maybe I am overlooking something, I am searching for a spike frequency

    >      generator without noise. I was looking at the poisson generator, but as

    >      far as I can see there is no parameter to adjust/remove the noise. Is

    >      there any node available that takes as input a frequency and outputs

    >      spikes at this given frequency?

    >

    >      Thanks!

    >

    >      Best,

    >

    >      Benedikt

    >

    >      --

    >      Benedikt Feldotto M.Sc.

    >      Research Assistant

    >

    >      Human Brain Project - Neurorobotics

    >

    >      Technical University of Munich

    >      Department of Informatics

    >      Chair of Robotics, Artificial Intelligence and Real-Time Systems

    >

    >      Room HB 2.02.20

    >      Parkring 13

    >      D-85748 Garching b. München

    >

    >      Tel.: +49 89 289 17628

    >      Mail: feldotto@in.tum.de

    >

    >      https://www6.in.tum.de/en/people/benedikt-feldotto-msc/

    >      www.neurorobotics.net

    >      _______________________________________________

    >      NEST Users mailing list -- users@nest-simulator.org

    >      To unsubscribe send an email to users-leave@nest-simulator.org

    >

    > _______________________________________________

    > NEST Users mailing list -- users@nest-simulator.org

    > To unsubscribe send an email to users-leave@nest-simulator.org

 

    --

    Benedikt Feldotto M.Sc.

    Research Assistant

 

    Human Brain Project - Neurorobotics

 

    Technical University of Munich

    Department of Informatics

    Chair of Robotics, Artificial Intelligence and Real-Time Systems

 

    Room HB 2.02.20

    Parkring 13

    D-85748 Garching b. München

 

    Tel.: +49 89 289 17628

    Mail: feldotto@in.tum.de

 

    https://www6.in.tum.de/en/people/benedikt-feldotto-msc/

    www.neurorobotics.net

    _______________________________________________

    NEST Users mailing list -- users@nest-simulator.org

    To unsubscribe send an email to users-leave@nest-simulator.org


_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org
-- 
Benedikt Feldotto M.Sc.
Research Assistant

Human Brain Project - Neurorobotics

Technical University of Munich
Department of Informatics
Chair of Robotics, Artificial Intelligence and Real-Time Systems

Room HB 2.02.20
Parkring 13
D-85748 Garching b. München

Tel.: +49 89 289 17628
Mail: feldotto@in.tum.de

https://www6.in.tum.de/en/people/benedikt-feldotto-msc/
www.neurorobotics.net