Clock class

(Shortest import: from brian2 import Clock)

class brian2.core.clocks.Clock(dt, name='clock*')[source]

Bases: brian2.groups.group.VariableOwner

An object that holds the simulation time and the time step.

Parameters:

dt : float

The time step of the simulation as a float

name : str, optional

An explicit name, if not specified gives an automatically generated name

Notes

Clocks are run in the same Network.run() iteration if t is the same. The condition for two clocks to be considered as having the same time is abs(t1-t2)<epsilon*abs(t1), a standard test for equality of floating point values. The value of epsilon is 1e-14.

Attributes

dt The time step of the simulation in seconds.
dt_ The time step of the simulation as a float (in seconds)
epsilon_dt The relative difference for times (in terms of dt) so that they are considered identical.

Methods

set_interval(self, start, end) Set the start and end time of the simulation.

Details

dt

The time step of the simulation in seconds.

dt_

The time step of the simulation as a float (in seconds)

epsilon_dt

The relative difference for times (in terms of dt) so that they are considered identical.

set_interval(self, start, end)

Set the start and end time of the simulation.

Sets the start and end value of the clock precisely if possible (using epsilon) or rounding up if not. This assures that multiple calls to Network.run() will not re-run the same time step.

Tutorials and examples using this