LengthDelay#

class brainpy.math.LengthDelay(delay_target, delay_len, initial_delay_data=None, name=None, batch_axis=None, update_method='rotation')[source]#

Delay variable which has a fixed delay length.

Parameters:
  • delay_target (int, sequence of int) – The initial delay data.

  • delay_len (int) – The maximum delay length.

  • initial_delay_data (Any) –

    The delay data. It can be a Python number, like float, int, boolean values. It can also be arrays. Or a callable function or instance of Connector. Note that initial_delay_data should be arranged as the following way:

    delay = 1             [ data
    delay = 2               data
    ...                     ....
    ...                     ....
    delay = delay_len-1     data
    delay = delay_len       data ]
    

    Changed in version 2.2.3.2: The data in the previous version of LengthDelay is:

    delay = delay_len     [ data
    delay = delay_len-1     data
    ...                     ....
    ...                     ....
    delay = 2               data
    delay = 1               data ]
    

name: str

The delay object name.

batch_axis: int

The batch axis. If not provided, it will be inferred from the delay_target.

update_method: str

The method used for updating delay.

See also

TimeDelay

property delay_shape#

The data shape of this delay variable.

property delay_target_shape#

The data shape of the delay target.

retrieve(delay_len, *indices)[source]#

Retrieve the delay data acoording to the delay length.

Parameters:

delay_len (int, ArrayType) – The delay length used to retrieve the data.

update(value=None)[source]#

Update delay variable with the new data.

Parameters:

value (Any) – The value of the latest data, used to update this delay variable.