pygrenade_vx.network.abstract.PlasticityRule

class pygrenade_vx.network.abstract.PlasticityRule

Bases: pygrenade_common.PartitionedVertex

__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: _pygrenade_vx_network_abstract.PlasticityRule, recording: Optional[Union[_pygrenade_vx_network.RawRecording, _pygrenade_vx_network.TimedRecording]], id: _pygrenade_vx_network.ID, population_shapes: list[pygrenade_common.MultiIndexSequence], projection_shapes: list[pygrenade_common.MultiIndexSequence], time_domain: pygrenade_common.TimeDomainOnTopology, execution_instance_on_executor: Optional[pygrenade_common.ExecutionInstanceOnExecutor] = None) -> None

  2. __init__(self: _pygrenade_vx_network_abstract.PlasticityRule, arg0: _pygrenade_vx_network_abstract.PlasticityRule) -> None

Methods

__init__(*args, **kwargs)

Overloaded function.

copy(self)

get_input_ports(self)

Get input ports to the plasticity rule.

get_output_ports(self)

Get output ports from the plasticity rule.

get_time_domain(self)

move(self)

set_population_shapes(self, value)

set_projection_shapes(self, value)

set_time_domain(self, value)

valid(self, time_domain_runtimes)

Only ClockCycleTimeDomainRuntimes are valid.

valid_input_port_data(self, …)

Only plasticity rule parameterization (input port index size-2) and dynamics (input port index size-1) are valid.

valid_output_port_data(self, …)

If the plasticity rule has a recording, only plasticity rule results are valid for output port index 0.

Attributes

id

recording

class Dynamics

Bases: pygrenade_common.BatchedPortData

class Timer

Bases: pybind11_builtins.pybind11_object

class Value

Bases: pybind11_builtins.pybind11_object

is_interval = False
lowest = 0
max = 18446744073709551615
min = 0
toEnum(self: _pygrenade_vx_network_abstract.Timer.Value)pyhalco_common.Enum
value(self: _pygrenade_vx_network_abstract.Timer.Value)int
get_last(self: _pygrenade_vx_network_abstract.Timer)_pygrenade_vx_network_abstract.Timer.Value

Get last execution time.

property num_periods
property period
property start
batch_size(self: _pygrenade_vx_network_abstract.PlasticityRule.Dynamics)int
copy(self: _pygrenade_vx_network_abstract.PlasticityRule.Dynamics)pygrenade_common.PortData
move(self: _pygrenade_vx_network_abstract.PlasticityRule.Dynamics)pygrenade_common.PortData
property timer
class DynamicsPortType

Bases: pygrenade_common.VertexPortType

copy(self: _pygrenade_vx_network_abstract.PlasticityRule.DynamicsPortType)pygrenade_common.VertexPortType
move(self: _pygrenade_vx_network_abstract.PlasticityRule.DynamicsPortType)pygrenade_common.VertexPortType
class ID

Bases: pybind11_builtins.pybind11_object

is_interval = False
lowest = 0
max = 18446744073709551615
min = 0
toEnum(self: _pygrenade_vx_network.ID)pyhalco_common.Enum
value(self: _pygrenade_vx_network.ID)int
class Parameterization

Bases: pygrenade_common.PortData

copy(self: _pygrenade_vx_network_abstract.PlasticityRule.Parameterization)pygrenade_common.PortData
property kernel
move(self: _pygrenade_vx_network_abstract.PlasticityRule.Parameterization)pygrenade_common.PortData
class ParameterizationPortType

Bases: pygrenade_common.VertexPortType

copy(self: _pygrenade_vx_network_abstract.PlasticityRule.ParameterizationPortType)pygrenade_common.VertexPortType
move(self: _pygrenade_vx_network_abstract.PlasticityRule.ParameterizationPortType)pygrenade_common.VertexPortType
class RawRecording

Bases: pybind11_builtins.pybind11_object

property placement_in_dram
property scratchpad_memory_size
class Results

Bases: pygrenade_common.BatchedPortData

RawData

alias of _pygrenade_vx_network.RawRecordingData

class TimedData

Bases: pybind11_builtins.pybind11_object

property data_array
property data_per_neuron
property data_per_synapse
batch_size(self: _pygrenade_vx_network_abstract.PlasticityRule.Results)int
copy(self: _pygrenade_vx_network_abstract.PlasticityRule.Results)pygrenade_common.PortData
property data
move(self: _pygrenade_vx_network_abstract.PlasticityRule.Results)pygrenade_common.PortData
class ResultsPortType

Bases: pygrenade_common.VertexPortType

copy(self: _pygrenade_vx_network_abstract.PlasticityRule.ResultsPortType)pygrenade_common.VertexPortType
move(self: _pygrenade_vx_network_abstract.PlasticityRule.ResultsPortType)pygrenade_common.VertexPortType
TimedRecordingConfig

alias of _pygrenade_vx_network.TimedRecording

copy(self: _pygrenade_vx_network_abstract.PlasticityRule)pygrenade_common.Vertex
get_input_ports(self: _pygrenade_vx_network_abstract.PlasticityRule)list[pygrenade_common.Vertex.Port]

Get input ports to the plasticity rule.

get_output_ports(self: _pygrenade_vx_network_abstract.PlasticityRule)list[pygrenade_common.Vertex.Port]

Get output ports from the plasticity rule.

get_time_domain(self: _pygrenade_vx_network_abstract.PlasticityRule)Optional[pygrenade_common.TimeDomainOnTopology]
property id
move(self: _pygrenade_vx_network_abstract.PlasticityRule)pygrenade_common.Vertex
property recording
set_population_shapes(self: _pygrenade_vx_network_abstract.PlasticityRule, value: list[pygrenade_common.MultiIndexSequence])None
set_projection_shapes(self: _pygrenade_vx_network_abstract.PlasticityRule, value: list[pygrenade_common.MultiIndexSequence])None
set_time_domain(self: _pygrenade_vx_network_abstract.PlasticityRule, value: pygrenade_common.TimeDomainOnTopology)None
valid(self: _pygrenade_vx_network_abstract.PlasticityRule, time_domain_runtimes: pygrenade_common.TimeDomainRuntimes)bool

Only ClockCycleTimeDomainRuntimes are valid.

valid_input_port_data(self: _pygrenade_vx_network_abstract.PlasticityRule, input_port_on_vertex: int, dynamics: pygrenade_common.PortData)bool

Only plasticity rule parameterization (input port index size-2) and dynamics (input port index size-1) are valid.

valid_output_port_data(self: _pygrenade_vx_network_abstract.PlasticityRule, output_port_on_vertex: int, recording: pygrenade_common.PortData)bool

If the plasticity rule has a recording, only plasticity rule results are valid for output port index 0.